[Django] #28584: document supported SQLite versions/remove code for unsupported versions

40 views
Skip to first unread message

Django

unread,
Sep 11, 2017, 2:56:53 PM9/11/17
to django-...@googlegroups.com
#28584: document supported SQLite versions/remove code for unsupported versions
------------------------------------------------+------------------------
Reporter: Sergey Fedoseev | Owner: nobody
Type: Cleanup/optimization | Status: new
Component: Uncategorized | Version: master
Severity: Normal | Keywords:
Triage Stage: Unreviewed | Has patch: 0
Needs documentation: 0 | Needs tests: 0
Patch needs improvement: 0 | Easy pickings: 0
UI/UX: 0 |
------------------------------------------------+------------------------
Supported versions are documented for all backends
[https://docs.djangoproject.com/en/dev/ref/databases/#sqlite-notes except
SQLite].
Some
[https://github.com/django/django/blob/0dbcd0e87f142b959536287b47d83d55bd40c74a/django/db/backends/sqlite3/features.py#L35
code] is related to 3.3.0 which is
[https://www.sqlite.org/releaselog/3_3_0.html released on 2006-01-11].

--
Ticket URL: <https://code.djangoproject.com/ticket/28584>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

Django

unread,
Sep 11, 2017, 3:22:59 PM9/11/17
to django-...@googlegroups.com
#28584: document supported SQLite versions/remove code for unsupported versions
-------------------------------------+-------------------------------------

Reporter: Sergey Fedoseev | Owner: nobody
Type: | Status: new
Cleanup/optimization |
Component: Database layer | Version: master
(models, ORM) |
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted

Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by Tim Graham):

* component: Uncategorized => Database layer (models, ORM)
* stage: Unreviewed => Accepted


Comment:

In the past, I think a limiting factor to dropping old versions was the
SQLite included with Windows and Python 2, although I've never really
understood the relationship between Python, SQLite, pysqlite, etc.
Compared to other databases, I've never had to "install sqlite" since it's
included with Python, right? For that reason, I'm not sure if there's a
need to document a minimum version, however, removing unneeded code for
obsolete versions could probably be done.

--
Ticket URL: <https://code.djangoproject.com/ticket/28584#comment:1>

Django

unread,
Sep 12, 2017, 2:48:34 AM9/12/17
to django-...@googlegroups.com
#28584: document supported SQLite versions/remove code for unsupported versions
-------------------------------------+-------------------------------------

Reporter: Sergey Fedoseev | Owner: nobody
Type: | Status: new
Cleanup/optimization |
Component: Database layer | Version: master
(models, ORM) |
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------

Comment (by Sergey Fedoseev):

Replying to [comment:1 Tim Graham]:


> I've never had to "install sqlite" since it's included with Python,
right?

That's not quite correct. If you install on Linux with package manager
SQLite is installed via dependencies, on Windows and Mac OS it's bundled
in installer. But if you install from sources I guess you need to install
SQLite by yourself. So I think we could at least drop support for versions
older than one shipped with minimum required Python. SQLite 3.8.3.1 is
shipped with Python 3.4.0.

--
Ticket URL: <https://code.djangoproject.com/ticket/28584#comment:2>

Django

unread,
Sep 27, 2017, 10:41:01 AM9/27/17
to django-...@googlegroups.com
#28584: document supported SQLite versions/remove code for unsupported versions
-------------------------------------+-------------------------------------

Reporter: Sergey Fedoseev | Owner: nobody
Type: | Status: new
Cleanup/optimization |
Component: Database layer | Version: master
(models, ORM) |
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------

Comment (by Tim Graham):

Did you find a reference page that lists what SQLite version is shipped
with each version of Python?

--
Ticket URL: <https://code.djangoproject.com/ticket/28584#comment:3>

Django

unread,
Sep 27, 2017, 11:30:08 AM9/27/17
to django-...@googlegroups.com
#28584: document supported SQLite versions/remove code for unsupported versions
-------------------------------------+-------------------------------------

Reporter: Sergey Fedoseev | Owner: nobody
Type: | Status: new
Cleanup/optimization |
Component: Database layer | Version: master
(models, ORM) |
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------

