Skip to content

freezebase 0.3.0

Choose a tag to compare

@lqgentner lqgentner released this 05 Aug 11:11
· 34 commits to main since this release
27b1f60

This release marks the first release of freezebase on PyPI!

Added

  • Per-path named AWS profile support in make_s3_upath. Combinable with a custom
    endpoint_url, mutually exclusive with anon=True and explicit
    key/secret/token. Setting a profile takes environment credentials out of
    boto's resolution chain, so the path signs with the profile's keys only.
  • aws_session, returning the cached Rasterio AWSSession for an S3 path, and
    clear_aws_session_cache to discard those sessions. Prefer aws_session over
    constructing an AWSSession directly, so every layer signs identically.

Changed

  • Renamed the package to freezebase, to allow publication on
    PyPI under the same name. The import path, PyPI distribution name,
    FREEZEBASE_CACHE/FREEZEBASE_DATA environment variables, and the GitHub
    repository all changed accordingly; there is no compatibility shim for the old names.
  • s3_env reuses a cached AWSSession per distinct S3 configuration instead of
    building one per call. Constructing a session resolves boto's whole credential
    chain eagerly, and s3_env is entered on every raster operation, so a
    profile-authenticated path previously re-read the shared credentials file
    for every raster read and write. Refreshable STS/SSO credentials still rotate, because
    Rasterio re-freezes them on each Env entry; static credentials rewritten
    mid-process now need clear_aws_session_cache.
  • make_s3_upath rejects credentials in client_kwargs, which reach s3fs but
    not s3_env.