django-gisserver 2.1.4__py3-none-any.whl → 2.2.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: django-gisserver
3
- Version: 2.1.4
3
+ Version: 2.2.1
4
4
  Summary: Django speaking WFS 2.0 (exposing GeoDjango model fields)
5
5
  Home-page: https://github.com/amsterdam/django-gisserver
6
6
  Author: Diederik van der Boor
@@ -12,26 +12,23 @@ Classifier: Intended Audience :: Developers
12
12
  Classifier: License :: OSI Approved :: Mozilla Public License 2.0 (MPL 2.0)
13
13
  Classifier: Operating System :: OS Independent
14
14
  Classifier: Programming Language :: Python
15
- Classifier: Programming Language :: Python :: 3.9
16
15
  Classifier: Programming Language :: Python :: 3.10
17
16
  Classifier: Programming Language :: Python :: 3.11
18
17
  Classifier: Programming Language :: Python :: 3.12
19
18
  Classifier: Programming Language :: Python :: 3.13
20
19
  Classifier: Framework :: Django
21
- Classifier: Framework :: Django :: 3.2
22
- Classifier: Framework :: Django :: 4.0
23
20
  Classifier: Framework :: Django :: 4.2
24
- Classifier: Framework :: Django :: 5.0
25
21
  Classifier: Framework :: Django :: 5.1
22
+ Classifier: Framework :: Django :: 5.2
26
23
  Classifier: Topic :: Internet :: WWW/HTTP
27
24
  Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
28
25
  Classifier: Topic :: Software Development :: Libraries :: Application Frameworks
29
26
  Classifier: Topic :: Software Development :: Libraries :: Python Modules
30
- Requires: Django (>=3.2)
31
- Requires-Python: >=3.9
27
+ Requires: Django (>=4.2, >=5.1)
28
+ Requires-Python: >=3.10
32
29
  Description-Content-Type: text/markdown
33
30
  License-File: LICENSE
34
- Requires-Dist: Django>=3.2
31
+ Requires-Dist: Django>=4.2
35
32
  Requires-Dist: defusedxml>=0.7.1
36
33
  Requires-Dist: lru_dict>=1.1.7
37
34
  Requires-Dist: orjson>=3.9.15
@@ -44,7 +41,7 @@ Requires-Dist: pytest>=6.2.3; extra == "tests"
44
41
  Requires-Dist: pytest-django>=4.1.0; extra == "tests"
45
42
  Requires-Dist: pytest-cov>=2.11.1; extra == "tests"
46
43
  Provides-Extra: docs
47
- Requires-Dist: Django~=5.0; extra == "docs"
44
+ Requires-Dist: Django~=5.1; extra == "docs"
48
45
  Requires-Dist: sphinxcontrib-django>=2.5; extra == "docs"
49
46
  Requires-Dist: myst-parser>=3.0.1; extra == "docs"
50
47
  Requires-Dist: psycopg2-binary>=2.8.4; extra == "docs"
@@ -1,5 +1,5 @@
1
- django_gisserver-2.1.4.dist-info/licenses/LICENSE,sha256=HyVuytGSiAUQ6ErWBHTqt1iSGHhLmlC8fO7jTCuR8dU,16725
2
- gisserver/__init__.py,sha256=4xPIvBHDsQLZ9QZUAMK7Z46GbopCPnl4GBHVOuZ-c9k,40
1
+ django_gisserver-2.2.1.dist-info/licenses/LICENSE,sha256=HyVuytGSiAUQ6ErWBHTqt1iSGHhLmlC8fO7jTCuR8dU,16725
2
+ gisserver/__init__.py,sha256=huHQHmYDs0MMjz7xCO1V-2aYyzxtru98ekXW4AkHzRU,40
3
3
  gisserver/compat.py,sha256=qmLeT7wGRIyA2ujUtVEuUX7qgr98snak9b5OTvnkhas,451
4
4
  gisserver/conf.py,sha256=Bb2hbLx1SM4la6-e8PrBQ7dg2z3Z1sopOlaTrfa6gbg,3666
5
5
  gisserver/crs.py,sha256=ChqLNZCHBCZmXphjJTT22jvhyMIwAAFtFSjwbH4Bigk,18330
@@ -18,7 +18,7 @@ gisserver/management/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5N
18
18
  gisserver/management/commands/loadgeojson.py,sha256=lmvxXFEVGOWRELLB3u7M3hiJg2TQEICJOatdHLw8toI,12130
19
19
  gisserver/operations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
20
20
  gisserver/operations/base.py,sha256=SP3PV78bIFCeCQxEFMqIhj0YBjn1g6UqhyoK_Ub4ZxU,10113
21
- gisserver/operations/wfs20.py,sha256=r_2dcqzN5xw2LIOVE7Ofe93t9GvNx7ESFWKRnnW10Y4,20964
21
+ gisserver/operations/wfs20.py,sha256=4NduwMgJVT37CGMRGpW5cKWQkv-s-L_P52xEatC_8HU,21257
22
22
  gisserver/output/__init__.py,sha256=1-bzgNq1yGuWGse2zLXUwTnR7-FpfosGCzDm97diKRM,1133
23
23
  gisserver/output/base.py,sha256=igcOhjJkziPlpPJjwfyyC0S1LHfRI8Em-UMNnX5Lk-E,11247
