Skip to content

Commit 005e8c8

Browse files
committed
shapely 2.x compatibility
#158
1 parent 3d320ac commit 005e8c8

File tree

2 files changed

+10
-4
lines changed

2 files changed

+10
-4
lines changed

setup.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,8 @@
5757
"openeo_processes==0.0.4", # 0.0.4 is special build/release, also see https://github.com/Open-EO/openeo-python-driver/issues/152
5858
"gunicorn>=20.0.1",
5959
"numpy>=1.22.0",
60-
"shapely<2.0.0", # https://github.com/Open-EO/openeo-python-driver/issues/158
60+
"shapely<2.0.0; python_version<='3.9'",
61+
"shapely>=2.0.0; python_version>'3.9'",
6162
"pandas>=1.4.0",
6263
"geopandas>=0.11.0", # 0.11.0 fixes https://github.com/geopandas/geopandas/pull/2243
6364
"xarray>=0.16.2",

tests/util/test_geometry.py

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
from pyproj.exceptions import CRSError
1010
from shapely.geometry import Point, Polygon
1111
from shapely.geometry.base import BaseGeometry
12-
from shapely.geos import WKTWriter
12+
1313

1414
from openeo_driver.util.geometry import (
1515
BoundingBox,
@@ -249,8 +249,13 @@ def test_spatial_extent_union_mixed_crs():
249249

250250

251251
def to_wkt(geometry: BaseGeometry, rounding_precision=2):
252-
wkt_writer = WKTWriter(shapely.geos.lgeos, rounding_precision=rounding_precision)
253-
return wkt_writer.write(geometry)
252+
try:
253+
from shapely import to_wkt
254+
to_wkt(geometry,rounding_precision=rounding_precision)
255+
except ImportError:
256+
from shapely.geos import WKTWriter
257+
wkt_writer = WKTWriter(shapely.geos.lgeos, rounding_precision=rounding_precision)
258+
return wkt_writer.write(geometry)
254259

255260

256261
class TestGeometryBufferer:

0 commit comments

Comments
 (0)