mirror of
https://github.com/django/django.git
synced 2024-12-22 17:16:24 +00:00
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):
|
class DatabaseFeatures(BaseDatabaseFeatures):
|
||||||
minimum_database_version = (3, 27)
|
minimum_database_version = (3, 31)
|
||||||
test_db_allows_multiple_connections = False
|
test_db_allows_multiple_connections = False
|
||||||
supports_unspecified_pk = True
|
supports_unspecified_pk = True
|
||||||
supports_timezones = False
|
supports_timezones = False
|
||||||
@ -31,18 +31,15 @@ class DatabaseFeatures(BaseDatabaseFeatures):
|
|||||||
supports_parentheses_in_compound = False
|
supports_parentheses_in_compound = False
|
||||||
can_defer_constraint_checks = True
|
can_defer_constraint_checks = True
|
||||||
supports_over_clause = True
|
supports_over_clause = True
|
||||||
supports_frame_range_fixed_distance = Database.sqlite_version_info >= (3, 28, 0)
|
supports_frame_range_fixed_distance = True
|
||||||
supports_frame_exclusion = Database.sqlite_version_info >= (3, 28, 0)
|
supports_frame_exclusion = True
|
||||||
supports_aggregate_filter_clause = Database.sqlite_version_info >= (3, 30, 1)
|
supports_aggregate_filter_clause = True
|
||||||
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)
|
|
||||||
order_by_nulls_first = True
|
order_by_nulls_first = True
|
||||||
supports_json_field_contains = False
|
supports_json_field_contains = False
|
||||||
supports_update_conflicts = True
|
supports_update_conflicts = True
|
||||||
supports_update_conflicts_with_target = True
|
supports_update_conflicts_with_target = True
|
||||||
supports_stored_generated_columns = Database.sqlite_version_info >= (3, 31, 0)
|
supports_stored_generated_columns = True
|
||||||
supports_virtual_generated_columns = Database.sqlite_version_info >= (3, 31, 0)
|
supports_virtual_generated_columns = True
|
||||||
test_collations = {
|
test_collations = {
|
||||||
"ci": "nocase",
|
"ci": "nocase",
|
||||||
"cs": "binary",
|
"cs": "binary",
|
||||||
|
@ -59,7 +59,7 @@ Database Library Requirements Supported Versions Notes
|
|||||||
PostgreSQL GEOS, GDAL, PROJ, PostGIS 13+ Requires PostGIS.
|
PostgreSQL GEOS, GDAL, PROJ, PostGIS 13+ Requires PostGIS.
|
||||||
MySQL GEOS, GDAL 8.0.11+ :ref:`Limited functionality <mysql-spatial-limitations>`.
|
MySQL GEOS, GDAL 8.0.11+ :ref:`Limited functionality <mysql-spatial-limitations>`.
|
||||||
Oracle GEOS, GDAL 19+ XE not supported.
|
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
|
See also `this comparison matrix`__ on the OSGeo Wiki for
|
||||||
|
@ -812,7 +812,7 @@ appropriate typecasting.
|
|||||||
SQLite notes
|
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
|
SQLite_ provides an excellent development alternative for applications that
|
||||||
are predominantly read-only or require a smaller installation footprint. As
|
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
|
* The undocumented ``django.urls.converters.get_converter()`` function is
|
||||||
removed.
|
removed.
|
||||||
|
|
||||||
|
* The minimum supported version of SQLite is increased from 3.27.0 to 3.31.0.
|
||||||
|
|
||||||
.. _deprecated-features-5.1:
|
.. _deprecated-features-5.1:
|
||||||
|
|
||||||
Features deprecated in 5.1
|
Features deprecated in 5.1
|
||||||
|
@ -109,9 +109,9 @@ class Tests(TestCase):
|
|||||||
connections["default"].close()
|
connections["default"].close()
|
||||||
self.assertTrue(os.path.isfile(os.path.join(tmp, "test.db")))
|
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):
|
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):
|
with self.assertRaisesMessage(NotSupportedError, msg):
|
||||||
connection.check_database_version_supported()
|
connection.check_database_version_supported()
|
||||||
self.assertTrue(mocked_get_database_version.called)
|
self.assertTrue(mocked_get_database_version.called)
|
||||||
|
Loading…
Reference in New Issue
Block a user