mirror of https://github.com/django/django.git
Fixed #35412 -- Dropped support for SQLite < 3.31.
This commit is contained in:
parent
8c257cecff
commit
85c154da2f
|
@ -9,7 +9,7 @@ from .base import Database
|
|||
|
||||
|
||||
class DatabaseFeatures(BaseDatabaseFeatures):
|
||||
minimum_database_version = (3, 27)
|
||||
minimum_database_version = (3, 31)
|
||||
test_db_allows_multiple_connections = False
|
||||
supports_unspecified_pk = True
|
||||
supports_timezones = False
|
||||
|
@ -31,18 +31,15 @@ class DatabaseFeatures(BaseDatabaseFeatures):
|
|||
supports_parentheses_in_compound = False
|
||||
can_defer_constraint_checks = True
|
||||
supports_over_clause = True
|
||||
supports_frame_range_fixed_distance = Database.sqlite_version_info >= (3, 28, 0)
|
||||
supports_frame_exclusion = Database.sqlite_version_info >= (3, 28, 0)
|
||||
supports_aggregate_filter_clause = Database.sqlite_version_info >= (3, 30, 1)
|
||||
supports_order_by_nulls_modifier = Database.sqlite_version_info >= (3, 30, 0)
|
||||
# NULLS LAST/FIRST emulation on < 3.30 requires subquery wrapping.
|
||||
requires_compound_order_by_subquery = Database.sqlite_version_info < (3, 30)
|
||||
supports_frame_range_fixed_distance = True
|
||||
supports_frame_exclusion = True
|
||||
supports_aggregate_filter_clause = True
|
||||
order_by_nulls_first = True
|
||||
supports_json_field_contains = False
|
||||
supports_update_conflicts = True
|
||||
supports_update_conflicts_with_target = True
|
||||
supports_stored_generated_columns = Database.sqlite_version_info >= (3, 31, 0)
|
||||
supports_virtual_generated_columns = Database.sqlite_version_info >= (3, 31, 0)
|
||||
supports_stored_generated_columns = True
|
||||
supports_virtual_generated_columns = True
|
||||
test_collations = {
|
||||
"ci": "nocase",
|
||||
"cs": "binary",
|
||||
|
|
|
@ -59,7 +59,7 @@ Database Library Requirements Supported Versions Notes
|
|||
PostgreSQL GEOS, GDAL, PROJ, PostGIS 13+ Requires PostGIS.
|
||||
MySQL GEOS, GDAL 8.0.11+ :ref:`Limited functionality <mysql-spatial-limitations>`.
|
||||
Oracle GEOS, GDAL 19+ XE not supported.
|
||||
SQLite GEOS, GDAL, PROJ, SpatiaLite 3.27.0+ Requires SpatiaLite 4.3+
|
||||
SQLite GEOS, GDAL, PROJ, SpatiaLite 3.31.0+ Requires SpatiaLite 4.3+
|
||||
================== ============================== ================== =========================================
|
||||
|
||||
See also `this comparison matrix`__ on the OSGeo Wiki for
|
||||
|
|
|
@ -812,7 +812,7 @@ appropriate typecasting.
|
|||
SQLite notes
|
||||
============
|
||||
|
||||
Django supports SQLite 3.27.0 and later.
|
||||
Django supports SQLite 3.31.0 and later.
|
||||
|
||||
SQLite_ provides an excellent development alternative for applications that
|
||||
are predominantly read-only or require a smaller installation footprint. As
|
||||
|
|
|
@ -419,6 +419,8 @@ Miscellaneous
|
|||
* The undocumented ``django.urls.converters.get_converter()`` function is
|
||||
removed.
|
||||
|
||||
* The minimum supported version of SQLite is increased from 3.27.0 to 3.31.0.
|
||||
|
||||
.. _deprecated-features-5.1:
|
||||
|
||||
Features deprecated in 5.1
|
||||
|
|
|
@ -109,9 +109,9 @@ class Tests(TestCase):
|
|||
connections["default"].close()
|
||||
self.assertTrue(os.path.isfile(os.path.join(tmp, "test.db")))
|
||||
|
||||
@mock.patch.object(connection, "get_database_version", return_value=(3, 26))
|
||||
@mock.patch.object(connection, "get_database_version", return_value=(3, 30))
|
||||
def test_check_database_version_supported(self, mocked_get_database_version):
|
||||
msg = "SQLite 3.27 or later is required (found 3.26)."
|
||||
msg = "SQLite 3.31 or later is required (found 3.30)."
|
||||
with self.assertRaisesMessage(NotSupportedError, msg):
|
||||
connection.check_database_version_supported()
|
||||
self.assertTrue(mocked_get_database_version.called)
|
||||
|
|
Loading…
Reference in New Issue