Releases: opendatacube/datacube-core
Open Data Cube 1.9.0-rc11 Pre-Release
Open Data Cube 1.9.0 Release Candidate 11
Key enhancements in this release candidate include:
- bug fixes to postgis driver
- improved handling of datasets crossing the anti-meridian
- enhancements to the index API to support use cases from Datacube Explorer
- psycopg2 is now an optional dependency for installation (but must be installed to connect to a postgres database)
(Note that rc10 was a bungled release and has been yanked from PyPI)
Changes since 1.9.0-rc9
:
- Permissions management cleanup in postgis driver. (#1613)
- Add
skip_broken_datasets
anddc_load_limit
config options. (#1616) - Enable global environment variables with
ODC_ALL
naming convention (#1616) - Remove workaround for an odc-geo bug that is now fixed. (#1622)
- Fix call to geopolygon search. (#1627)
- Use antimeridian package to "fix" extent polygons. (#1628)
- Record lineage when adding datasets with postgis index (#1632)
- Update schema logic (#1634)
- Drop valid-area check and anti-meridian fix 3857 extents (#1635)
- Remove problematic "common_timestamp" postgresql function from postgis driver. Some internal API changes
required to accommodate and preserve all previous index-driver level behaviour. (#1623) - Cherry picks from 1.8 (#1624-#1626, #1629-#1631) (#1637)
- Updates to index APIs - add
order_by
to dataset search, index name attribute, product most recent change method (#1643) - Fix alembic migrations (#1645)
- Make psycopg2 an optional dependency (#1648)
- Cherry pick recent merged PRs from develop branch and update whats_new for rc10 release. (#1647)
Open Data Cube 1.9.0-rc10 Pre-Release (yanked)
Open Data Cube 1.9.0 Release Candidate 10
This pre-release was bungled and has been yanked from PyPI, please see Release Candidate 11.
Key enhancements in this release candidate include:
- bug fixes to postgis driver
- improved handling of datasets crossing the anti-meridian
- enhancements to the index API to support use cases from Datacube Explorer
- psycopg2 is now an optional dependency for installation (but must be installed to connect to a postgres database)
Changes since 1.9.0-rc9
:
- Permissions management cleanup in postgis driver. (#1613)
- Add
skip_broken_datasets
anddc_load_limit
config options. (#1616) - Enable global environment variables with
ODC_ALL
naming convention (#1616) - Remove workaround for an odc-geo bug that is now fixed. (#1622)
- Fix call to geopolygon search. (#1627)
- Use antimeridian package to "fix" extent polygons. (#1628)
- Record lineage when adding datasets with postgis index (#1632)
- Update schema logic (#1634)
- Drop valid-area check and anti-meridian fix 3857 extents (#1635)
- Remove problematic "common_timestamp" postgresql function from postgis driver. Some internal API changes
required to accommodate and preserve all previous index-driver level behaviour. (#1623) - Cherry picks from 1.8 (#1624-#1626, #1629-#1631) (#1637)
- Updates to index APIs - add
order_by
to dataset search, index name attribute, product most recent change method (#1643) - Fix alembic migrations (#1645)
- Make psycopg2 an optional dependency (#1648)
- Cherry pick recent merged PRs from develop branch and update whats_new for rc10 release. (#1647)
Open Data Cube 1.9.0-rc9 Pre-Release
Open Data Cube 1.9.0 Release Candidate 9
This is the first release candidate to include access to the new hyperspectral loading API. If you install odc-stac
and pass driver="rio"
or driver="zarr"
to dc.load()
or dc.load_data()
, you can now make use of the powerful new hyperspectral loading engine from odc-stac
. Eventually this functionality will be split off from odc-stac
into a separate Python package. (if you pass nothing to driver
you get the old legacy ODC loader engine.) This hyperspectral loading work was performed by @Kirill888 and funded by the CSIRO Space and Astronomy unit.
This release candidate also addresses bugs in the configuration API and the index driver API. Some minor changes to the index driver spatial search API have been made to bring them into consistency with the dc.load()
API. (The semantics of the dc.load()
API spatial search API has been preserved, although the implementation has changed to allow simpler interaction with the index API.)
Changes since 1.9.0-rc8
:
- Ensure config API works with a blank config/empty file. (#1604)
- Various minor maintenance fixes. (#1607)
- Misc cleanup, and add support for geospatial queries to count methods in postgis driver. (#1608)
- Add new driver based loader (via
odc.loader
module in theodc-stac
package) (#1609) - Fix 1.9 docker image in GHA (#1610)
- Consolidate spatial search argument handling in index layer and prepare for release. (#1611)
1.8.19
Open Datacube Release 1.8.19
Ensures floating point COGs generated by ODC code are written out in a form that both GDAL and ESRI ArcGIS will handle correctly.
What's Changed
- Update readthedocs stylesheet for dark theme styling by @Ariana-B in #1579
- Update docker image to GDAL 3.9/Python 3.12/Ubuntu 24.04 by @SpacemanPaul in #1587
- Add deprecation warning for config environment names that will not be supported in 1.9 by @SpacemanPaul in #1592
- Always write floating point bands to cogs with nodata=nan for ESRI and GDAL compatibility by @SpacemanPaul in #1602
- Update whats_new for 1.8.19 release by @SpacemanPaul in #1612
Datacube 1.9.0-rc8 pre-release
Datacube 1.9.0 Release Candidate 8
Bugfix pre-release.
The 1.9.0 branch will remain in pre-release until we have working 1.9-compatible versions of the following key ODC packages: datacube-explorer
, datacube-ows
, eodatasets
, and odc-apps-dc-tools
.
Work on migrating these packages is underway, and this pre-release addresses an issue identified in the course of that work.
Changes since 1.9.0-rc7
Due to an error in packaging, schema creation and maintenance via alembic for the postgis index driver has been broken for wheels based installations (including installing from PyPI via pip) since it was first introduced in 1.9.0-rc1. There was a failed attempt to fix this in the previous pre-release. This pre-release finally fixes it properly.
- Fix packaging so that alembic data files are correctly packaged in wheels and update
whats_new.rst
ready for 1.9.0-rc8 pre-release. (#1599)
Datacube 1.9.0-rc7
Datacube 1.9.0 release candidate 7
1.9.0-rc6 was released from the wrong branch and has been yanked from PyPI. This is the version that was meant to be rc6.
Bugfix pre-release.
The 1.9.0 branch will remain in pre-release until we have working 1.9-compatible versions of the following
key ODC packages: datacube-explorer
, datacube-ows
, eodatasets
, and odc-apps-dc-tools
.
Work on migrating these packages is underway, and this pre-release addresses issues identified in
the course of that work.
Changes since 1.9.0-rc5
- Update whats_new.rst, ready for 1.9.0-rc7 release. (:pull:
1598
) - Fix multi-threading race condition in config API. (:pull:
1596
) - Move alembic.ini to a location where it will get installed by pip (without -e). (:pull:
1597
)
This pre-release includes contributions from @SpacemanPaul
Datacube 1.9.0-rc5 pre-release
Datacube 1.9.0 release candidate 5
Another release candidate for the 1.9.0 release.
The 1.9.0 branch will remain in pre-release until we have working 1.9-compatible versions of the following key ODC packages: datacube-explorer
, datacube-ows
, eodatasets
, and odc-apps-dc-tools
. Work on migrating these packages is underway, and this pre-release
is mostly a response to that work - applying changes intended to ease 1.8.x to 1.9.x migration.
1.9.0-rc5 also (finally) adds support for product deletion - user requests for this feature date back to early 2017 - before the project had adopted the name "Open Data Cube" (ODC) and was still known as the Australian Geoscience Data Cube (AGDC).
Changes since 1.9.0-rc4
- Update whats_new.rst, ready for 1.9.0-rc5 release (#1594)
- Expand extra dimension support, WIP (#1593)
- Ensure pre-prepared EO3 datasets can be indexed. (i.e. ensure the
prep_eo3()
function is idempotent) (#1591) - The canonical name of the postgres driver is now "postgres" with "default" as an alias instead of the other way around. (#1590)
- Update docker image to GDAL 3.9/Python 3.12/Ubuntu 24.04 (#1588)
- Fix typos in docs (#1577)
- Merge in recent 1.8.x branch changes. (#1568, #1579)
- Add Product delete methods to API and command in CLI, plus misc cleanup of the surrounds (#1583)
This pre-release includes contributions from @Ariana-B, @Kirill888, @pjonsson, and @SpacemanPaul
Datacube 1.9.0-rc6 pre-release
Datacube 1.9.0 release candidate 6
Bugfix pre-release.
The 1.9.0 branch will remain in pre-release until we have working 1.9-compatible versions of the following
key ODC packages: datacube-explorer
, datacube-ows
, eodatasets
, and odc-apps-dc-tools
.
Work on migrating these packages is underway, and this pre-release addresses issues identified in
the course of that work.
Changes since 1.9.0-rc5
- Update whats_new.rst, ready for 1.9.0-rc6 release. (:pull:
1598
) - Fix multi-threading race condition in config API. (:pull:
1596
) - Move alembic.ini to a location where it will get installed by pip (without -e). (:pull:
1597
)
This pre-release includes contributions from @SpacemanPaul
Datacube 1.9.0-rc4 pre-release
Datacube 1.9.0 release candidate 4
The last new major release of the Open Data Cube was v1.8.0 in May 2020, nearly 4 years ago.
ODC developers and the Steering Council have been working hard behind the scenes over the last couple of years
to address some of the accumulated technical debt in datacube-core
and prepare for new major releases.
The long-term plan includes a number of significant backwards-incompatible changes. An effort has been made to
provide a smooth migration pathway wherever possible, with existing behaviour in 1.8.x versions being deprecated
in 1.9.x, with alternatives being provided, then removing the deprecated behaviour in 2.0.x with the alternative
approaches becoming the standard, but some minor backwards incompatible changes in 1.9.x were unavoidable.
This is the first release candidate for the 1.9.x release series. Please refer to the Migration Notes document before attempting to upgrade from a 1.8 series installation.
Changes since 1.9.0-rc3:
Mostly changes to ease migration from 1.8.x
- Standardize resampling input supported to
odc.geo.warp.Resampling
(better odc-geo compatibility(:pull:1571
) - Refine default behaviour for config engine to support easier migration from 1.8 (:pull:
1573
) - Convert legacy GeoBoxes to odc.geo GeoBoxes in the core API (:pull:
1574
) - Add URL component pseudo to config layer to expose components to the api when configured as a URL,
and reformat whats_new for 1.9.0-rc4 release. (:pull:1575
)
Includes contributions from @SpacemanPaul and @snowman2
Other changes since 1.8.18:
- Merge in 1.8.x branch changes. (#1459, #1473, #1532, #1548, #1565)
- External Lineage API (#1401)
- Add lineage support to index clone operation (#1429)
- Migrate to SQLAlchemy 2.0 (#1432)
- Clean up deprecated code and add deprecation warnings to legacy methods, simplify DocReader logic (#1406)
- Mark geometry module as deprecated and replace all usage with odc-geo (#1424)
- Mark GridSpec as deprecated, replace math and cog functions with odc-geo equivalents, enforce new odc-geo conventions (#1441)
- Rename
gbox
togeobox
in parameter names (#1441) - Remove executor API (#1462)
- Remove ingestion methods,
GridWorkflow
andTile
classes (#1465) - Fix postgis queries for numeric custom search fields (#1475)
- Document best practice for pulling in changes from develop and update constraints.txt (#1478)
- Postgis index driver performance tuning (#1480)
- Cleanup and formalise spatial index API and expose in CLI (#1481)
- Increase minimum Python version to 3.10 (#1509)
- Virtual product tests using odc-geo GridSpec (#1512)
- New Configuration API, as per ODC-EP10 (#1505)
- Alembic migrations for postgis driver (#1520)
- EP08 lineage extensions/changes to datasets.get(). (#1530)
- EP13 API changes to Index and IndexDriver. (#1534)
- EP13 API changes to metadata and product resources. (#1536)
- Phase 1 of EP13 API changes to dataset resource - get_unsafe, get_derived, temporal_extent. (#1538)
- Add product argument to spatial_extent method, as per EP13. (#1539)
- Index driver API type hint cleanup. (#1541)
- Deprecate multiple locations. (#1546)
- Deprecate search_eager and search_summaries and add
archived
arg to all dataset search/count methods. (#1550) - Migrate away from deprecated Python pkg_resources module (#1558)
- Add
custom_offsets
andorder_by
arguments to search_retunrning() - order_by still unimplemented. (#1557) - Fix and enhance typehints, automated static type checking with mypy. (#1562)
- Improve SQLAlchemy join hints, addressing an recurring but intermittent bug. (#1564)
- Improve typehints and update docstrings in datacube/api/core.py (#1567)
- Add migration notes, update documentation and whats_new.rst for 1.9.0-rc1 release (#1569)
Includes contributions from @SpacemanPaul and @Ariana-B, with assistance from @omad and @robbibt
With thanks to the Open Data Cube Steering Council and all supporting organisations, especially Geoscience Australia.
Datacube 1.9.0-rc3 pre-release
This is re-pre-release of 1.9.0-rc1 to get the github and pypi pre-release version numbering back in sync.
Datacube 1.9.0 release candidate 3
The last new major release of the Open Data Cube was v1.8.0 in May 2020, nearly 4 years ago.
ODC developers and the Steering Council have been working hard behind the scenes over the last couple of years
to address some of the accumulated technical debt in datacube-core
and prepare for new major releases.
The long-term plan includes a number of significant backwards-incompatible changes. An effort has been made to
provide a smooth migration pathway wherever possible, with existing behaviour in 1.8.x versions being deprecated
in 1.9.x, with alternatives being provided, then removing the deprecated behaviour in 2.0.x with the alternative
approaches becoming the standard, but some minor backwards incompatible changes in 1.9.x were unavoidable.
This is the first release candidate for the 1.9.x release series. Please refer to the Migration Notes document before attempting to upgrade from a 1.8 series installation.
- Merge in 1.8.x branch changes. (#1459, #1473, #1532, #1548, #1565)
- External Lineage API (#1401)
- Add lineage support to index clone operation (#1429)
- Migrate to SQLAlchemy 2.0 (#1432)
- Clean up deprecated code and add deprecation warnings to legacy methods, simplify DocReader logic (#1406)
- Mark geometry module as deprecated and replace all usage with odc-geo (#1424)
- Mark GridSpec as deprecated, replace math and cog functions with odc-geo equivalents, enforce new odc-geo conventions (#1441)
- Rename
gbox
togeobox
in parameter names (#1441) - Remove executor API (#1462)
- Remove ingestion methods,
GridWorkflow
andTile
classes (#1465) - Fix postgis queries for numeric custom search fields (#1475)
- Document best practice for pulling in changes from develop and update constraints.txt (#1478)
- Postgis index driver performance tuning (#1480)
- Cleanup and formalise spatial index API and expose in CLI (#1481)
- Increase minimum Python version to 3.10 (#1509)
- Virtual product tests using odc-geo GridSpec (#1512)
- New Configuration API, as per ODC-EP10 (#1505)
- Alembic migrations for postgis driver (#1520)
- EP08 lineage extensions/changes to datasets.get(). (#1530)
- EP13 API changes to Index and IndexDriver. (#1534)
- EP13 API changes to metadata and product resources. (#1536)
- Phase 1 of EP13 API changes to dataset resource - get_unsafe, get_derived, temporal_extent. (#1538)
- Add product argument to spatial_extent method, as per EP13. (#1539)
- Index driver API type hint cleanup. (#1541)
- Deprecate multiple locations. (#1546)
- Deprecate search_eager and search_summaries and add
archived
arg to all dataset search/count methods. (#1550) - Migrate away from deprecated Python pkg_resources module (#1558)
- Add
custom_offsets
andorder_by
arguments to search_retunrning() - order_by still unimplemented. (#1557) - Fix and enhance typehints, automated static type checking with mypy. (#1562)
- Improve SQLAlchemy join hints, addressing an recurring but intermittent bug. (#1564)
- Improve typehints and update docstrings in datacube/api/core.py (#1567)
- Add migration notes, update documentation and whats_new.rst for 1.9.0-rc1 release (#1569)
Includes contributions from @SpacemanPaul and @Ariana-B, with assistance from @omad and @robbibt
With thanks to the Open Data Cube Steering Council and all supporting organisations, especially Geoscience Australia.