[Git][debian-gis-team/asf-search][upstream] New upstream version 12.3.2
Antonio Valentino (@antonio.valentino)
gitlab at salsa.debian.org
Thu Aug 27 12:47:18 BST 2026
Antonio Valentino pushed to branch upstream at Debian GIS Project / asf-search
Commits:
90c0eb5d by Antonio Valentino at 2026-08-27T11:02:42+00:00
New upstream version 12.3.2
- - - - -
2 changed files:
- CHANGELOG.md
- asf_search/Products/NISARProduct.py
Changes:
=====================================
CHANGELOG.md
=====================================
@@ -27,6 +27,11 @@ and uses [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
-->
---
+## [v12.3.2](https://github.com/asfadmin/Discovery-asf_search/compare/v12.3.1...v12.3.2)
+
+### Fixed
+
+- `NISAR` dataset `geojson` export no longer fails when serializing coordinates for multipolygons
## [v12.3.1](https://github.com/asfadmin/Discovery-asf_search/compare/v12.3.0...v12.3.1)
=====================================
asf_search/Products/NISARProduct.py
=====================================
@@ -2,6 +2,7 @@ from shapely import unary_union, multipolygons
from typing import Dict, Tuple, Union
from asf_search import ASFSearchOptions, ASFSession, ASFStackableProduct
from asf_search.CMR.translate import try_parse_frame_coverage, try_parse_bool, try_parse_int
+from asf_search.WKT.validate_wkt import _counter_clockwise_reorientation
from shapely.geometry import shape, MultiPolygon
from shapely.geometry.base import BaseGeometry
from shapely.ops import transform
@@ -87,7 +88,7 @@ class NISARProduct(ASFStackableProduct):
polygons = item['umm']['SpatialExtent']['HorizontalSpatialDomain']['Geometry'][
'GPolygons'
]
- # dateline spanning scenes are stored as multiple polygons in CMR,
+ # dateline spanning scenes are stored as multiple polygons in CMR,
# we need to unwrap and merge them
if len(polygons) > 1:
polygon_shapes = []
@@ -96,14 +97,13 @@ class NISARProduct(ASFStackableProduct):
geometry = self._get_unwrapped({'coordinates': [coordinates], 'type': 'Polygon'})
polygon_shapes.append(geometry)
-
- geom = unary_union(multipolygons(polygon_shapes))
+ geom = unary_union(multipolygons(polygon_shapes))
# sometimes the dateline spanning polygons don't overlap properly
if isinstance(geom, MultiPolygon):
geom = geom.convex_hull
-
- return {'coordinates': [geom.exterior.coords], 'type': 'Polygon'}
+ geom, _warn = _counter_clockwise_reorientation(geom)
+ return {'coordinates': [[[x, y] for x, y in geom.exterior.coords]], 'type': 'Polygon'}
else:
coordinates = polygons[0]['Boundary']['Points']
coordinates = [[c['Longitude'], c['Latitude']] for c in coordinates]
View it on GitLab: https://salsa.debian.org/debian-gis-team/asf-search/-/commit/90c0eb5dbb064ad722a72795013602ba6674620e
--
View it on GitLab: https://salsa.debian.org/debian-gis-team/asf-search/-/commit/90c0eb5dbb064ad722a72795013602ba6674620e
You're receiving this email because of your account on salsa.debian.org. Manage all notifications: https://salsa.debian.org/-/profile/notifications | Help: https://salsa.debian.org/help
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/pkg-grass-devel/attachments/20260827/28d0435e/attachment-0001.htm>
More information about the Pkg-grass-devel
mailing list