Release notes#
3.0.2 (2025-01-31)#
Features#
Test
getsize()
andgetsize_prefix()
inStoreTests
. (#2693)Test that a
ValueError
is raised for invalid byte range syntax inStoreTests
. (#2693)Separate instantiating and opening a store in
StoreTests
. (#2693)Add a test for using Stores as a context managers in
StoreTests
. (#2693)Implemented
LogingStore.open()
. (#2693)LoggingStore
is now a generic class. (#2693)Change StoreTest’s
test_store_repr
,test_store_supports_writes
,test_store_supports_partial_writes
, andtest_store_supports_listing
to to be implemented using@abstractmethod
, rather raisingNotImplementedError
. (#2693)Test the error raised for invalid buffer arguments in
StoreTests
. (#2693)Test that data can be written to a store that’s not yet open using the store.set method in
StoreTests
. (#2693)Adds a new function
init_array
for initializing an array in storage, and refactorscreate_array
to useinit_array
.create_array
takes two new parameters:data
, an optional array-like object, andwrite_data
, a bool which defaults toTrue
. Ifdata
is given tocreate_array
, then thedtype
andshape
attributes ofdata
are used to define the corresponding attributes of the resulting Zarr array. Additionally, ifdata
given andwrite_data
isTrue
, then the values indata
will be written to the newly created array. (#2761)
Bugfixes#
Wrap sync fsspec filesystems with
AsyncFileSystemWrapper
. (#2533)Added backwards compatibility for Zarr format 2 structured arrays. (#2681)
Update equality for
LoggingStore
andWrapperStore
such that ‘other’ must also be aLoggingStore
orWrapperStore
respectively, rather than only checking the types of the stores they wrap. (#2693)Ensure that
ZipStore
is open before getting or setting any values. (#2693)Use stdout rather than stderr as the default stream for
LoggingStore
. (#2693)Match the errors raised by read only stores in
StoreTests
. (#2693)Fixed
ZipStore
to make sure the correct attributes are saved when instances are pickled. This fixes a previous bug that prevent usingZipStore
with aProcessPoolExecutor
. (#2762)Updated the optional test dependencies to include
botocore
andfsspec
. (#2768)Fixed the fsspec tests to skip if
botocore
is not installed. Previously they would have failed with an import error. (#2768)Optimize full chunk writes. (#2782)
Improved Documentation#
Changed the machinery for creating changelog entries. Now individual entries should be added as files to the changes directory in the zarr-python repository, instead of directly to the changelog file. (#2736)
Other#
Created a type alias
ChunkKeyEncodingLike
to model the union ofChunkKeyEncoding
instances and the dict form of the parameters of those instances.ChunkKeyEncodingLike
should be used by high-level functions to provide a convenient way for creatingChunkKeyEncoding
objects. (#2763)
3.0.1 (Jan. 17, 2025)#
Bug fixes#
Fixes
order
argument for Zarr format 2 arrays (#2679).Fixes a bug that prevented reading Zarr format 2 data with consolidated metadata written using
zarr-python
version 2 (#2694).Ensure that compressor=None results in no compression when writing Zarr format 2 data (#2708).
Fix for empty consolidated metadata dataset: backwards compatibility with Zarr-Python 2 (#2695).
Documentation#
Other#
3.0.0 (Jan. 9, 2025)#
3.0.0 is a new major release of Zarr-Python, with many breaking changes. See the 3.0 Migration Guide for a listing of what’s changed.
Normal release note service will resume with further releases in the 3.0.0 series.
Release notes for the zarr-python 2.x and 1.x releases can be found here: https://zarr.readthedocs.io/en/support-v2/release.html