Skip to content

Releases: opendatacube/datacube-core

1.8.6

30 Sep 01:43
Compare
Choose a tag to compare
  • Added dataset purge command for hard deletion of archived datasets #1199
  • Trivial fixes to CLI help output #1197
  • Fix to enable searching for multiple products #1201

1.8.5

18 Aug 01:14
Compare
Choose a tag to compare
  • Fix unguarded dependencies on boto libraries #1174 #1172
  • Various documentation fixes #1175
  • Address import problems on Windows due to use of Unix only functions #1176
  • Address numpy.bool deprecation warnings #1184

Datacube v1.8.4

06 Aug 01:38
Compare
Choose a tag to compare

v1.8.4 (6 August 2021)

  • Removed example and contributed notebooks from the repository. Better notebook examples exist
  • Removed datacube_apps, as these are not used and not maintained
  • Add cloud_cover to EO3 metadata
  • Add erosion functionality to Virtual products' ApplyMask to supplement existing dilation functionality #1049
  • Fix numeric precision issues in compute_reproject_roi when pixel size is small #1047
  • Follow up fix to #1047 to round scale to nearest integer if very close
  • Add support for 3D Datasets #1099
  • New feature: search by URI from the command line datacube dataset uri-search
  • Added new "license" and "description" properties to DatasetType to enable easier access to product information #1143 #1144
  • Revised the Datacube.list_products function to produce a simpler and more useful product list table #1145
  • Refactor docs, making them more up to date and simpler #1137 #1128
  • Add new dataset_predicate param to dc.load and dc.find_datasets for more flexible temporal filtering (e.g. loading data for non-contiguous time ranges such as specific months or seasons over multiple years) #1148 #1156
  • Fix to GroupBy to ensure output output axes are correctly labelled when sorting observations using sort_key #1157
  • GroupBy is now its own class to allow easier custom grouping and sorting of data #1157
  • add support for IAM authentication for RDS databases in AWS #1168

1.8.3

18 Aug 04:03
16759a2
Compare
Choose a tag to compare
  • More efficient band alias handling
  • More documentation cleanups
  • Bug fixes in datacube.utils.aws, credentials handling when AWS_UNSIGNED is set
  • Product definition can now optionally include per-band scaling factors
  • Fix issue where new updated columns aren't created on a fresh database
  • Fix bug around adding updated columns locking up active databases

1.8.2

