Skip to content

Releases: opendatacube/eo-datasets

0.21.0

25 Jun 00:35
Compare
Choose a tag to compare
  • Added USGS level 2 product support to eo3-prepare

0.20.1

02 Jun 01:27
Compare
Choose a tag to compare
  • Added 'deafrica' option in naming conventions
  • Improved error message for duplicate measurement names in product validation

0.20.0

28 May 04:22
Compare
Choose a tag to compare

Assembler Improvments

Custom product names
You can now set your own product_name to bypass the automatic name generation.

    with DatasetAssembler(out) as p:
        p.datetime = datetime(2019, 7, 4, 13, 7, 5)
        p.product_name = "loch_ness_sightings"
        ...

Multiple-platforms
Multiple platforms are now allowed to be stored as a list of comma-separated values.

(and a p.platforms convenience property exists for accessing it as a sequence.)

>>> # Set multiple platforms
>>> p.platforms == ["landsat-5", "landsat-7"]
>>> # Or (identically):
>>> p.platform = 'landsat-5,landsat-7'


>>> # Access them using either method:
>>> p.platforms
{"landsat-5", "landsat-7"}
>>> p.platform
'landsat-5,landsat-7'

They are normalised individually using our existing platform normalisation (lowercase etc), and maintained sorted automatically (so that comparison and matching between values is always stable).

Validator improvements

You can now run eo3-validate on directories and it will validate all ODC files inside.

Examples:

# Validate a folder of products:
eo3-validate /path/to/my-products

# Validate all datasets against a product
eo3-validate /some/product.yaml /tmp/all-my-datasets

# Validate everything found inside the current folder(s)
eo3-validate .

# Validate a dataset *thoroughly* (opening its image files to check they match)
eo3-validate --thorough /some/product.odc-product.yaml /some/dataset.odc-metadata.yaml

Other improvements to eo3-validate.

  • Added warning for missing product license field (required for Stac and strongly encouraged now for ODC)
  • Added warning for non-standard file suffixes (*.odc-product.yaml etc)
  • Catch schema violations that will make the product fail to index into ODC.
  • Fixed false warnings in product->dataset nodata comparison (when "thorough" is enabled).
  • It now supports all ODC file types (datasets, products, metadata-types)

Product preparation

  • Further improvements to S2 preparation in eo3-prepare

0.19.3

07 May 06:01
Compare
Choose a tag to compare

Minor fixes.

  • When validating ODC products with eo3-validate, a duplicate measurement alias is no longer considered an error when both are within the same measurement. This tripped up a few old products we don't wish to update, and is not technically an issue.
  • Improved consistency between ESA and Sinergise S2 inputs in eo3-prepare metadata preparation, and updated GA's S2 ARD to match. Many minor fixes to them.
  • Fixed deprecation warnings from some dependencies (jsonschema, numpy).

0.19.2

30 Apr 01:19
Compare
Choose a tag to compare

Minor fixes

  • eo3-validate should work with multi-document yaml files. (#150)
  • DEA's Derivative Sentinel 2 naming conventions should include a datatake-time subfolder. (#151)

0.19.1

22 Apr 23:40
Compare
Choose a tag to compare

Minor fixes.

  • Include thumbnails in S2 ARD packager, and format its band names more consistently. (#148, #149)
  • Support NaN values when calculating footprint geometry (#147)

0.19

21 Apr 23:43
Compare
Choose a tag to compare

Easier product creation

eo3-validate is now more useful for writing product config.

Give it a product and dataset(s) document, and it will check they match each-other, in addition to the validation checks already performed.

Eg.

❯ eo3-validate ard_s2.odc-product.yaml ga_s2am_ard_3-2-0_53JQJ_2020-10-31_final.odc-metadata.yaml

E duplicate_measurement_name Name 'nbart_band07' is used more than once in a measurement name or alias.
    (Hint: Seen in nbart_red_edge_3)

W extra_measurements Dataset has measurements not present in product definition for 'ga_s2am_ard_3': nbar_nir_1
    (Hint: This may be valid, as it's allowed by ODC. Set `expect_extra_measurements` to mute this.)

failure: 1 error, 1 warning

(#140)

Assembler improvements

Note lineage without source metadata

Added a method to add lineage directly as IDs, rather than reading the whole source document:

p.note_source_datasets(
    # Classifier
    'level1',
    # Any number of ids
    'ca705033-0fc4-4f38-a47e-f425dfb4d0c7',
    '3781e90f-b677-40af-9439-b40f6e4dfadd',
)

The downside of using raw IDs is that Assembler cannot help you inherit metadata properties.
(#140)

GQA and fmask fields are now inheritable by default

(#144)

Packagers

  • Fixes to USGS L1 C2 preparation (#145)
  • Many improvements and fixes to S2 Level 1 metadata preparation (#146)
  • Further improvements to S2 ARD preparation, including linking to provenance from S2 Level1 (#146)

Docker improvements

Many improvements to the Docker config for eodatasets. Better caching, faster development, stable builds. (#143)

0.18

13 Apr 06:17
Compare
Choose a tag to compare

Assembler Improvements

  • Improved grid name generation for eo3 documents.
    It can now name grids by resolution, or if nothing else works, alphabetically (grid 'a', grid 'b' etc). This was desired because Sentinel has a more diverse set of grids.
  • The .properties on assembler now implement the full Python MutableMapping type, so you can use all expected dict methods on it:
    p.properties.update(other_dict)

(property normalisation and validation will still be performed, of course)

  • Expanded the built-in list of known "producer" organisations, known properties, and inherited Stac properties (primarily for Sentinel 2).
  • The "unknown property" warning message will now give users a filled-out github issue template to report unknown properties for Assembler. We hope people will.
  • Performance improvement: avoid reading image data when we don't need to calculate bounds (thanks @kieranricardo!)
  • Fixed some incorrect "property override" warnings produced by Assembler when the normalised values match.
  • Minor improvements, clarifications to docs

Packaging Updates

  • Added support for USGS C2 L1 data to eo3-prepare (thanks @dunkgray!)
  • Added initial support for Sentinel 2 Level 1 for both Synergise and ESA metadata to eo3-prepare (thanks @ohehir!) (the chosen metadata properties may not yet be finalised.)
  • ...and initial packaging for Sentinel 2 GA ARD in eo3-package-wagl. (the chosen metadata properties and package may not yet be finalised.)

Misc / Repository Improvements

  • Expanded static checking to be more draconian and opinionated (but delightful).
  • Implemented tighter security recommendations from the static checkers, such as moving packaging scripts to use a more limited XML parser (defusedxml).

0.17.1

01 Mar 05:23
Compare
Choose a tag to compare

Dependency fix: remove the hard requirement on rasterio's minimum version.

(We added this to fix a test-runner issue in the previous release, but it is not required by eodatasets code itself, so should not be a hard requirement.)

0.17.0

28 Feb 22:37
Compare
Choose a tag to compare

Minor improvements.

  • Increase the default COG overview block size from 128 to 512 (#124)
  • Stac conversion improvements: use a better rel links for products. (#117)