summaryrefslogtreecommitdiff
path: root/django/contrib/gis/db/backends
AgeCommit message (Collapse)Author
2026-03-12Refs #36727 -- Factored out _must_transform_value() in BaseSpatialOperations.Simon Charette
2026-03-12Fixed #36727 -- Deprecated Field.get_placeholder in favor of ↵Simon Charette
get_placeholder_sql. The lack of ability of the get_placeholder call chain to return SQL and parameters separated so they can be mogrified by the backend at execution time forced implementations to dangerously interpolate potentially user controlled values. The get_placeholder_sql name was chosen due to its proximity to the previous method, but other options such as Field.as_sql were considered but ultimately rejected due to its different input signature compared to Expression.as_sql that might have lead to confusion. There is a lot of overlap between what Field.get_db_prep_value and get_placeholder_sql do but folding the latter in the former would require changing its return signature to return expression which is a way more invasive change than what is proposed here. Given we always call get_db_prep_value it might still be an avenue worth exploring in the future to offer a publicly documented interface to allow field to take an active part in the compilation chain. Thanks Jacob for the review.
2026-02-03Fixed CVE-2026-1207 -- Prevented SQL injections in RasterField lookups via ↵Jacob Walls
band index. Thanks Tarek Nakkouch for the report, and Simon Charette for the initial triage and review.
2025-12-28Added some skips to GIS tests.Tim Graham
Also replaced some DatabaseFeatures.supports_<foo>_lookup attributes with @skipUnlessGISLookup.
2025-11-25Fixed #35783 -- Added NumDimensions GIS database function and ↵David Smith
__num_dimensions lookup.
2025-10-27Fixed #36624 -- Dropped support for MySQL < 8.4.Mariusz Felisiak
2025-10-03Fixed #36623 -- Dropped support for PostgreSQL 14 and PostGIS 3.1.Mariusz Felisiak
2025-09-22Refs #33783 -- Added IsEmpty GIS database function and __isempty lookup on ↵David Smith
SpatiaLite.
2025-07-23Refs #36500 -- Rewrapped long docstrings and block comments via a script.django-bot
Rewrapped long docstrings and block comments to 79 characters + newline using script from https://github.com/medmunds/autofix-w505.
2025-07-23Removed double spaces after periods and within phrases.Sarah Boyce
2025-07-20Fixed #28696 -- Added GeometryType GIS database function and __geom_type lookup.Ahmed Ibrahim
Co-Authored-By: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2025-06-25Fixed #36471 -- Added support for __coveredby GIS lookup and Collect, ↵Mariusz Felisiak
GeoHash, IsValid on MariaDB 12.0.1+.
2025-06-05Added validation to BaseSpatialFeatures.has_<Func>_function.Tim Graham
2025-03-31Refs #28909 -- Simplified code using unpacking generalizations.Aarni Koskela
2025-03-01Applied Black's 2025 stable style.Mariusz Felisiak
https://github.com/psf/black/releases/tag/25.1.0
2025-02-23Fixed #35705 -- Added Rotate GIS database function to rotate geometries.enprava
2025-02-13Reverted "Refs #35803 -- Added support for __coveredby GIS lookup on MariaDB ↵Mariusz Felisiak
11.7+." This partly reverts commit 0b7edb9fcdd33d47ec5701b4f9b9553e27a88e95. MariaDB reverted GIS functions.
2025-02-13Reverted "Fixed #35803 -- Added support for Collect, GeoHash, and IsValid on ↵Mariusz Felisiak
MariaDB 11.7+." This reverts commit c77573716a58af32ffcfc4fe87ff9e5c97909bd2. MariaDB reverted GIS functions.
2025-02-04Fixed #36058 -- Refactored SpatialRefSysMixin.srs to use cached_property.Arnaldo Govenem
Replaced manual caching complexity with cached_property for efficiency. Enhanced error handling with distinct messages for WKT and PROJ.4. Thanks to Sarah Boyce for the suggestions.
2025-01-15Refs #33817 -- Removed support for cx_Oracle per deprecation timeline.Sarah Boyce
2024-10-25Refs #35803 -- Added support for __covers GIS lookup on MySQL.Mariusz Felisiak
2024-10-25Fixed #35803 -- Added support for Collect, GeoHash, and IsValid on MariaDB ↵Mariusz Felisiak
11.7+.
2024-10-25Refs #35803 -- Added support for __coveredby GIS lookup on MySQL and MariaDB ↵Mariusz Felisiak
11.7+.
2024-09-19Fixed #35074 -- Fixed adding/removing indexes when spatial_index is changed ↵Mariusz Felisiak
on MySQL, PostgreSQL, and Oracle. Co-authored-by: Mário Falcão <mario@falcao.dev>
2024-09-10Refs #35074 -- Added _create_spatial_index_sql()/_delete_spatial_index_sql() ↵Mariusz Felisiak
hooks to GIS backends.
2024-09-10Refs #35074 -- Added PostGISSchemaEditor._create_spatial_index_name().Mário Falcão
This is consistent with Oracle and MySQL GIS database backends.
2024-07-29Refs #35074 -- Simplified and unified adding spatial indexes on MySQL and ↵Mariusz Felisiak
Oracle. This uses `deferred_sql` and `_field_indexes_sql()` instead of custom hooks on MySQL.
2024-06-20Refs #35074 -- Avoided failed attempts to remove spatial indexes on nullable ↵Mariusz Felisiak
fields on MySQL. MySQL doesn't support spatial indexes on NULL columns, so there is no point in removing them.
2024-05-27Fixed #35479 -- Dropped support for PostgreSQL 13 and PostGIS 3.0.Mariusz Felisiak
2024-01-26Applied Black's 2024 stable style.Mariusz Felisiak
https://github.com/psf/black/releases/tag/24.1.0
2024-01-06Fixed #35088 -- Added support for Collect on MySQL 8.0.24+.Nick Pope
2024-01-05Simplified dropping spatial indexes on MySQL and Oracle.Mariusz Felisiak
2024-01-05Fixed #35086 -- Added support for BoundedCircle on Spatialite 5.1+.David Smith
Spatialite 5.1 added support for BoundingCircle (GEOSMinimumBoundingCircle). GEOS 3.7 is required which is lower than Django's currently supported minmum of 3.8. https://groups.google.com/g/spatialite-users/c/hAJ2SgitN4M https://www.gaia-gis.it/gaia-sins/spatialite-sql-5.1.0.html
2023-09-20Fixed #34851 -- Dropped support for PostgreSQL 12 and PostGIS 2.5.Mariusz Felisiak
2023-08-10Fixed #33817 -- Added support for python-oracledb and deprecated cx_Oracle.Jingbei Li
2023-08-04Fixed #34760 -- Dropped support for SQLite < 3.27.Mariusz Felisiak
2023-07-18Refs #33201 -- Avoided unnecessary queries when renaming models with ↵Mariusz Felisiak
db_table on SpatiaLite.
2023-02-21Fixed #34344 -- Allowed PostGIS DatabaseWrapper subclasses to customize ↵David Buhler
(features/introspection/ops)_class classes.
2023-02-07Fixed #33638 -- Fixed GIS lookups crash with geography fields on PostGIS.Jacob Walls
2023-02-01Refs #33476 -- Applied Black's 2023 stable style.David Smith
Black 23.1.0 is released which, as the first release of the year, introduces the 2023 stable style. This incorporates most of last year's preview style. https://github.com/psf/black/releases/tag/23.1.0
2023-01-20Fixed #34266 -- Added ClosestPoint GIS database functions.Niccolò Mineo
2023-01-10Refs #31014 -- Added FromWKB and FromWKT GIS database functions.Mariusz Felisiak
Co-authored-by: Ondřej Böhm <ondrej.bohm@firma.seznam.cz> Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com> Co-authored-by: Sergey Fedoseev <fedoseev.sergey@gmail.com>
2023-01-03Fixed #33783 -- Added IsEmpty GIS database function and __isempty lookup on ↵Claude Paroz
PostGIS.
2022-12-22Fixed #34219 -- Preserved Char/TextField.db_collation when altering column type.Mariusz Felisiak
This moves setting a database collation to the column type alteration as both must be set at the same time. This should also avoid another layer of the column type alteration when adding database comments support (#18468).
2022-12-15Fixed #33308 -- Added support for psycopg version 3.Daniele Varrazzo
Thanks Simon Charette, Tim Graham, and Adam Johnson for reviews. Co-authored-by: Florian Apolloner <florian@apolloner.eu> Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2022-12-12Refs #33308 -- Added psycopg_any.sql.quote() hook.Florian Apolloner
2022-12-02Refs #33308 -- Made PostGISAdapter do not use psycopg2's Binary().Florian Apolloner
2022-08-10Fixed #28975 -- Made PostGIS backend skip extension creation if installed.Rust Saiargaliev
2022-07-08Fixed #33718 -- Dropped support for MySQL 5.7.Mariusz Felisiak
2022-06-21Fixed #33794 -- Fixed string-casting of GIS queries on PostgreSQL.Claude Paroz
Regression in 64c3f049ea3bcb1c82f35ae09f1dd5349a826a5c.