All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Add method
Query.results
for returning results as an iterator instead of sequence (#37)
- Deprecate methods
Query.get
andQuery.get_all
in favor of the newQuery.results
method. These deprecated methods will likely be removed for the 1.0.0 release. (#37)
- Support STAC format output (#81)
- Add
Query
methodoption
for setting parameter options as described both in CMR Search API Parameter Options and in other sections of the CMR Search API documentation, thus supporting other parameter options that are not covered in that particular section of the documentation. (#74) - Support multi-point searches (#72)
- Support
processing_level_id
inCollectionQuery
(#76) - Support
platform
inCollectionQuery
(#77) - Support searching by instance format for
VariableQuery
(#59)
- Setup vcrpy for new
revision_date
unit tests (#70)
- Support searching for cloud-hosted collections (#54)
- Option to search for collections and granules by
revision_date
(#67)
- Do not clobber other headers when a query's
Authorization
header is set via thebearer_token
ortoken
method. However, if multiple calls are made to thebearer_token
and/ortoken
methods, later calls overwrite theAuthorization
setting of prior calls (i.e., the last call wins). (#48) - Export
DayNightFlag
type alias (#51)
- issues/35 Eliminated accommodation for Python versions older than 3.8 and updated CI build to test against Python versions 3.8 through 3.12. Also, fixed all flake8 warnings.
- issues/36 Added type annotations.
- issues/42 Fixed bug where a
KeyError
was thrown fromQuery.get
when the query format was a supported format other than"json"
. Further, in such cases, too many items would be fetched from the CMR due to a bug in how items were counted. Now, no more thanlimit
items are fetched.
- issues/29 Date parsing has been improved to accept more ISO-8601 string formats as well as timezone-aware datetime objects
- pull/27 New feature to search by
readable_granlue_name
https://cmr.earthdata.nasa.gov/search/site/docs/search/api.html#g-granule-ur-or-producer-granule-id
- pull/27 Fixed bug with
constructing the
options
sent to CMR which was causing filters to not get applied correctly. - pull/28 Fixed bug where
KeyError
was thrown if search result contained 0 hits
- pull/17 New feature that allows sort_keys to be passed into this Api up to the CMR. Used the valid sort_keys as of July 2023
- Updated dependency versions
- pull/15: New feature added to filter by granules within the circle around lat/lon
- pull/12: Added environments to
module level to simplify imports to
from cmr import CMR_UAT
- Changed token url to being tokens in authorization headers.
- Add in bearer token function for use of EDL bearer token in authorization headers.
- New workflow that runs lint and test
- New function
Query.token
to add an auth token to the request sent to CMR
- Now building with poetry
- New support for querying variables (UMM-V)
- Can now import
ToolQuery
ServiceQuery
VariableQuery
straight from cmr module (e.g.,from cmr import ToolQuery
).
- New support for querying tools (UMM-T) and services (UMM-S)
- CodeQL Analysis on pushes and pull requests
- Moved to github.com/nasa/python_cmr
- Prior releases of this software originated from https://github.com/jddeal/python-cmr/releases