Skip to content

Commit 9cd7632

Browse files
authored
Prepare obstore 0.5; bump to 0.5.0-rc.1 (#370)
* Prepare obstore 0.5 * bump to 0.5.0-rc.1
1 parent c13dbca commit 9cd7632

File tree

5 files changed

+35
-4
lines changed

5 files changed

+35
-4
lines changed

CHANGELOG.md

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11
# Changelog
22

3-
## [0.5.0] - 2025-03-10
3+
## [0.5.0] - 2025-03-17
44

55
### New Features :magic_wand:
66

7+
- **Class methods wrapper**. Instead of calling `obstore.get(store)`, you can now call `store.get()` directly. by @kylebarron in https://github.com/developmentseed/obstore/pull/331
78
- **User-supplied credential callback** by @kylebarron in https://github.com/developmentseed/obstore/pull/234
9+
- Add Azure credential providers by @daviewales in https://github.com/developmentseed/obstore/pull/343
810
- **Fsspec updates**:
911
- [FEAT] Create obstore store in fsspec on demand by @machichima in https://github.com/developmentseed/obstore/pull/198
1012
- [FEAT] support df.to_parquet and df.read_parquet() by @machichima in https://github.com/developmentseed/obstore/pull/165

Cargo.lock

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Loading

docs/blog/posts/obstore-0.5.md

+30-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
draft: false
3-
date: 2025-03-10
3+
date: 2025-03-17
44
categories:
55
- Release
66
authors:
@@ -19,6 +19,35 @@ This post gives an overview of what's new in obstore version 0.5.
1919

2020
Refer to the [changelog](../../CHANGELOG.md) for all updates.
2121

22+
## Class method wrappers
23+
24+
Until now, obstore provided only a _functional_ API with top-level functions exported from the `obstore` module. Now, obstore additionally provides these functions as methods on each store class.
25+
26+
**Previously**:
27+
28+
```py
29+
import obstore as obs
30+
from obstore.store import AzureStore
31+
32+
store = AzureStore()
33+
obs.put(store, ...)
34+
```
35+
36+
**Now**:
37+
38+
```py
39+
from obstore.store import AzureStore
40+
41+
store = AzureStore()
42+
store.put(...) # (1)!
43+
```
44+
45+
1. Note that this calls the class method `store.put` instead of the module-level function `obstore.put`.
46+
47+
This also can ease understanding of the API, since you can explore available methods from the store object directly.
48+
49+
![](../../assets/class-methods-vscode-suggestions.jpg)
50+
2251
## Credential providers
2352

2453
Authentication tends to be among the trickiest but most important elements of connecting to object storage. There are many ways to handle credentials, and trying to support every one natively in Obstore demands a high maintenance burden.

obstore/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "obstore"
3-
version = "0.5.0-beta.1"
3+
version = "0.5.0-rc.1"
44
authors = { workspace = true }
55
edition = { workspace = true }
66
description = "The simplest, highest-throughput interface to Amazon S3, Google Cloud Storage, Azure Blob Storage, and S3-compliant APIs like Cloudflare R2."

0 commit comments

Comments
 (0)