Releases: opendatacube/datacube-explorer
ODC Explorer 3.1.0 (2025-10-07)
ODC Explorer 3.1.0 (2025-10-07)
There's been a huge number of merged PRs since the last release, albeit mostly invisible to users.
The major areas of change are:
- Fix the slow/flaky STAC Collections endpoint at
/stac/collections - Speed up and fix flaky tests and the running of tests in GitHub Actions
- Removed unneeded dependencies and updated the rest
- Lots and lots of typing/tidying/linting fixes, mostly invisible, but should make the code easier to work on and
Thanks to
Significant
- STAC Endpoint: Speedup collections endpoint (10-100X) by @omad in #871
- Crash Fix: faulty call to logger by @omad in #829
- Tests: Allow running tests outside of docker, or without docker by @omad in #869
Packaging/Distribution
- Remove
python-dateutildependency by @pjonsson in #861 - Update to
datacube1.9.8 by @pjonsson in #812 - Dockerfile: don't install
psqlby @pjonsson in #799 - Enable docker builds on ARM64 machines by @omad in #826
- uv.lock: update dependencies by @pjonsson in #827 and #828
Development
Bug Fixes/Potential Bug Fixes
- DB: Fix cursor use after close by @omad in #836
- DB: Close connections in CLI apps by @omad in #872
- generate: permit longer app name by @pjonsson in #845
- index: fail when no SRID is found by @pjonsson in #837
- index: fix chaining order by @pjonsson in #875
- model: fix log call by @pjonsson in #880
- Pass strict=True to zip by @pjonsson in #855
- ProductSummary: store time as tuple by @pjonsson in #810
- stores: abort refresh early by @pjonsson in #820
- stores: use CreateSchema by @pjonsson in #846
- stores: use DropSchema from SQLAlchemy by @pjonsson in #839
Tests
- pytest: speedup collection, only doctest relevant files by @pjonsson in #801
- Various test fixes by @pjonsson in #838
- generate: fix pool for pytest-cov by @pjonsson in #843
- tests: remove print statements by @pjonsson in #847
- tests: fix sentry configuration by @pjonsson in #858
- Fix timezone sensitive tests by @omad in #870
- Dockerfile: install
gitin test image by @pjonsson in #879
GitHub Actions
- CI: speedup by splitting into multiple test jobs by @pjonsson in #800
- CI: make twine check strict by @pjonsson in #813
- CI: do not cancel matrix jobs by @pjonsson in #834
More Linting and Linting Fixes
- ruff: enable flake8-ret rules by @pjonsson in #849
- Enable some more Ruff rules by @pjonsson in #856
- Enable more Ruff rules by @pjonsson in #884
Tidying
- model: check for None by @pjonsson in #821
- model: remove unused variable by @pjonsson in #889
- postgis: remove unused function by @pjonsson in #842
- Reduce schema checking functions by @omad in #873
- Remove some trailing commas by @pjonsson in #776
- Rename full_time to duration by @pjonsson in #818
- schema: remove unused function by @pjonsson in #841
- stores: only pass product id by @pjonsson in #882
- stores: remove old cast by @pjonsson in #833
- TimePeriodOverview: always have counters by @pjonsson in #824
- utils: fix bbox_as_geom by @pjonsson in #809
- utils: remove old workaround by @pjonsson in #808
Type Checking
- cli: fix type of verbose flag by @pjonsson in #877
- extents: assert for type checker by @pjonsson in #795
- index: adjust type signature by @pjonsson in #794
- model: pass in name and refresh time by @pjonsson in #822
- model: permit None time_range by @pjonsson in #831
- pages: fix some type errors by @pjonsson in #811
- Remove default parameter values by @pjonsson in #883
- STAC: various type fixes by @pjonsson in #804
- stores: type checker fixes by @pjonsson in #803
- stores: various type fixes by @pjonsson in #832
- stores: various unrelated type fixes by @pjonsson in #823
- tests: remove type annotations by @pjonsson in #859
- types: Fix some type errors by @pjonsson in #881
- types: Type check more code by @pjonsson in #819
Automated Dependency PRs
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci[bot] in #796
- build(deps): bump actions/checkout from 4.2.2 to 5.0.0 by @dependabot[bot] in #797
- build(deps): bump github/codeql-action from 3.29.7 to 3.29.8 by @dependabot[bot] in #798
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci[bot] in #805
- build(deps): bump astral-sh/setup-uv from 6.4.3 to 6.5.0 by @dependabot[bot] in #807
- build(deps): bump github/codeql-action from 3.29.8 to 3.29.10 by @dependabot[bot] in #806
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci[bot] in #814
- build(deps): bump github/codeql-action from 3.29.10 to 3.29.11 by @dependabot[bot] in #815
- build(deps): bump codecov/codecov-action from 5.4.3 to 5.5.0 by @dependabot[bot] in #817
- build(deps): bump astral-sh/setup-uv from 6.5.0 to 6.6.0 by @dependabot[bot] in #816
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci[bot] in #825
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci[bot] in #848
- build(deps): bump aquasecurity/trivy-action from 0.32.0 to 0.33.1 by @dependabot[bot] in #852
- build(deps): bump codecov/codecov-action from 5.5.0 to 5.5.1 by @dependabot[bot] in #850
- build(deps): bump astral-sh/setup-uv from 6.6.0 to 6.6.1 by @dependabot[bot] in #851
- build(deps): bump github/codeql-action from 3.29.11 to 3.30.1 by @dependabot[bot] in #853
- build(deps): bump pypa/gh-action-pypi-publish from 1.12.4 to 1.13.0 by @dependabot[bot] in #854
- build(deps): bump astral-sh/uv from 0.8.15 to 0.8.16 by @dependabot[bot] in #863
- build(...
Explorer Release 3.0.1
We haven't had an Explorer release since late last year, and this is a big one, with an extensive list of bug-fix and cleanup changes.
This release is compatible with the 1.9.x series of datacube-core releases.
What's Changed
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci[bot] in #638
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci[bot] in #640
- Bump osgeo/gdal from ubuntu-small-3.9.1 to ubuntu-small-3.10.1 by @dependabot[bot] in #641
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci[bot] in #644
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci[bot] in #645
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci[bot] in #646
- Update robots.txt by @benjimin in #642
- schemas: update to STAC 1.1.0 by @pjonsson in #648
- docs: depend on sphinx-tabs by @pjonsson in #647
- tests: fix robots.txt test by @pjonsson in #651
- docs: update dependencies by @pjonsson in #652
- Bump osgeo/gdal from ubuntu-small-3.10.1 to ubuntu-small-3.10.2 by @dependabot[bot] in #643
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci[bot] in #653
- Fix utcnow() warning by @pjonsson in #655
- CI: cancel old PR jobs by @pjonsson in #657
- Update to Python 3.10 syntax by @pjonsson in #654
- test_stac: ignore deliberate warning by @pjonsson in #656
- docker-compose: speed up postgis by @pjonsson in #661
- Remove psycopg2 usages by @pjonsson in #660
- tests: fix typo in assert message by @pjonsson in #659
- Bump osgeo/gdal from ubuntu-small-3.10.2 to ubuntu-small-3.10.3 by @dependabot[bot] in #663
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci[bot] in #662
- api: align argument with implementations by @pjonsson in #665
- api: add missing argument by @pjonsson in #664
- stores: remove main() code by @pjonsson in #666
- Add override annotations by @pjonsson in #668
- Add some type signatures by @pjonsson in #670
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci[bot] in #669
- docs/conf: remove hashbang by @pjonsson in #672
- Import names from defining module by @pjonsson in #671
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci[bot] in #675
- CI: remove unused permissions by @pjonsson in #674
- dependabot: update requirements.txt by @pjonsson in #673
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci[bot] in #678
- Remove pyup configuration by @pjonsson in #679
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci[bot] in #680
- Update dependencies by @pjonsson in #692
- docs: fix formatting warning by @pjonsson in #693
- Put tool configs in pyproject.toml by @pjonsson in #694
- pytest: output test runtimes by @pjonsson in #706
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci[bot] in #687
- Re-enable disabled tests by @pjonsson in #695
- CI: pin actions by hash by @pjonsson in #709
- Update dependencies by @pjonsson in #711
- build(deps): bump the pip-deps group across 1 directory with 7 updates by @dependabot[bot] in #712
- Remove flake8 by @pjonsson in #713
- build(deps): bump the pip-deps group across 1 directory with 9 updates by @dependabot[bot] in #722
- build(deps): bump aquasecurity/trivy-action from 0.31.0 to 0.32.0 by @dependabot[bot] in #718
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci[bot] in #716
- build(deps): bump the pip-deps group across 1 directory with 4 updates by @dependabot[bot] in #725
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci[bot] in #726
- Convert setup.py to pyproject.toml by @pjonsson in #727
- CI: pass token to CodeCov action by @pjonsson in #729
- CI: use uv for lint jobs by @pjonsson in #732
- CI: remove sleep statements by @pjonsson in #731
- CI: shorten job timeout by @pjonsson in #733
- build(deps): bump the pip-deps group across 1 directory with 4 updates by @dependabot[bot] in #737
- Implement STAC API Collection Search by @Ariana-B in #730
- Remove field type mismatch check by @Ariana-B in #734
- tests: Fix output explosion in test logs. Run timing test last by @pjonsson in #736
- monitoring: use _LOG.debug to print by @pjonsson in #735
- docs: use uv for doc build by @pjonsson in #739
- CI: stop cleaning tests by @pjonsson in #740
- docker-compose: use unique db port by @pjonsson in #741
- CI: quote version number by @pjonsson in #738
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci[bot] in #746
- build(deps): bump github/codeql-action from 3.29.2 to 3.29.4 by @dependabot[bot] in #747
- Various type fixes by @pjonsson in #745
- build(deps): bump astral-sh/setup-uv from 6.4.1 to 6.4.3 by @dependabot[bot] in #748
- stores: minor cleanups by @pjonsson in #744
- CI: cache docker layers by @pjonsson in #749
- readthedocs: use uv for building by @pjonsson in #750
- build(deps): bump github/codeql-action from 3.29.4 to 3.29.5 by @dependabot[bot] in #753
- conf: autogenerate version by @pjonsson in #754
- Dockerfile: use uv for build by @pjonsson in #755
- Improve typehints by @Ariana-B in #752
- dockerignore: update with more patterns by @pjonsson in #760
- pre-commit: update ruff hook name by @pjonsson in #762
- Replace
requests_htmlwithselectolaxby @omad in #763 - Dockerfile: remove proj specials by @pjonsson in #759
- tests: fix types and assert more by @pjonsson in #757
- Update dependencies by @pjonsson in #764
- CI: use OIDC for CodeCov by @pjonsson in #765
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci[bot] in #77...
3.0.0
This is the first release compatible with datacube 1.9, and the version number has been bumped to be more in alignment with the 1.9 suite.
Primarily, this release implements full support for the postgis index driver, which saw a major refactoring of cubedash/summary. The new ExplorerIndex class provides an index driver abstraction layer to enable support for both the postgres and the postgis drivers.
There now exist postgis-compatible versions of all cubedash tables implemented using ORM declarative mappings, in alignment with datacube-core.
Note, the datacube environment must now be set up in accordance with the new configuration engine. See the migration guide for more details.
What's Changed
Full Changelog: 2.12.4...3.0.0
2.12.4
What's Changed
- Dockerfile: fixate GDAL version by @pjonsson in #620
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #621
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #622
- Require fiona 1.10.0 by @pjonsson in #624
- docs: fix flask-caching URL by @pjonsson in #626
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #628
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #629
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #632
- Bump codecov/codecov-action from 4 to 5 by @dependabot in #633
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #635
Full Changelog: 2.12.3...2.12.4
2.12.3
What's Changed
- Give 400 error for invalid query values by @Ariana-B in #610
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #612
- Use Flask application factory by @Ariana-B in #614
- More explicit error for removed Query extension by @Ariana-B in #615
- Update robots.txt default content by @Ariana-B in #616
- Get docker image working with latest gdal ubuntu by @Ariana-B in #619
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #617
Full Changelog: 2.12.2...2.12.3
2.12.2
2.12.1
2.12.0
What's Changed
-
Restrict search to indexed fields by @Ariana-B in #601
This change will hopefully reduce the (significant) load caused by web scraping bots running queries on unindexed fields. In Digital Earth Australia, each query takes about 20 seconds on database time, and quickly exhausts the number of operational worker threads.
Docker changes
- Dockerfile: disable pip cache in deployment by @pjonsson in #589
- Update to gunicorn 22.0.0 by @pjonsson in #593
- Dockerfile: remove git after use by @pjonsson in #588
- Dockerfile: fail on errors by @pjonsson in #596
- Add dockerignore by @pjonsson in #597
Package Updates
- Update to setuptools>=61 by @pjonsson in #590
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #594
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #592
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #599
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #602
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #604
Full Changelog: 2.11.0...2.12.0
2.11.0
What's Changed
This release contains two significant bug fixes:
- The first caused pagination failures of STAC API Responses to pystac-client (Thanks @Ariana-B in #578)
- The second is for crashes while updating the Explorer Summary Tables, which may also have affected some server responses. (Thanks @pjonsson and @jeremyh , see #581 and #587)
Bug Fixes
- Revert previous auto-modernise commits by @jeremyh in #587
- Fix pagination with pystac-client >= 0.7.4 by @Ariana-B in #578
- setup.py: depend on lxml_html_clean by @pjonsson in #584
Security Updates
Dependency Updates
-
Bump peter-evans/dockerhub-description from 3 to 4 by @dependabot in #571
-
[pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #572
-
Bump codecov/codecov-action from 3 to 4 by @dependabot in #573
-
[pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #574
-
[pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #576
-
Bump osgeo/gdal from ubuntu-small-3.8.3 to ubuntu-small-3.8.4 by @dependabot in #577
-
[pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #580
-
Bump osgeo/gdal from ubuntu-small-3.8.4 to ubuntu-small-3.8.5 by @dependabot in #583
Full Changelog: 2.10.1...2.11.0
2.10.1
Minor fixes and updates
- Reverse dataset order by @Ariana-B in #518
- Clarify instruction on configuring deployment by @charalamm in #521
- Default timezone by @pindge in #422
- make default timezone configurable and doc by @pindge in #529
- fix flake8 warnings by @pindge in #530
- Updated scanning pipeline by @whatnick in #526
- added stac title if in metadata by @clausmichele in #517
- Add basic /queryables endpoints by @Ariana-B in #515
- Dockerfile: clean /code directory by @pjonsson in #540
- readthedocs: update config to current format by @pjonsson in #541
- setup.py: bump flask version by @pjonsson in #542
- Disable failing tests by @pjonsson in #543
- Dockerfile: base on GDAL 3.8.0+space savings by @pjonsson in #544
- CI: add dependabot configuration by @pjonsson in #545
- CI: fix docpreview permissions by @pjonsson in #556
- dependabot: update Dockerfile by @pjonsson in #558
- pre-commit-config: do not reformat schemas by @pjonsson in #548
- Dockerfile: build psycopg2 in separate container by @pjonsson in #561
- schemas/update.sh: auto-update STAC version by @pjonsson in #549
- schemas: update to stac-api 1.0.0 by @pjonsson in #554
- docker-compose: add healthcheck for postgres by @pjonsson in #555
- Update to jsonschema 4.18 by @pjonsson in #560
- Dockerfile: restore missing env vars by @pjonsson in #563
- Update to flask 3 by @pjonsson in #564
- Update eodatasets3 min version by @Ariana-B in #567
New Contributors
- @charalamm made their first contribution in #521
- @clausmichele made their first contribution in #517
- @pjonsson made their first contribution in #540
Full Changelog: 2.10.0...2.10.1