Releases: nsidc/earthaccess
v0.14.0
[v0.14.0] - 2025-02-11
📣 📣 📣 BREAKING CHANGE 📣 📣 📣
From now on, any time Earthdata Login rejects credentials, a Python exception will be raised. You can get the old behavior with a standard try/except block:
# Caution: If credentials are rejected, you should know about it and update any env vars
# or .netrc files. If credentials are rejected too many times, you could get locked out
# of your account.
try:
earthaccess.login()
except Exception:
pass
Added
search_datasets
now accepts ahas_granules
keyword argument. Usehas_granules=False
to search for metadata about collections with no associated granules. The default value set inDataCollections
remainsTrue
. (#939) (@juliacollins)
Changed
- Breaking: earthaccess will now raise an exception when login credentials are rejected. If you need the old behavior, please use a
try
block. (#888) (@mfisher87, @chuckwondo, @jhkennedy)
New Contributors
- @juliacollins made their first contribution in #940
Full Changelog: v0.13.0...v0.14.0
v0.13.0
[v0.13.0] - 2025-01-28
Changed
- Integration tests: Test are no longer randomized! this means each fail should be reproducible, we are testing the most
popular datasets from all DAACs, see files under tests/integration/popular_collections.
(#215)
(@mfisher87)
Added
- VirtualiZarr: earthaccess can open archival formats (NetCDF, HDF5) as if they were Zarr by leveraging VirtualiZarr
In order to use this capability the collection needs to be supported by OPeNDAP and have dmrpp files.
See example notebooks!
(@ayushnag and @TomNicholas)
Fixed
-
earthaccess.download
will let requests automatically decode compressed content
(#887)
(@itcarroll) -
earthaccess.download
now shares the authenticated session cookie among threads to avoid overloading EDL.
(#913)
(@hailiangzhang)
Complete autogenerated list:
What's Changed
- Refactor development guide by @jhkennedy in #874
- chore: update pre-commit hooks by @pre-commit-ci in #886
- Opening virtual datasets (dmr-adapter) by @ayushnag in #606
- Fix Incorrect Earthdata Login Hyperlinks by @mitchstartzel in #907
- Add a workflow for generating Hackday Github Discussion threads by @Sherwin-14 in #914
- Fix
CATEGORY_ID
in hack day discussion workflow by @mfisher87 in #917 - download using chunk iteration rather than raw response by @itcarroll in #920
- Fix small open_virtual_dataset bugs by @ayushnag in #923
- Thread-local Session Management and Cookie Reuse to Address EDL DSE issue by @hailiangzhang in #909
- NASA directive updates by @asteiker in #928
- Refactor integration tests to remove random collection sampling by @mfisher87 in #749
- Add earthaccess-virtualizarr tutorial notebook by @ayushnag in #904
- Preparing the release of v0.13.0 by @betolink in #931
New Contributors
- @ayushnag made their first contribution in #606
- @mitchstartzel made their first contribution in #907
- @hailiangzhang made their first contribution in #909
Full Changelog: v0.12.0...v0.13.0
v0.12.0
v0.12.0
Changed
- Use built-in
assert
statements instead ofunittest
assertions in integration tests (#743) (@chuckwondo)
Added
- Add support for
NETRC
environment variable to override default.netrc
file location (#480) (@chuckwondo) - Add
nox
session for running integration tests locally (#815; @chuckwondo and #872; @jhkennedy) - Auto-add comment to PR that requires maintainer to review and re-run integration tests (#824) (@chuckwondo)
Removed
- The
scripts/integration-test.sh
script has been removed in favor of theintegration-tests
nox session. (#872) (@jhkennedy) - Python 3.9 is no longer supported. (#876) (@mfisher87)
Fixed
earthaccess.download
will not ignore errors by default (#581) (@Sherwin-14, @chuckwondo, @mfisher87)- Integration tests no longer clobber existing
.netrc
file (#806) (@chuckwondo) - Return an empty list instead of raising an
IndexError
when searches find no results. (#526) (@jhkennedy)
Full Changelog: v0.11.0...v0.12.0
v0.11.0
v0.11.0
Changed
- Automatically refresh EDL token and deprecate the
Auth.refresh_tokens
method with no replacement, as there is no longer a need to explicitly refresh (#484) (@fwfichtner) - Deprecate
earthaccess.get_s3fs_session
andStore.get_s3fs_session
. Useearthaccess.get_s3_filesystem
andStore.get_s3_filesystem
, respectively, instead (#766) (@Sherwin-14, @chuckwondo)
Added
- Add Issue Templates (#281) (@Sherwin-14)
- Support Service queries (#447) (@nikki-t, @chuckwondo, @mfisher87, @betolink)
- Add example PR links to pull request template (#756) (@Sherwin-14, @mfisher87)
- Add Contributing Naming Convention document (#532) (@Sherwin-14, @mfisher87)
Fixed
- Remove broken link "Introduction to NASA earthaccess" (#779) (@Sherwin-14)
- Restore automation for tidying notebooks used in documentation (#788) (@itcarroll)
Removed
- Remove
binder/
directory, as we no longer need a special binder environment with the top-levelenvironment.yml
introduced in #733 (@jhkennedy)
New Contributors
- @fwfichtner made their first contribution in #782
- @nikki-t made their first contribution in #500
Full Changelog: v0.10.0...v0.11.0
v0.10.0
v0.10.0
Changed
- Perform YAML formatting with
yamlfmt
instead of
prettier
(#555)
(@chuckwondo,@mfisher87) - Replace
print
calls withlogging
calls where appropriate and add T20 Ruff rule
(#511)
(@botanical,@chuckwondo,
@mfisher87) - Update
CHANGELOG.md
to follow Common Changelog conventions
(#584)
(@danielfromearth,@chuckwondo,
@jhkennedy,@mfisher87)
Added
- Enable queries to Earthdata User Acceptance Testing (UAT) system for authenticated accounts
(#421)
(@danielfromearth,@mfisher87,
@jhkennedy,@chuckwondo,
@betolink) - Add support for Python 3.12
(#457)
(@chuckwondo,@mfisher87)
Removed
- Breaking: Remove support for Python 3.8
(#457)
(@mfisher87,@chuckwondo) - Breaking: Remove the
get_user_profile
method and theemail_address
andprofile
attributes
from theAuth
class. Calling the EDL API to get user profile information
is not intended for library access and is not necessary for this library's
intended use cases. (#421)
(@danielfromearth,@mfisher87,
@jhkennedy,@chuckwondo,
@betolink)
Fixed
- Use Search After
for collection and granule searches to support deep-paging through large result sets
(#483)
(@doug-newman-nasa,@chuckwondo,
@mfisher87,@betolink) - Correct and enhance static type hints for functions and methods that make CMR queries
or handle CMR query results (#508)
(@mfisher87,@jhkennedy,
@chuckwondo,@betolink) - Create destination path prior to direct S3 downloads, if it doesn't already
exist (#562)
(@itcarroll,@mfisher87,
@chuckwondo)
-Fix broken image link in sea level rise tutorial
((#427)(@jbrownrs)
New Contributors
- @battistowx made their first contribution in #492
- @chuckwondo made their first contribution in #497
- @doug-newman-nasa made their first contribution in #494
- @rupesh2 made their first contribution in #469
- @botanical made their first contribution in #566
- @Sherwin-14 made their first contribution in #579
- @jbrownrs made their first contribution in #753
Full Changelog: v0.9.0...v0.10.0
v0.9.0
What's Changed
-
Features:
-
Bug fixes:
-
Maintenance:
- Update README.md by @abarciauskas-bgse in #429
- Clarify that temporal and bbox args must be tuples in docstrings, fix docstring formatting by @mfisher87, @danielfromearth in #448
- Update CITATION.cff to fix Zenodo, add CFF validator by @mfisher87 in #408
- Add workflow to update PRs with docs preview link in description by @mfisher87 in #414
- Remove s3fs < 2024 pin by @rsignell in #466
- Update README.md by @asteiker in #434
New Contributors
- @abarciauskas-bgse made their first contribution in #429
- @vincentsarago made their first contribution in #451
- @kvenkman made their first contribution in #459
- @rsignell made their first contribution in #466
Full Changelog: v0.8.2...v0.9.0
v0.8.2
What's Changed
- Bug fixes:
- Enable AWS check with IMDSv2
- Add region to running in AWS check
- Handle opening multi-file granules
- Maintenance:
- Add CI tests with minimum supported versions
- Update poetry lockfile
- Add
python-dateutil
as a direct dependency - Remove binder PR comments
- Add YAML formatting (prettier)
Full Changelog: v0.8.1...v0.8.2
v0.8.1
What's Changed
- New Features:
- Add
kerchunk
metadata consolidation utility.
- Add
- Enhancements:
- Handle S3 credential expiration more gracefully.
- Maintenanece:
- Use dependabot to update Github Actions.
- Consolidate dependabot updates.
- Switch to
ruff
for formatting.
Full Changelog: v0.8.0...v0.8.1
v0.8.0
What's Changed
- Bug fixes:
- Fix zero granules being reported for restricted datasets. (#358)
- Enhancements:
New Contributors
- @danielfromearth made their first contribution in #358
Full Changelog: v0.7.1...v0.8.0
v0.7.1
What's Changed
- Fix: Assume granules without
RelatedUrls
are not cloud hosted by @mfisher87 in #339
Full Changelog: v0.7.0...v0.7.1