2
0
Эх сурвалжийг харах

Fixed #32303 -- Bumped minimum supported SQLite to 3.9.0.

Mariusz Felisiak 4 жил өмнө
parent
commit
74fd233b14

+ 4 - 2
django/db/backends/sqlite3/base.py

@@ -64,8 +64,10 @@ def list_aggregate(function):
 
 
 def check_sqlite_version():
-    if Database.sqlite_version_info < (3, 8, 3):
-        raise ImproperlyConfigured('SQLite 3.8.3 or later is required (found %s).' % Database.sqlite_version)
+    if Database.sqlite_version_info < (3, 9, 0):
+        raise ImproperlyConfigured(
+            'SQLite 3.9.0 or later is required (found %s).' % Database.sqlite_version
+        )
 
 
 check_sqlite_version()

+ 1 - 1
docs/ref/contrib/gis/install/index.txt

@@ -61,7 +61,7 @@ Database            Library Requirements            Supported Versions  Notes
 PostgreSQL          GEOS, GDAL, PROJ, PostGIS       9.6+                Requires PostGIS.
 MySQL               GEOS, GDAL                      5.7+                :ref:`Limited functionality <mysql-spatial-limitations>`.
 Oracle              GEOS, GDAL                      12.2+               XE not supported.
-SQLite              GEOS, GDAL, PROJ, SpatiaLite    3.8.3+              Requires SpatiaLite 4.3+
+SQLite              GEOS, GDAL, PROJ, SpatiaLite    3.9.0+              Requires SpatiaLite 4.3+
 ==================  ==============================  ==================  =========================================
 
 See also `this comparison matrix`__ on the OSGeo Wiki for

+ 1 - 1
docs/ref/databases.txt

@@ -679,7 +679,7 @@ appropriate typecasting.
 SQLite notes
 ============
 
-Django supports SQLite 3.8.3 and later.
+Django supports SQLite 3.9.0 and later.
 
 SQLite_ provides an excellent development alternative for applications that
 are predominantly read-only or require a smaller installation footprint. As

+ 1 - 1
docs/ref/models/fields.txt

@@ -1199,7 +1199,7 @@ Python native format: dictionaries, lists, strings, numbers, booleans and
 ``None``.
 
 ``JSONField`` is supported on MariaDB 10.2.7+, MySQL 5.7.8+, Oracle,
-PostgreSQL, and SQLite 3.9.0+ (with the :ref:`JSON1 extension enabled
+PostgreSQL, and SQLite (with the :ref:`JSON1 extension enabled
 <sqlite-json1>`).
 
 .. attribute:: JSONField.encoder

+ 2 - 0
docs/releases/3.2.txt

@@ -689,6 +689,8 @@ Miscellaneous
   Due to a ``python-memcached`` limitation, the previous behavior is kept for
   the deprecated ``MemcachedCache`` backend.
 
+* The minimum supported version of SQLite is increased from 3.8.3 to 3.9.0.
+
 .. _deprecated-features-3.2:
 
 Features deprecated in 3.2

+ 3 - 3
tests/backends/sqlite/tests.py

@@ -30,9 +30,9 @@ class Tests(TestCase):
     longMessage = True
 
     def test_check_sqlite_version(self):
-        msg = 'SQLite 3.8.3 or later is required (found 3.8.2).'
-        with mock.patch.object(dbapi2, 'sqlite_version_info', (3, 8, 2)), \
-                mock.patch.object(dbapi2, 'sqlite_version', '3.8.2'), \
+        msg = 'SQLite 3.9.0 or later is required (found 3.8.11.1).'
+        with mock.patch.object(dbapi2, 'sqlite_version_info', (3, 8, 11, 1)), \
+                mock.patch.object(dbapi2, 'sqlite_version', '3.8.11.1'), \
                 self.assertRaisesMessage(ImproperlyConfigured, msg):
             check_sqlite_version()