#store #zarrs #zarr #storage #array

zarrs_opendal

opendal store support for the zarrs crate

5 releases (3 breaking)

0.4.0 Nov 15, 2024
0.3.1 Sep 23, 2024
0.3.0 Sep 18, 2024
0.2.0 Sep 15, 2024
0.1.0 Sep 2, 2024

#2013 in Encoding

Download history 149/week @ 2024-08-31 16/week @ 2024-09-07 372/week @ 2024-09-14 267/week @ 2024-09-21 48/week @ 2024-09-28 12/week @ 2024-10-05 7/week @ 2024-10-12 6/week @ 2024-10-19 1/week @ 2024-10-26 115/week @ 2024-11-09 51/week @ 2024-11-16

167 downloads per month
Used in 2 crates

MIT/Apache

140KB
3K SLoC

zarrs_opendal

Latest Version opendal 0.50 zarrs_opendal documentation msrv build

opendal store support for the zarrs Rust crate.

use zarrs_storage::AsyncReadableStorage;
use zarrs_opendal::AsyncOpendalStore;

let builder = opendal::services::Http::default().endpoint("http://...");
let operator = opendal::Operator::new(builder)?.finish();
let store: AsyncReadableStorage = Arc::new(AsyncOpendalStore::new(operator));

Version Compatibility Matrix

See doc/version_compatibility_matrix.md.

opendal is re-exported as a dependency of this crate, so it does not need to be specified as a direct dependency.

However, if opendal is a direct dependency, it is necessary to ensure that the version used by this crate is compatible. This crate can depend on a range of semver-incompatible versions of opendal, and Cargo will not automatically choose a single version of opendal that satisfies all dependencies. Use a precise cargo update to ensure compatibility. For example, if this crate resolves to opendal 0.50.2 and your code uses 0.49.2:

cargo update --package opendal:0.50.2 --precise 0.49.2

Licence

zarrs_opendal is licensed under either of

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Dependencies

~13–25MB
~365K SLoC