2
2
Fork
You've already forked overpass-api-python-wrapper
2

Validate verbosity tokens for Overpass QL #185

Open
opened 2026年01月05日 21:54:29 +01:00 by mvexel · 1 comment

Add validation for verbosity strings (ids/skel/body/tags/meta plus optional modifiers like geom/bb/center and sort tokens). Provide clear error messages when invalid tokens are passed.

Add validation for verbosity strings (ids/skel/body/tags/meta plus optional modifiers like geom/bb/center and sort tokens). Provide clear error messages when invalid tokens are passed.
mvexel added this to the v1.0 milestone 2026年05月04日 01:48:28 +02:00
mvexel added this to the v1.0 project 2026年05月04日 01:48:30 +02:00

Yup, if I specify 'tags' I get this crash:

 File "[...]/script.py", line 19, in get_osm_data
 data = api.get('way(42.819,-73.881,42.820,-73.880);(._;>;)', verbosity='tags')
 File "[...]/venv/lib/python3.14/site-packages/overpass/api.py", line 230, in get
 return json2geojson(response)
 File "[...]/venv/lib/python3.14/site-packages/osm2geojson/main.py", line 70, in json2geojson
 return _json2geojson(
 data, filter_used_refs, log_level, area_keys, polygon_features, raise_on_failure
 )
 File "[...]/venv/lib/python3.14/site-packages/osm2geojson/main.py", line 127, in _json2geojson
 for shape in _json2shapes(
 ~~~~~~~~~~~~^
 data, filter_used_refs, log_level, area_keys, polygon_features, raise_on_failure
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 ):
 ^
 File "[...]/venv/lib/python3.14/site-packages/osm2geojson/main.py", line 152, in _json2shapes
 shape = element_to_shape(
 el, refs_index, area_keys, polygon_features, raise_on_failure=raise_on_failure
 )
 File "[...]/venv/lib/python3.14/site-packages/osm2geojson/main.py", line 192, in element_to_shape
 return node_to_shape(el)
 File "[...]/venv/lib/python3.14/site-packages/osm2geojson/main.py", line 233, in node_to_shape
 return {"shape": Point(node["lon"], node["lat"]), "properties": get_element_props(node)}
 ```
Yup, if I specify 'tags' I get this crash: ``` File "[...]/script.py", line 19, in get_osm_data data = api.get('way(42.819,-73.881,42.820,-73.880);(._;>;)', verbosity='tags') File "[...]/venv/lib/python3.14/site-packages/overpass/api.py", line 230, in get return json2geojson(response) File "[...]/venv/lib/python3.14/site-packages/osm2geojson/main.py", line 70, in json2geojson return _json2geojson( data, filter_used_refs, log_level, area_keys, polygon_features, raise_on_failure ) File "[...]/venv/lib/python3.14/site-packages/osm2geojson/main.py", line 127, in _json2geojson for shape in _json2shapes( ~~~~~~~~~~~~^ data, filter_used_refs, log_level, area_keys, polygon_features, raise_on_failure ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ): ^ File "[...]/venv/lib/python3.14/site-packages/osm2geojson/main.py", line 152, in _json2shapes shape = element_to_shape( el, refs_index, area_keys, polygon_features, raise_on_failure=raise_on_failure ) File "[...]/venv/lib/python3.14/site-packages/osm2geojson/main.py", line 192, in element_to_shape return node_to_shape(el) File "[...]/venv/lib/python3.14/site-packages/osm2geojson/main.py", line 233, in node_to_shape return {"shape": Point(node["lon"], node["lat"]), "properties": get_element_props(node)} ```
Sign in to join this conversation.
No Branch/Tag specified
main
tutorial/d1-httpx-nvim
0.8.x
dev-contributor-tooling
1.0-dev
dev
feature/api-modernization
maintenance/base-0.8
maintenance/geojson-fixtures
archive/async-models
maintenance/endpoint-guard
maintenance/live-query-tool
maintenance/modernize-plan
archive/dev-prebaseline-20260502
archive/modernize
archive/chore-tests
chore/poetry
archive/readme
v0.8.2
v0.8.1
v0.8.0
v0.7.2
0.7.1
0.7.0
0.6.1
0.6.0
0.5.7
0.5.6
0.5.5
0.4.0
0.1.0
0.0.2
0.0.1
Milestone
Clear milestone
No items
No milestone
Projects
Clear projects
No items
No project
Assignees
Clear assignees
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
mvexel/overpass-api-python-wrapper#185
Reference in a new issue
mvexel/overpass-api-python-wrapper
No description provided.
Delete branch "%!s()"

Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?