24
24
  gisserver/output/csv.py,sha256=1Bz3o3-dvdEFWWLrDj-cxCp7My6IMMakmwAZIfPsjc4,6906
@@ -31,7 +31,7 @@ gisserver/output/utils.py,sha256=dA4Y-6ZUBjjCC8ueO5AcYaVebB5M6ynXUtrw7yyOcoQ,300
31
31
  gisserver/output/xmlschema.py,sha256=fHj8h9-vG508uRmM-kD5r2omde2wa_myJWWwcWe2lus,6445
32
32
  gisserver/parsers/__init__.py,sha256=eGORBeT0F8fR3AadV1uq8dbCeZtIeK0-__CcXwSvXgs,402
33
33
  gisserver/parsers/ast.py,sha256=zFb64uaIgAT9THV07l0pnuzWfXkzJ2CwT1z6lVGwrag,15688
34
- gisserver/parsers/query.py,sha256=IbsWBSAlOKDgz8BS-JirxVCqzQxSpYqIxGEhv0-sOVc,6695
34
+ gisserver/parsers/query.py,sha256=Lt2Q5PxTzmGNsjo0dK9_2A6vE_Ovj1oG40Ujf9z06_Q,6648
35
35
  gisserver/parsers/values.py,sha256=QCnHBlMAGDefoC51ujOrQc1YEb3RYYP7aq5UIDweJO0,4166
36
36
  gisserver/parsers/xml.py,sha256=uys1ddpx4BEDFg1WmknfATl4vJpgpKbb0yV2QT2kJqs,9753
37
37
  gisserver/parsers/fes20/__init__.py,sha256=P24auC3LN_DEnF6bK0er52F8I2_oLS26gBCJOMcpNT4,2423
@@ -63,7 +63,7 @@ gisserver/templates/gisserver/wfs/feature_type.html,sha256=Kl_0c7nnlc7Z1bzJOq8v7
63
63
  gisserver/templates/gisserver/wfs/2.0.0/get_capabilities.xml,sha256=SGZSn7cDU_Oai6d45xrkqhax5CPyI1oIc8BZLOEw1X4,8695
64
64
  gisserver/templatetags/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
65
65
  gisserver/templatetags/gisserver_tags.py,sha256=L2YG-PxiKR0QWBMRLLrL_VR94p6wCb5HzgnrPMg4hug,995
66
- django_gisserver-2.1.4.dist-info/METADATA,sha256=oXLyyZrk_b5GswUoKTgiQo8s9k6tZcXRTAKgXn4RE1Q,6851
67
- django_gisserver-2.1.4.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
68
- django_gisserver-2.1.4.dist-info/top_level.txt,sha256=8zFCEMmkpixE4TPiOAlxSq3PD2EXvAeFKwG4yZoIIOQ,10
69
- django_gisserver-2.1.4.dist-info/RECORD,,
66
+ django_gisserver-2.2.1.dist-info/METADATA,sha256=jVQtfcUOBphc8vJ-apR1O3dWUtP1J4jl267y-MUxWxs,6731
67
+ django_gisserver-2.2.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
68
+ django_gisserver-2.2.1.dist-info/top_level.txt,sha256=8zFCEMmkpixE4TPiOAlxSq3PD2EXvAeFKwG4yZoIIOQ,10
69
+ django_gisserver-2.2.1.dist-info/RECORD,,
gisserver/__init__.py CHANGED
@@ -1 +1 @@
1
- __version__ = "2.1.4" # follows PEP440
1
+ __version__ = "2.2.1" # follows PEP440
@@ -473,6 +473,14 @@ class GetFeature(BaseWFSGetDataOperation):
473
473
 
474
474
  return result
475
475
 
476
+ def get_parameters(self) -> list[Parameter]:
477
+ """Extend Parameters with outputFormat to support ArcGISOnline."""
478
+ parameters = super().get_parameters()
479
+
480
+ return parameters + [
481
+ Parameter("outputFormat", allowed_values=self.get_output_formats()),
482
+ ]
483
+
476
484
 
477
485
  class GetPropertyValue(BaseWFSGetDataOperation):
478
486
  """This returns a limited set of properties of the feature.
@@ -7,7 +7,6 @@ import operator
7
7
  from datetime import date, datetime
8
8
  from decimal import Decimal as D
9
9
  from functools import reduce
10
- from typing import Union
11
10
 
12
11
  from django.contrib.gis.geos import GEOSGeometry
13
12
  from django.core.exceptions import FieldError
@@ -17,8 +16,8 @@ from django.db.models.expressions import Combinable, Func
17
16
  from gisserver.features import FeatureType
18
17
 
19
18
  logger = logging.getLogger(__name__)
20
- ScalarTypes = (bool, int, str, D, date, datetime) # Not Union for Python 3.9
21
- RhsTypes = Union[Combinable, Func, Q, GEOSGeometry, bool, int, D, str, date, datetime, tuple]
19
+ ScalarTypes = bool | int | str | D | date | datetime
20
+ RhsTypes = Combinable | Func | Q | GEOSGeometry | bool | int | D | str | date | datetime | tuple
22
21
 
23
22
 
24
23
  class CompiledQuery: