summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorMariusz Felisiak <felisiak.mariusz@gmail.com>2024-09-27 22:26:35 +0200
committerSarah Boyce <42296566+sarahboyce@users.noreply.github.com>2024-10-25 07:55:55 +0200
commitc77573716a58af32ffcfc4fe87ff9e5c97909bd2 (patch)
tree1b8458ffa058a00621384077c278a9a0c19ffa48 /docs
parent0b7edb9fcdd33d47ec5701b4f9b9553e27a88e95 (diff)
Fixed #35803 -- Added support for Collect, GeoHash, and IsValid on MariaDB 11.7+.
Diffstat (limited to 'docs')
-rw-r--r--docs/ref/contrib/gis/db-api.txt25
-rw-r--r--docs/ref/contrib/gis/functions.txt12
-rw-r--r--docs/ref/contrib/gis/geoquerysets.txt28
-rw-r--r--docs/releases/5.2.txt6
4 files changed, 45 insertions, 26 deletions
diff --git a/docs/ref/contrib/gis/db-api.txt b/docs/ref/contrib/gis/db-api.txt
index 8afc29869e..b587f1d9be 100644
--- a/docs/ref/contrib/gis/db-api.txt
+++ b/docs/ref/contrib/gis/db-api.txt
@@ -360,7 +360,7 @@ Lookup Type PostGIS Oracle MariaDB MySQL [#]_ S
:lookup:`exact <same_as>` X X X X X B
:lookup:`intersects` X X X X X B
:lookup:`isempty` X
-:lookup:`isvalid` X X X X
+:lookup:`isvalid` X X X (≥ 11.7) X X
:lookup:`overlaps` X X X X X B
:lookup:`relate` X X X X C
:lookup:`same_as` X X X X X B
@@ -406,10 +406,10 @@ Function PostGIS Oracle MariaDB MySQL
:class:`ForcePolygonCW` X X
:class:`FromWKB` X X X X X
:class:`FromWKT` X X X X X
-:class:`GeoHash` X X X (LWGEOM/RTTOPO)
+:class:`GeoHash` X X (≥ 11.7) X X (LWGEOM/RTTOPO)
:class:`Intersection` X X X X X
:class:`IsEmpty` X
-:class:`IsValid` X X X X
+:class:`IsValid` X X X (≥ 11.7) X X
:class:`Length` X X X X X
:class:`LineLocatePoint` X X
:class:`MakeValid` X X (LWGEOM/RTTOPO)
@@ -431,20 +431,19 @@ Aggregate Functions
-------------------
The following table provides a summary of what GIS-specific aggregate functions
-are available on each spatial backend. Please note that MariaDB does not
-support any of these aggregates, and is thus excluded from the table.
+are available on each spatial backend.
.. currentmodule:: django.contrib.gis.db.models
-======================= ======= ====== ============ ==========
-Aggregate PostGIS Oracle MySQL SpatiaLite
-======================= ======= ====== ============ ==========
-:class:`Collect` X X (≥ 8.0.24) X
-:class:`Extent` X X X
+======================= ======= ====== ========== ============ ==========
+Aggregate PostGIS Oracle MariaDB MySQL SpatiaLite
+======================= ======= ====== ========== ============ ==========
+:class:`Collect` X X (≥ 11.7) X (≥ 8.0.24) X
+:class:`Extent` X X X
:class:`Extent3D` X
-:class:`MakeLine` X X
-:class:`Union` X X X
-======================= ======= ====== ============ ==========
+:class:`MakeLine` X X
+:class:`Union` X X X
+======================= ======= ====== ========== ============ ==========
.. rubric:: Footnotes
.. [#fnwkt] *See* Open Geospatial Consortium, Inc., `OpenGIS Simple Feature Specification For SQL <https://portal.ogc.org/files/?artifact_id=829>`_, Document 99-049 (May 5, 1999), at Ch. 3.2.5, p. 3-11 (SQL Textual Representation of Geometry).
diff --git a/docs/ref/contrib/gis/functions.txt b/docs/ref/contrib/gis/functions.txt
index ff05d0ec96..ff62c17580 100644
--- a/docs/ref/contrib/gis/functions.txt
+++ b/docs/ref/contrib/gis/functions.txt
@@ -393,7 +393,7 @@ Creates geometry from `Well-known text (WKT)`_ representation. The optional
.. class:: GeoHash(expression, precision=None, **extra)
-*Availability*: `MySQL
+*Availability*: MariaDB, `MySQL
<https://dev.mysql.com/doc/refman/en/spatial-geohash-functions.html#function_st-geohash>`__,
`PostGIS <https://postgis.net/docs/ST_GeoHash.html>`__, SpatiaLite
(LWGEOM/RTTOPO)
@@ -406,6 +406,10 @@ result.
__ https://en.wikipedia.org/wiki/Geohash
+.. versionchanged:: 5.2
+
+ MariaDB 11.7+ support was added.
+
``GeometryDistance``
====================
@@ -444,13 +448,17 @@ geometry. Returns ``True`` if its value is empty and ``False`` otherwise.
.. class:: IsValid(expr)
-*Availability*: `MySQL
+*Availability*: MariaDB, `MySQL
<https://dev.mysql.com/doc/refman/en/spatial-convenience-functions.html#function_st-isvalid>`__,
`PostGIS <https://postgis.net/docs/ST_IsValid.html>`__, Oracle, SpatiaLite
Accepts a geographic field or expression and tests if the value is well formed.
Returns ``True`` if its value is a valid geometry and ``False`` otherwise.
+.. versionchanged:: 5.2
+
+ MariaDB 11.7+ support was added.
+
``Length``
==========
diff --git a/docs/ref/contrib/gis/geoquerysets.txt b/docs/ref/contrib/gis/geoquerysets.txt
index 2bafa8eb43..607e743a2d 100644
--- a/docs/ref/contrib/gis/geoquerysets.txt
+++ b/docs/ref/contrib/gis/geoquerysets.txt
@@ -370,8 +370,8 @@ Example::
``isvalid``
-----------
-*Availability*: MySQL, `PostGIS <https://postgis.net/docs/ST_IsValid.html>`__,
-Oracle, SpatiaLite
+*Availability*: MariaDB, MySQL,
+`PostGIS <https://postgis.net/docs/ST_IsValid.html>`__, Oracle, SpatiaLite
Tests if the geometry is valid.
@@ -379,12 +379,16 @@ Example::
Zipcode.objects.filter(poly__isvalid=True)
-========================== ================================================================
-Backend SQL Equivalent
-========================== ================================================================
-MySQL, PostGIS, SpatiaLite ``ST_IsValid(poly)``
-Oracle ``SDO_GEOM.VALIDATE_GEOMETRY_WITH_CONTEXT(poly, 0.05) = 'TRUE'``
-========================== ================================================================
+=================================== ================================================================
+Backend SQL Equivalent
+=================================== ================================================================
+MariaDB, MySQL, PostGIS, SpatiaLite ``ST_IsValid(poly)``
+Oracle ``SDO_GEOM.VALIDATE_GEOMETRY_WITH_CONTEXT(poly, 0.05) = 'TRUE'``
+=================================== ================================================================
+
+.. versionchanged:: 5.2
+
+ MariaDB 11.7+ support was added.
.. fieldlookup:: overlaps
@@ -876,8 +880,8 @@ Example:
.. class:: Collect(geo_field, filter=None)
-*Availability*: `PostGIS <https://postgis.net/docs/ST_Collect.html>`__, MySQL,
-SpatiaLite
+*Availability*: `PostGIS <https://postgis.net/docs/ST_Collect.html>`__,
+MariaDB, MySQL, SpatiaLite
Returns a ``GEOMETRYCOLLECTION`` or a ``MULTI`` geometry object from the geometry
column. This is analogous to a simplified version of the :class:`Union`
@@ -889,6 +893,10 @@ caring about dissolving boundaries.
MySQL 8.0.24+ support was added.
+.. versionchanged:: 5.2
+
+ MariaDB 11.7+ support was added.
+
``Extent``
~~~~~~~~~~
diff --git a/docs/releases/5.2.txt b/docs/releases/5.2.txt
index faee74548e..72fd0e219b 100644
--- a/docs/releases/5.2.txt
+++ b/docs/releases/5.2.txt
@@ -102,7 +102,11 @@ Minor features
* :lookup:`coveredby` lookup is now supported on MySQL.
-* :lookup:`coveredby` lookup is now supported on MariaDB 11.7+.
+* :lookup:`coveredby` and :lookup:`isvalid` lookups,
+ :class:`~django.contrib.gis.db.models.Collect` aggregation, and
+ :class:`~django.contrib.gis.db.models.functions.GeoHash` and
+ :class:`~django.contrib.gis.db.models.functions.IsValid` database functions
+ are now supported on MariaDB 11.7+.
:mod:`django.contrib.messages`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~