v1.3.0-rc
Pre-release
Pre-release
1.3.0-rc (2026-08-24)
Features
- chemistry: report which legacy table a result came from (67b522c)
- chemistry: serve legacy water chemistry over REST (dcb0cb1)
- chemistry: serve legacy water chemistry over REST (97d7f9f)
- data-migrations: publish existing project_areas (70c688f)
- geothermal: add /thing/geothermal-well endpoints (c60faf8)
- geothermal: add /thing/geothermal-well endpoints (83e6604)
- geothermal: free-text search on the well list endpoint (7e0a259)
- geothermal: free-text search on the well list endpoint (e5748a5)
- geothermal: normalize OGC view temperatures to Celsius (c6cfb7e)
- geothermal: normalize OGC view temperatures to Celsius (013fd75)
- gis: generate shareable QGIS and ArcGIS Pro artifacts (04fafce)
- gis: serve the artifact catalogue as JSON for frontend clients (3aa6611)
- ingestion: add automated ingestion pipeline foundations (055b51e)
- ingestion: add raw-zone infrastructure and database connectivity (475841d)
- ingestion: add the Diver-HUB client and correct the source mapping (e01fd8c)
- ingestion: add the shared backfill primitives (279ff6e)
- ingestion: add the shared backfill primitives (6d1ced3)
- ingestion: add the transducer unique constraint and upsert loader (6f3232d)
- ingestion: add the transducer unique constraint and upsert loader (31e0644)
- ingestion: add the Van Essen domain rules and adapter (34c4b1f)
- ingestion: add the Van Essen domain rules and adapter (91f4504)
- ingestion: derive the watermark from Postgres (87b8e9c)
- ingestion: derive the watermark from Postgres (a0af312)
- ingestion: land San Acacia locations and readings in the raw zone (6c9ab70)
- ingestion: reconcile San Acacia points against Ocotillo wells (fecbae8)
- ingestion: reconcile San Acacia points against Ocotillo wells (c20e2e3)
- ingestion: resolve the datum enum and the source unit (d10b2b4)
- ingestion: scaffold the automated_ingestion Dagster code location (0a2109e)
- ingestion: schedule the San Acacia ingest weekly (8c02977)
- ingestion: schedule the San Acacia ingest weekly (e4b1880)
- ingestion: wire the loader end to end (3e38614)
- ingestion: wire the loader end to end (113fdd6)
- lexicon: add new organizations to lexicon (b30bea8)
- lexicon: add organization and sort organization category alphabetically (1057c86)
- lexicon: add organization and sort organization category alphabetically (21090b5)
- ogc: add authenticated internal OGC mount (BDMS-985 A11) (ce45b91)
- ogc: add public data disclaimer page (72f26a5)
- ogc: add the field-description source of truth (832b659)
- ogc: carry field descriptions onto /queryables (1d41b56)
- ogc: document EDR parameters and cover the lot with tests (ac0513d)
- ogc: expose last_observation_date on the Group A layers (7aa1746)
- ogc: filter ogc_* views to public records (dbc760b)
- ogc: make /ogcapi-internal usable from ArcGIS Pro and QGIS (cfdf146)
- ogc: make /ogcapi-internal usable from ArcGIS Pro and QGIS (4c0099e)
- ogc: mirror EDR views in internal OGC mount (cc5f72c)
- ogc: ogc A2 replace server metadata placeholders (BDMS-972) (fd4c446)
- ogc: populate the schema view's Values column (9fc6966)
- ogc: publish a well water-column layer (1a9361a)
- ogc: publish a well water-column layer (8a0c3ce)
- ogc: replace server metadata placeholders (93206ab)
- ogc: serve field descriptions from /schema (f6af982)
- scripts: seed the test DB with real NMA legacy chemistry (8e55d1d)
- transducer: add data_maturity to observations (09926b2)
- transducer: add data_maturity to observations (9dff7fb)
- transducer: backfill data_maturity on acoustic (Wellntel) observations (60ffcf4)
- transducer: backfill data_maturity on acoustic observations (7a3915f)
- transducer: publish and range-delete for corrected hydrographs (cfd9243)
- transducer: publish and range-delete for corrected hydrographs (63bf502)
Bug Fixes
- api/asset: update access from admin to editor (c73d866)
- build: package data_migrations with the app (32c6462)
- ci: assert the heartbeat run succeeded (f95ad29)
- correct water_wells collection name in README examples and Added time_field(BDMS-973) (#823) (395a63c)
- db: repair EDR water views skipped by a stamped revision (0cc0d93)
- db: repair EDR water views skipped by a stamped revision (e448741)
- drop support for Python 3.7-3.9 (<a (b779661)
- edr: expose thing_type and materialize the chemistry coverages (aac3d87)
- edr: implement pygeoapi's instance contract (02f0fe5)
- edr: source water-chemistry EDR from the legacy NMA tables (ad37f78)
- edr: source water-chemistry EDR from the legacy NMA tables (8863430)
- expand actively_monitored_wells to include wells from all groups(BDMS-974/1178) (#866) (550fc18)
- gis: document the content type the artifact routes actually send (70b21b8)
- ingestion: do not match on external ids by default (d102cb7)
- ingestion: do not overwrite approved observations by default (b522052)
- ingestion: do not overwrite approved observations by default (5a50381)
- ingestion: grant bucket read, and name the pipeline after the bucket (b127f52)
- ingestion: grant bucket read, and name the pipeline after the bucket (c390073)
- ingestion: import ThingIdLink from where it actually lives (50963f4)
- ingestion: install the repository into the Dagster+ image (619cdf3)
- ingestion: install the repository into the Dagster+ image (7795959)
- ingestion: make db and domain importable in the deployed image (a425954)
- ingestion: make the IAM database path internally consistent (f246d61)
- ingestion: make the role grants runnable and drop the CREATE ROLE (0bd2213)
- ingestion: make the role grants runnable and drop the CREATE ROLE (33b541c)
- ingestion: raise the ingestion floor to 2024 (ac7b5e8)
- ingestion: reject a bare Cloud SQL instance name (a178f90)
- ingestion: repair two CI failures the first PR run exposed (fd6e869)
- ingestion: report the import environment from the heartbeat asset (5ccb0d6)
- ingestion: set code location env vars at a scope that reaches the container (773de45)
- ingestion: set code location env vars at a scope that reaches the container (affa35c)
- ingestion: set PYTHONPATH and report the import environment (1df7d8c)
- ingestion: stop duplicate instants reaching one INSERT (ef38ef2)
- ingestion: stop duplicate instants reaching one INSERT (1405ce9)
- ingestion: supply GCP credentials in a runtime that has none (8c1c32d)
- ingestion: supply GCP credentials in a runtime that has none (2799f91)
- ingestion: write the raw zone as parquet (9aa0eac)
- ingestion: write the raw zone as parquet (78bc921)
- ogc: drop duplicate collections step definition (3882a5d)
- ogc: gate ogc_waterlevels on the well's release status (c47f481)
- ogc: isolate public and internal pygeoapi module globals (5bb2aae)
- ogc: isolate public and internal pygeoapi module globals (860a3f4)
- ogc: re-point migration to new staging head (8ae9fe1)
- ogc: stop EDR field dicts leaking between requests (598f1ac)
- seed: load reference data even when migrations seeded a term (cdb4246)
- seed: load reference data even when migrations seeded a term (fb64f68)
- tests: remove hardcoded group id assumption (2c17ce6)
- thing: a well with no location no longer 500s the listing (bff7faa)
- transducer: backfill data_maturity from the legacy QC flag (95b9b78)
- transducer: serialize series writes and scope the publish parameter (4701979)
- transducer: spell the block time-order constraint correctly (ba73c6b)