Lachlan Deakin

Results 65 comments of Lachlan Deakin

Thanks for the insight; a new way to create an `ANARIArray3D` streamed from disk makes sense. Although, I am not sure simply having the bytes on disk instead of memory...

`zarrs` does not currently support strings or variable length data types. I am waiting for the [draft Zarr V3 ZEP for strings](https://github.com/zarr-developers/zeps/pull/47) to progress.

Support for strings has been added, there is an example here: https://github.com/LDeakin/zarrs/blob/main/examples/array_write_read_string.rs Variable length data types/codecs are experimental and will not be compatible with other implementations likely for some time....

The manifest storage transformer is unlikely to proceed. Supplanted by https://icechunk.io/spec/

Yes, this would be great @flying-sheep! async support has been a longstanding gap for the zip store. Both crates look like reasonable choices, and I'm not bothered about the first...

Another issue is that `CodecPipeline.evolve_from_array_spec` is currently never called. We need the `ArrayMetadata` and `ArrayConfig` in [`zarrs-python`] to properly support a broader range of Zarr V2 arrays and configurations. Also,...

> I wonder why the API takes [`UnsafeCellSlice

Ok these have to stay unsafe actually, I'm missing writing the most important invariant that output subsets must be non-overlapping. These methods have this signature so that threads can write...

This is the crux of all this: allocate an output, write directly into it parallelised over chunks. `Array::retrieve_array_subset_opt`: https://github.com/LDeakin/zarrs/blob/2f5a66520445f482695db6b5b51c2f83333f7dd1/zarrs/src/array/array_sync_readable.rs#L710-L755 > With “multidimensional”, you mean that the output slices belonging to...

Thanks for raising this @flying-sheep, I think I am on to something with #136. I've made the `decode_into()` and related methods safe. The `unsafe` part is the construction of `ArrayBytesFixedDisjointView`...