10 Jul 09:36
Compare
Choose a tag to compare
  • Fix regressions in .geobox (#982)
  • Expand list of supported dtypes to include complex values (#989)
  • Can now specify dataset location directly in the yaml document (#990, #989)
  • Better error reporting in datacube dataset update (#983)

1.8.1

02 Jul 02:22
Compare
Choose a tag to compare

Summary

This release contains mostly bug fixes an documentation improvements.

Full List of Changes

  • Added an updated column for trigger based tracking of database row updates in PostgreSQL. (#951)
  • Changes to the writer driver API. The driver is now responsible for constructing output URIs from user configuration. (#960)
  • Added a datacube.utils.geometry.assign_crs method for better interoperability with other libraries (#967)
  • Better interoperability with xarray - the xarray.Dataset.to_netcdf function should work again (#972, #976)
  • Add support for unsigned access to public S3 resources from CLI apps (#976)
  • Usability fixes for indexing EO3 datasets (#958)
  • Fix CLI initialisation of the Dask Distributed Executor (#974)

1.8.0

21 May 07:44
Compare
Choose a tag to compare

Summary

Lot's of changes since the 1.7 release.

The two primary changes that are most likely to have backward compatibility issues are:

  1. The internal details of how we store geo-registration information on xarray Datasets returned by dc.load have changed in a significant way (#837, #899).
  2. We no longer use GDAL native Python bindings (osgeo.{ogr,osr}) and instead rely on pyproj and shapely as a backend for Geometry and CRS classes (#880).

We no longer store CRS as an object (datacube.utils.geometry.CRS) in an attribute dictionary of the DataArray, instead it is stored in a string format (WKT) in an attribute of a special spatial_ref coordinate. This change allows us to better interface with xarray IO libraries. One can now write data loaded by dc.load with xr.to_netcdf(..) directly and load back with xr.open_dataset(..), all while maintaining geo-registration information (i.e. .geobox property).

Also, since CRS information is now stored on the Coordinate, and not on the DataArray itself, it survives a greater variety of mathematical operations. Attributes on the DataArray would often go missing when doing the most basic of operations, like changing dtype of the loaded data, now CRS metadata is preserved in the majority of the cases.

Moving away from the native GDAL Python bindings is primarily motivated by the complexity of the installation of gdal python library. Both shapely and pyproj that replaced it, offer binary wheels, and are therefore much simpler to install.

Changes since 1.8.0rc1

  • Expanded EO3 support
  • Bug fixes in EO3 handling
  • Cleanup in docs
  • Better compatibility with other libraries for CRS construction
  • Removed ancient db migration code

Full List of Changes

  • Changed geo-registration mechanics for arrays returned by dc.load
  • Migrate geometry and CRS backends from osgeo.ogr and osgeo.osr to shapely and pyproj respectively
  • Fixes for geometries crossing anti meridian
  • EO3 dataset metadata format is now understood by datacube dataset add
  • New virtual product combinator reproject for on-the-fly reprojection of rasters
  • Enhancements to the expressions transformation in virtual products
  • Support /vsi** style paths for dataset locations
  • Remove old Search Expressions and replace with a simpler implementation based on Lark Parser
  • Remove no longer required PyPEG2 dependency
  • Change development version numbers generation. Use setuptools_scm instead of versioneer
  • Deprecated datacube.helpers.write_geotiff, use datacube.utils.cog.write_cog for similar functionality
  • Deprecated datacube.storage.masking, moved to datacube.utils.masking
  • Remove S3AIO driver
  • Removed migration support from datacube releases before 1.1.5.
    If you still run a datacube before 1.1.5 (from 2016 or older), you will need to update it
    using ODC 1.7 first, before coming to 1.8.

1.8.0rc1

06 May 05:36
Compare
Choose a tag to compare
1.8.0rc1 Pre-release
Pre-release

Summary

Lot's of changes since the 1.7 release.

The two primary changes that are most likely to have backward compatibility issues are:

  1. The internal details of how we store geo-registration information on xarray Datasets returned by dc.load have changed in a significant way (#837, #899).
  2. We no longer use GDAL native Python bindings (osgeo.{ogr,osr}) and instead rely on pyproj and shapely as a backend for Geometry and CRS classes (#880).

We no longer store CRS as an object (datacube.utils.geometry.CRS) in an attribute dictionary of the DataArray, instead it is stored in a string format (WKT) in an attribute of a special spatial_ref coordinate. This change allows us to better interface with xarray IO libraries. One can now write data loaded by dc.load with xr.to_netcdf(..) directly and load back with xr.open_dataset(..), all while maintaining geo-registration information (i.e. .geobox property).

Also, since CRS information is now stored on the Coordinate, and not on the DataArray itself, it survives a greater variety of mathematical operations. Attributes on the DataArray would often go missing when doing the most basic of operations, like changing dtype of the loaded data, now CRS metadata is preserved in the majority of the cases.

Moving away from the native GDAL Python bindings is primarily motivated by the complexity of the installation of gdal python library. Both shapely and pyproj that replaced it, offer binary wheels, and are therefore much simpler to install.

Full List of Changes

  • Changed geo-registration mechanics for arrays returned by dc.load
  • Migrate geometry and CRS backends from osgeo.ogr and osgeo.osr to shapely and pyproj respectively
  • Fixes for geometries crossing anti meridian
  • EO3 dataset metadata format is now understood by datacube dataset add
  • New virtual product combinator reproject for on-the-fly reprojection of rasters
  • Enhancements to the expressions transformation in virtual products
  • Support /vsi** style paths for dataset locations
  • Remove old Search Expressions and replace with a simpler implementation based on Lark Parser
  • Remove no longer required PyPEG2 dependency
  • Change development version numbers generation. Use setuptools_scm instead of versioneer
  • Deprecated datacube.helpers.write_geotiff, use datacube.utils.cog.write_cog for similar functionality
  • Deprecated datacube.storage.masking, moved to datacube.utils.masking
  • Remove S3AIO driver

1.8.0b6

16 Apr 06:21
Compare
Choose a tag to compare
1.8.0b6 Pre-release
Pre-release

Summary

Lot's of changes since the 1.7 release.

The two primary changes that are most likely to have backward compatibility issues are:

  1. The internal details of how we store geo-registration information on xarray Datasets returned by dc.load have changed in a significant way (#837, #899).
  2. We no longer use GDAL native Python bindings (osgeo.{ogr,osr}) and instead rely on pyproj and shapely as a backend for Geometry and CRS classes (#880).

We no longer store CRS as an object (datacube.utils.geometry.CRS) in an attribute dictionary of the DataArray, instead it is stored in a string format (WKT) in an attribute of a special spatial_ref coordinate. This change allows us to better interface with xarray IO libraries. One can now write data loaded by dc.load with xr.to_netcdf(..) directly and load back with xr.open_dataset(..), all while maintaining geo-registration information (i.e. .geobox property).

Also, since CRS information is now stored on the Coordinate, and not on the DataArray itself, it survives a greater variety of mathematical operations. Attributes on the DataArray would often go missing when doing the most basic of operations, like changing dtype of the loaded data, now CRS metadata is preserved in the majority of the cases.

Moving away from the native GDAL Python bindings is primarily motivated by the complexity of the installation of gdal python library. Both shapely and pyproj that replaced it, offer binary wheels, and are therefore much simpler to install.

Full List of Changes

  • Changed geo-registration mechanics for arrays returned by dc.load
  • Migrate geometry and CRS backends from osgeo.ogr and osgeo.osr to shapely and pyproj respectively
  • New virtual product combinator reproject for on-the-fly reprojection of rasters
  • Enhancements to the expressions transformation in virtual products
  • Support /vsi** style paths for dataset locations
  • Remove old Search Expressions and replace with a simpler implementation based on Lark Parser
  • Remove no longer required PyPEG2 dependency
  • Change development version numbers generation. Use setuptools_scm instead of versioneer
  • Deprecated datacube.helpers.write_geotiff, use datacube.utils.cog.write_cog for similar functionality
  • Deprecated datacube.storage.masking, moved to datacube.utils.masking
  • Remove S3AIO driver

1.8.0b5

09 Apr 06:18
Compare
Choose a tag to compare
1.8.0b5 Pre-release
Pre-release

Testing release process, please ignore this one.