Comment (by Sergey Fedoseev):

Replying to [comment:3 Tim Graham]:


> Did you find a reference page that lists what SQLite version is shipped
with each version of Python?

Nope, but there are some mentions
[https://docs.python.org/3/whatsnew/changelog.html here].

--
Ticket URL: <https://code.djangoproject.com/ticket/28584#comment:4>

Django

unread,
Sep 29, 2017, 2:32:25 PM9/29/17
to django-...@googlegroups.com
#28584: Remove workarounds for SQLite < 3.8
-------------------------------------+-------------------------------------

Reporter: Sergey Fedoseev | Owner: nobody
Type: | Status: new
Cleanup/optimization |
Component: Database layer | Version: master
(models, ORM) |
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0

Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by Tim Graham):

* has_patch: 0 => 1


Comment:

[https://github.com/django/django/pull/9171 PR]

I added a guideline to wiki:SupportedDatabaseVersions about how to
determine the minimum supported SQLite version. I'm not sure it's
something that we need to document in the release notes and/or in Django's
documentation as I don't remember any reports of "my SQLite version is too
old", but if it becomes a problem, we can document something.

--
Ticket URL: <https://code.djangoproject.com/ticket/28584#comment:5>

Django

unread,
Oct 3, 2017, 10:41:55 AM10/3/17
to django-...@googlegroups.com
#28584: Remove workarounds for SQLite < 3.7.15
-------------------------------------+-------------------------------------

Reporter: Sergey Fedoseev | Owner: nobody
Type: | Status: new
Cleanup/optimization |
Component: Database layer | Version: master
(models, ORM) |
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0

Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------

--
Ticket URL: <https://code.djangoproject.com/ticket/28584#comment:6>

Django

unread,
Oct 3, 2017, 10:42:33 AM10/3/17
to django-...@googlegroups.com
#28584: Remove workarounds for SQLite < 3.7.15
-------------------------------------+-------------------------------------
Reporter: Sergey Fedoseev | Owner: nobody
Type: | Status: closed

Cleanup/optimization |
Component: Database layer | Version: master
(models, ORM) |
Severity: Normal | Resolution: fixed
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0

Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by GitHub <noreply@…>):

* status: new => closed
* resolution: => fixed


Comment:

In [changeset:"27193aea0088b238e3ee0f0f235364a34a09265c" 27193aea]:
{{{
#!CommitTicketReference repository=""
revision="27193aea0088b238e3ee0f0f235364a34a09265c"
Fixed #28584 -- Dropped support for SQLite < 3.7.15.
}}}

--
Ticket URL: <https://code.djangoproject.com/ticket/28584#comment:7>

Django

unread,
Oct 3, 2017, 2:19:17 PM10/3/17
to django-...@googlegroups.com
#28584: Remove workarounds for SQLite < 3.7.15
-------------------------------------+-------------------------------------
Reporter: Sergey Fedoseev | Owner: nobody
Type: | Status: closed
Cleanup/optimization |
Component: Database layer | Version: master
(models, ORM) |
Severity: Normal | Resolution: fixed
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0

Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------

Comment (by Дилян Палаузов):

As the sqlite-specific can_share_in_memory_db is now always True, all the
checks whether can_share_in_memory_db is True shall be removed.

--
Ticket URL: <https://code.djangoproject.com/ticket/28584#comment:8>

Django

unread,
Oct 3, 2017, 8:44:50 PM10/3/17
to django-...@googlegroups.com
#28584: Remove workarounds for SQLite < 3.7.15
-------------------------------------+-------------------------------------
Reporter: Sergey Fedoseev | Owner: nobody
Type: | Status: closed
Cleanup/optimization |
Component: Database layer | Version: master
(models, ORM) |
Severity: Normal | Resolution: fixed
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0

Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------

Comment (by Tim Graham <timograham@…>):

In [changeset:"d0c761d3f84aa340175b5f8646d7b2f12d2e75be" d0c761d]:
{{{
#!CommitTicketReference repository=""
revision="d0c761d3f84aa340175b5f8646d7b2f12d2e75be"
Refs #28584 -- Removed unused DatabaseFeatures.can_share_in_memory_db.
}}}

