Skip to content

Releases: developmentseed/obstore

pyo3-object_store-v0.4.0

24 Mar 23:12
Compare
Choose a tag to compare

Compatibility release to use pyo3-object_store with object_store 0.11 and pyo3 0.24.

pyo3-object_store-v0.3.0

24 Mar 23:12
Compare
Choose a tag to compare

Compatibility release to use pyo3-object_store with object_store 0.11 and pyo3 0.23.

Breaking changes 🔧

Store constructors

  • In the AzureStore constructor, the container positional argument was renamed to container_name to match the container_name key in AzureConfig.

    This is a breaking change if you had been calling AzureStore(container="my container name"). This is not breaking if you had been using it as a positional argument AzureStore("my container name") or if you had already been using AzureStore(container_name="my container name").

py-v0.6.0

24 Mar 16:28
13a4eed
Compare
Choose a tag to compare

See also a blog post announcing this release.

New Features 🪄

Breaking changes 🔧

Object store methods

No breaking changes.

Store constructors

  • In the AzureStore constructor, the container positional argument was renamed to container_name to match the container_name key in AzureConfig. by @kylebarron in #380

    This is a breaking change if you had been calling AzureStore(container="my container name").

    This is not breaking if you had been using it as a positional argument AzureStore("my container name") or if you had already been using AzureStore(container_name="my container name").

    The idea here is that we want one and only one argument name for each underlying config parameter. Most of these breaking changes took place in 0.5.0, but this was overlooked.

Bug fixes 🐛

  • Fix import errors on Python 3.9:
  • Define __all__ to fix type checking import paths #389

Documentation 📖

Other

Full Changelog: py-v0.5.1...py-v0.6.0

[0.5.1] - 2025-03-17

Bug fixes 🐛

  • Fix import errors for Python 3.9 and 3.10. Update CI. by @kylebarron in #372

Full Changelog: py-v0.5.0...py-v0.5.1

pyo3-object_store-v0.2.0

17 Mar 14:50
d2aead6
Compare
Choose a tag to compare

What's Changed

Full Changelog: pyo3-object_store-v0.1.0...pyo3-object_store-v0.2.0

pyo3-bytes-v0.2.0

17 Mar 14:50
d2aead6
Compare
Choose a tag to compare

What's Changed

Full Changelog: pyo3-bytes-v0.1.3...pyo3-bytes-v0.2.0

py-v0.5.1

17 Mar 23:07
f636583
Compare
Choose a tag to compare

Bug fixes 🐛

  • Fix import errors for Python 3.9 and 3.10. Update CI. by @kylebarron in #372

Full Changelog: py-v0.5.0...py-v0.5.1

py-v0.5.0

17 Mar 18:49
b351311
Compare
Choose a tag to compare

See also a blog post announcing this release.

New Features 🪄

Breaking changes 🔧

Object store methods

No breaking changes.

Store constructors

  • Removed S3Store.from_session and S3Store._from_native. Use credential providers instead.
  • Reduce the config variations supported for input. I.e. we previously allowed region, aws_region, REGION or AWS_REGION as a config parameter to S3Store, which could make it confusing. We now only support a single config input value for each underlying concept. #323

Fsspec

Bug fixes 🐛

Documentation 📖

New Contributors

Full Changelog: py-v0.4.0...py-v0.5.0

pyo3-object_store-v0.1.0

14 Mar 18:42
d38dc27
Compare
Choose a tag to compare

Initial release!

py-v0.4.0

10 Feb 14:59
9e0b202
Compare
Choose a tag to compare

See also a blog post announcing this release.

New Features 🪄

  • Support for pickling & always manage store prefix by @kylebarron in #185, #239, #223
  • Add top-level obstore.store.from_url function, which delegates to each store's from_url constructor by @kylebarron in #179, #201
  • Add option to return Arrow from list_with_delimiter by @kylebarron in #238, #244
  • (Provisional) Enhanced loading of s3 credentials using aws-config crate by @kylebarron in #203
  • Access config values out from stores by @kylebarron in #210
  • LocalStore updates:
    • Enable automatic cleanup for local store, when deleting directories by @kylebarron in #175
    • Optionally create root dir in LocalStore by @kylebarron in #177
  • File-like object updates:
    • Add support for writable file-like objects by @kylebarron in #167

    • Updates to readable file API:

      • Support user-specified capacity in readable file-like objects by @kylebarron in #174
      • Expose ObjectMeta from readable file API by @kylebarron in #176
  • Merge config and kwargs and validate that no configuration parameters have been passed multiple times. (#180, #182, #218)
  • Add __repr__ to Bytes class by @jessekrubin in #173

Breaking changes 🔧

  • get_range, get_range_async, get_ranges, and get_ranges_async now require named parameters for start, end, and length to make the semantics of the range request fully explicit. by @kylebarron in #156
  • Previously, individual stores did not manage a prefix path within the remote resource and PrefixStore was used to enable this. As of 0.4.0, PrefixStore was removed and all stores manage an optional mount prefix natively.
  • obstore.open has been renamed to obstore.open_reader.
  • The from_env constructor has been removed from S3Store, GCSStore, and AzureStore. Now all constructors will read from environment variables. Use __init__ or from_url instead. #189
  • obstore.exceptions.ObstoreError renamed to obstore.exceptions.BaseError #200

Bug fixes 🐛

Documentation 📖

Other

New Contributors

Full Changelog: py-v0.3.0...py-v0.4.0

py-v0.3.0

16 Jan 16:29
b40d59b
Compare
Choose a tag to compare

New Features 🪄

  • Streaming uploads. obstore.put now supports iterable input, and obstore.put_async now supports async iterable input. This means you can pass the output of obstore.get_async directly into obstore.put_async. by @kylebarron in #54
  • Allow passing config options directly as keyword arguments. Previously, you had to pass all options as a dict into the config parameter. Now you can pass the elements directly to the store constructor. by @kylebarron in #144
  • Readable file-like objects. Open a readable file-like object with obstore.open and obstore.open_async. by @kylebarron in #33
  • Fsspec integration by @martindurant in #63
  • Prefix store by @kylebarron in #117
  • Python 3.13 wheels by @kylebarron in #95
  • Support python timedelta objects as duration config values by @kylebarron in #146
  • Add class constructors for store builders. Each store now has an __init__ method, for easier construction. by @kylebarron in #141

Breaking changes 🔧

  • get_range, get_range_async, get_ranges, and get_ranges_async now use start/end instead of offset/length. This is for consistency with the range option of obstore.get. by @kylebarron in #71

Bug fixes 🐛

Documentation 📖

New Contributors

Full Changelog: py-v0.2.0...py-v0.3.0