mirror of
https://github.com/osm-search/Nominatim.git
synced 2024-11-25 19:35:02 +03:00
fix backward compatibility issues with Python 3.7
This commit is contained in:
parent
2c0f2e1ede
commit
b9e4563beb
2
Makefile
2
Makefile
@ -18,7 +18,7 @@ build-api:
|
|||||||
tests: mypy lint pytest bdd
|
tests: mypy lint pytest bdd
|
||||||
|
|
||||||
mypy:
|
mypy:
|
||||||
mypy --strict src
|
mypy --strict --python-version 3.8 src
|
||||||
|
|
||||||
pytest:
|
pytest:
|
||||||
pytest test/python
|
pytest test/python
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
"""
|
"""
|
||||||
Server implementation using the falcon webserver framework.
|
Server implementation using the falcon webserver framework.
|
||||||
"""
|
"""
|
||||||
from typing import Optional, Mapping, cast, Any, List
|
from typing import Optional, Mapping, Any, List
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
import datetime as dt
|
import datetime as dt
|
||||||
import asyncio
|
import asyncio
|
||||||
@ -72,11 +72,11 @@ class ParamWrapper(ASGIAdaptor):
|
|||||||
|
|
||||||
|
|
||||||
def get(self, name: str, default: Optional[str] = None) -> Optional[str]:
|
def get(self, name: str, default: Optional[str] = None) -> Optional[str]:
|
||||||
return cast(Optional[str], self.request.get_param(name, default=default))
|
return self.request.get_param(name, default=default)
|
||||||
|
|
||||||
|
|
||||||
def get_header(self, name: str, default: Optional[str] = None) -> Optional[str]:
|
def get_header(self, name: str, default: Optional[str] = None) -> Optional[str]:
|
||||||
return cast(Optional[str], self.request.get_header(name, default=default))
|
return self.request.get_header(name, default=default)
|
||||||
|
|
||||||
|
|
||||||
def error(self, msg: str, status: int = 400) -> HTTPNominatimError:
|
def error(self, msg: str, status: int = 400) -> HTTPNominatimError:
|
||||||
@ -91,7 +91,7 @@ class ParamWrapper(ASGIAdaptor):
|
|||||||
|
|
||||||
|
|
||||||
def base_uri(self) -> str:
|
def base_uri(self) -> str:
|
||||||
return cast (str, self.request.forwarded_prefix)
|
return self.request.forwarded_prefix
|
||||||
|
|
||||||
def config(self) -> Configuration:
|
def config(self) -> Configuration:
|
||||||
return self._config
|
return self._config
|
||||||
@ -183,7 +183,7 @@ def get_application(project_dir: Path,
|
|||||||
app.add_error_handler(HTTPNominatimError, nominatim_error_handler)
|
app.add_error_handler(HTTPNominatimError, nominatim_error_handler)
|
||||||
app.add_error_handler(TimeoutError, timeout_error_handler)
|
app.add_error_handler(TimeoutError, timeout_error_handler)
|
||||||
# different from TimeoutError in Python <= 3.10
|
# different from TimeoutError in Python <= 3.10
|
||||||
app.add_error_handler(asyncio.TimeoutError, timeout_error_handler)
|
app.add_error_handler(asyncio.TimeoutError, timeout_error_handler) # type: ignore[arg-type]
|
||||||
|
|
||||||
legacy_urls = api.config.get_bool('SERVE_LEGACY_URLS')
|
legacy_urls = api.config.get_bool('SERVE_LEGACY_URLS')
|
||||||
formatter = load_format_dispatcher('v1', project_dir)
|
formatter = load_format_dispatcher('v1', project_dir)
|
||||||
|
@ -62,13 +62,13 @@ def extend_query_parts(queryparts: Dict[str, Any], details: Dict[str, Any],
|
|||||||
"""
|
"""
|
||||||
parsed = SearchDetails.from_kwargs(details)
|
parsed = SearchDetails.from_kwargs(details)
|
||||||
if parsed.geometry_output != GeometryFormat.NONE:
|
if parsed.geometry_output != GeometryFormat.NONE:
|
||||||
if GeometryFormat.GEOJSON in parsed.geometry_output:
|
if GeometryFormat.GEOJSON & parsed.geometry_output:
|
||||||
queryparts['polygon_geojson'] = '1'
|
queryparts['polygon_geojson'] = '1'
|
||||||
if GeometryFormat.KML in parsed.geometry_output:
|
if GeometryFormat.KML & parsed.geometry_output:
|
||||||
queryparts['polygon_kml'] = '1'
|
queryparts['polygon_kml'] = '1'
|
||||||
if GeometryFormat.SVG in parsed.geometry_output:
|
if GeometryFormat.SVG & parsed.geometry_output:
|
||||||
queryparts['polygon_svg'] = '1'
|
queryparts['polygon_svg'] = '1'
|
||||||
if GeometryFormat.TEXT in parsed.geometry_output:
|
if GeometryFormat.TEXT & parsed.geometry_output:
|
||||||
queryparts['polygon_text'] = '1'
|
queryparts['polygon_text'] = '1'
|
||||||
if parsed.address_details:
|
if parsed.address_details:
|
||||||
queryparts['addressdetails'] = '1'
|
queryparts['addressdetails'] = '1'
|
||||||
|
Loading…
Reference in New Issue
Block a user