#store #zarrs #zarr #storage #array

zarrs_opendal

opendal store support for the zarrs crate

6 releases (breaking)

0.5.0 Dec 23, 2024
0.4.0 Nov 15, 2024
0.3.1 Sep 23, 2024
0.2.0 Sep 15, 2024
0.1.0 Sep 2, 2024

#1527 in Encoding

Download history 372/week @ 2024-09-17 88/week @ 2024-09-24 33/week @ 2024-10-01 8/week @ 2024-10-08 8/week @ 2024-10-15 4/week @ 2024-10-22 160/week @ 2024-11-12 36/week @ 2024-11-19 49/week @ 2024-11-26 206/week @ 2024-12-03 450/week @ 2024-12-10 99/week @ 2024-12-17 121/week @ 2024-12-24 30/week @ 2024-12-31

771 downloads per month
Used in 2 crates

MIT/Apache

140KB
3K SLoC

zarrs_opendal

Latest Version opendal 0.51 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
~374K SLoC