From 4ee3dd330fe41e38cdd917cbdaac5864f24fa8f4 Mon Sep 17 00:00:00 2001 From: napakalas Date: Wed, 6 May 2026 14:31:50 +1200 Subject: [PATCH 1/2] Set unique fallback id on region polygon features before new_feature (#198). --- mapmaker/flatmap/layers.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/mapmaker/flatmap/layers.py b/mapmaker/flatmap/layers.py index 0fef2b2a..69cc8c45 100644 --- a/mapmaker/flatmap/layers.py +++ b/mapmaker/flatmap/layers.py @@ -408,6 +408,8 @@ def add_group_features(self, group_name: str, features: list[Feature], region_properties.pop('userdata', None) for region in filter(lambda p: prepared_polygon.contains(p.geometry), regions): region_properties.update(region.properties) + if 'id' not in region_properties: + region_properties.update({'id': f'{self.id}_region_{region.geojson_id}'}) feature = self.flatmap.new_feature(self.id, polygon, region_properties) if feature is not None: layer_features.append(feature) From 9a9075b887bb287dd207068cc6b5af1b2d7cb8a0 Mon Sep 17 00:00:00 2001 From: napakalas Date: Mon, 18 May 2026 12:38:37 +1200 Subject: [PATCH 2/2] Remove redundant region id cleanup in grouped polygons (#198). --- mapmaker/flatmap/layers.py | 1 - 1 file changed, 1 deletion(-) diff --git a/mapmaker/flatmap/layers.py b/mapmaker/flatmap/layers.py index 69cc8c45..0850c45b 100644 --- a/mapmaker/flatmap/layers.py +++ b/mapmaker/flatmap/layers.py @@ -404,7 +404,6 @@ def add_group_features(self, group_name: str, features: list[Feature], prepared_polygon = shapely.prepared.prep(polygon) region_properties = base_properties.copy() # So that any region doesn't have a duplicate id - region_properties.pop('id', None) region_properties.pop('userdata', None) for region in filter(lambda p: prepared_polygon.contains(p.geometry), regions): region_properties.update(region.properties)