Skip to content

v0.2.19

Choose a tag to compare

@kayhendriksen kayhendriksen released this 17 Apr 20:16
· 77 commits to main since this release

foehn 0.2.19

New

  • DownloadResult return type — All download_* functions now return a
    DownloadResult dataclass with total_assets, downloaded, skipped, and
    filenames. Use result.downloaded > 0 to gate expensive downstream work
    (e.g. Spark MERGE INTO) without scanning the bronze directory.
  • since filter for download_netcdf — NetCDF/GeoTIFF/ZIP collections now
    support incremental updates, matching download_collection and
    download_grib2.
  • Exported DownloadResult from the top-level foehn package.

Changed

  • foehn.download() now returns DownloadResult (previously None), combining
    metadata + collection counts.
  • Connection pool size in _retry_session now scales with workers, avoiding
    urllib3 "connection pool is full" warnings on high-concurrency downloads.

Migration

# Before
foehn.download("smn")

# After — gate downstream work on actual changes
result = foehn.download("smn")
if result.downloaded:
    run_spark_merge(result.filenames)

No breaking changes — callers ignoring the return value continue to work.