Skip to content

Releases: nasa/earthdata-varinfo

Version 3.0.1

30 Oct 15:30
d5d66cd
Compare
Choose a tag to compare

v3.0.1

2024-10-18

Changed:

  • CMR native IDs generated from variable names with spaces in them will replace
    those space characters with underscores to avoid errors when trying to ingest
    such variables.
  • The python-cmr requirement is updated to v0.12.0, which adds type hints for
    that package. A couple of type hints in earthdata-varinfo have been updated
    accordingly.
  • The numpy requirement has been relaxed to allow broader compatibility with
    client software. Note: This enables Python 3.12 compatibility.
  • To ensure compatibility with Python 3.12, the tests are now run using
    pytest. This allows JUnit style output to be produced, as the previously
    used unittets-xml-runner package was not compatible with Python 3.12. The
    tests themselves are still written using classes and syntax from unittest.
    The CI/CD for running the tests has been updated to also run the tests under
    Python 3.12.

Version 3.0.0

13 Sep 15:03
ccca299
Compare
Choose a tag to compare

v3.0.0

2024-09-11

The configuration file schema for earthdata-varinfo is significantly updated
in this release. For more information, see the release notes for schema v1.0.0
in config/CHANGELOG.md.

Added:

  • Groups within a NetCDF-4 or DMR file are now assigned to the VarInfo*.groups
    dictionary, allowing for their metadata attributes to be accessed after parsing
    an input file.

Changed:

  • CFConfig.get_cf_attributes has been renamed CFConfig.get_metadata_overrides,
    as there are now only overrides to be returned from this method. Calls to
    CFConfig.get_metadata_overrides now must specify a variable path. All
    overrides from a configuration file for a given collection are now retrievable
    from the newly public CFConfig.metadata_overrides class attribute.
  • Metadata overrides retrieved for a matching file path are ordered such that
    the most specific applicable override to the variable takes precedence. For
    example, when requesting the value of the "units" metadata attribute for
    variable "/nested/variable", an applicability rule that exactly matches this
    variable path will take precedence over rules matching to either the group,
    or all variables in the file.
  • Handling of nested Applicability_Groups has been removed from the CFConfig
    class, as the configuration file no longer nests these items in overrides.

Removed:

  • CFConfig._cf_supplements has been deprecated in favour of specifying all
    in-file metadata changes via a MetadataOverrides item (formerly
    CFOverrides) instead.

Version 2.3.0

27 Aug 21:01
bccf65b
Compare
Choose a tag to compare

v2.3.0

2024-08-26

The VarInfoBase.get_missing_variable_attributes method has been added to allow
someone to get metadata attributes from the configuration file for variables
that are absent from a file. An example usage is when a CF Convention grid
mapping variable is missing from a source file.
The VarInfoBase.get_references_for_attribute method has been added to retrieve
all unique variable references contained in a single metadata attribute for a
list of variables. For example, retrieving all references listed under the
coordinates metadata attribute.

Version 2.2.2

16 Jul 21:12
e7ab668
Compare
Choose a tag to compare

v2.2.2

2024-07-16

The generate_collection_umm_var function in earthdata-varinfo updated to support an
optional kwarg 'config_file=' for a configuration file, to be able to override known metadata errors.

Version 2.2.1

06 Apr 16:44
c725567
Compare
Choose a tag to compare

v2.2.1

2024-04-06

The requests package has been added as an explicit dependency of the package.
Additionally, black code formatting has been applied to the entire repository.

Version 2.2.0

04 Dec 22:18
1d965d4
Compare
Choose a tag to compare

v2.2.0

2023-11-30

This version of earthdata-varinfo updates varinfo.cmr_search to include
functionality to get a users EDL token given a LaunchPad token with
get_edl_token_from_launchpad and get_edl_token_header.
get_edl_token_from_launchpad returns a users EDL token given a LaunchPad
token and CMR environment and get_edl_token_header returns the appropriate header
prefix for each respective token.

Version 2.1.2

20 Nov 01:08
00600b4
Compare
Choose a tag to compare

v2.1.2

2023-11-14

This version of earthdata-varinfo updates the value of the LongName
attribute in generated UMM-Var records to use the value of the CF-Convention
long_name attribute for a variable, if it is present in the file. If this
attribute is not present in the in-file metadata, then the full path to the
variable (without the leading /) is used as before.

Version 2.1.1

24 Oct 20:21
0616125
Compare
Choose a tag to compare

v2.1.1

2023-10-24

Fixed deployment issues

Version 2.1.0

24 Oct 19:49
Compare
Choose a tag to compare

v2.1.0

2023-10-20

This version of earthdata-varinfo improves the functionality of the
varinfo.get_science_variables function with varinfo.is_science_variable() method.
This method returns true if a variable is a science variable by checking if
a variable contains dimension scale variables or if it contains coordinate references
or grid mapping attribute variables. This version also updates umm_var.get_umm_var
with get_umm_var_type. This function adds the UMM-Var field "VariableType"
to a UMM-Var record if a variable is a science variable.

Version 2.0.0

19 Sep 19:05
2203968
Compare
Choose a tag to compare

v2.0.0

2023-09-15

This version of earthdata-varinfo adds functionality to publish records to
CMR, along with a single overarching function that wraps the search, download
and publication functionality into a single function for the convenience of the
end-user. Additionally, the function signatures for cmr_search.get_granules
and cmr_search.download_granule have been updated to accept the full
Authorization header, instead of a bearer token, so that they are also
compatible with LaunchPad tokens.

  • generate_umm_var.generate_collection_umm_var is designed to be a single
    call for local workflows to find appropriate granules for a collection,
    download them, parse them and generate UMM-Var JSON, which can be optionally
    published to CMR.
  • umm_var.publish_umm_var ingests a single UMM-Var entry to CMR
  • umm_var.publish_all_umm_var ingests all of the UMM-Var entries from a given
    collection to CMR