--
Ticket URL: <https://code.djangoproject.com/ticket/28584#comment:9>

Django

unread,
Nov 6, 2017, 11:06:28 AM11/6/17
to django-...@googlegroups.com
#28584: Remove workarounds for SQLite < 3.7.15
-------------------------------------+-------------------------------------
Reporter: Sergey Fedoseev | Owner: nobody
Type: | Status: closed
Cleanup/optimization |
Component: Database layer | Version: master
(models, ORM) |
Severity: Normal | Resolution: fixed
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0

Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------

Comment (by Дилян Палаузов):

The dropped support for SQLite < 3.7.15 is not reflected in the release
notes.

--
Ticket URL: <https://code.djangoproject.com/ticket/28584#comment:10>

Django

unread,
Nov 6, 2017, 11:21:39 AM11/6/17
to django-...@googlegroups.com
#28584: Remove workarounds for SQLite < 3.7.15
-------------------------------------+-------------------------------------
Reporter: Sergey Fedoseev | Owner: nobody
Type: | Status: closed
Cleanup/optimization |
Component: Database layer | Version: master
(models, ORM) |
Severity: Normal | Resolution: fixed
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0

Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------

Comment (by Tim Graham):

I didn't think it would affect anyone. Did you run into a problem?

--
Ticket URL: <https://code.djangoproject.com/ticket/28584#comment:11>

Django

unread,
Aug 3, 2018, 10:49:51 AM8/3/18
to django-...@googlegroups.com
#28584: Remove workarounds for SQLite < 3.7.15
-------------------------------------+-------------------------------------
Reporter: Sergey Fedoseev | Owner: nobody
Type: | Status: closed
Cleanup/optimization |
Component: Database layer | Version: master
(models, ORM) |
Severity: Normal | Resolution: fixed
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0

Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------

Comment (by Tim Graham):

As reported in #29624, RHEL 6 has SQLite 3.6.20 (released November 2009)
so I've created a [https://github.com/django/django/pull/10265 PR] to
document SQLite 3.7.15 (released December 2012) as the minimum required
version.

--
Ticket URL: <https://code.djangoproject.com/ticket/28584#comment:12>

Django

unread,
Aug 3, 2018, 2:59:03 PM8/3/18
to django-...@googlegroups.com
#28584: Remove workarounds for SQLite < 3.7.15
-------------------------------------+-------------------------------------
Reporter: Sergey Fedoseev | Owner: nobody
Type: | Status: closed
Cleanup/optimization |
Component: Database layer | Version: master
(models, ORM) |
Severity: Normal | Resolution: fixed
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0

Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------

Comment (by Tim Graham <timograham@…>):

In [changeset:"1593a8386a1974539a5a816eef45df41d15de879" 1593a838]:
{{{
#!CommitTicketReference repository=""
revision="1593a8386a1974539a5a816eef45df41d15de879"
[2.1.x] Refs #28584 -- Documented removal of support for SQLite < 3.7.15.

Backport of 1160a975968f86953a6c4405b772eb86283c5a4a from master
}}}

--
Ticket URL: <https://code.djangoproject.com/ticket/28584#comment:13>

Django

unread,
Aug 3, 2018, 2:59:04 PM8/3/18
to django-...@googlegroups.com
#28584: Remove workarounds for SQLite < 3.7.15
-------------------------------------+-------------------------------------
Reporter: Sergey Fedoseev | Owner: nobody
Type: | Status: closed
Cleanup/optimization |
Component: Database layer | Version: master
(models, ORM) |
Severity: Normal | Resolution: fixed
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0

Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------

Comment (by Tim Graham <timograham@…>):

In [changeset:"1160a975968f86953a6c4405b772eb86283c5a4a" 1160a975]:
{{{
#!CommitTicketReference repository=""
revision="1160a975968f86953a6c4405b772eb86283c5a4a"


Refs #28584 -- Documented removal of support for SQLite < 3.7.15.
}}}

--
Ticket URL: <https://code.djangoproject.com/ticket/28584#comment:14>

Reply all
Reply to author
Forward
0 new messages