Skip to content

v3.4.0

Latest

Choose a tag to compare

@d-v-b d-v-b released this 15 Sep 20:55
· 45 commits to main since this release
292aeb4

zarr 3.4.0. Highlights are in the release blog post; the full per-change list is in the release notes. This release adds a required dependency on msgspec>=0.19.

What's Changed

  • docs: fix link checker errors and warnings; run weekly by @maxrjones in #4214
  • fix: ManagedMemoryStore sync methods must respect the path prefix by @d-v-b in #4204
  • fix: minor correctness and hygiene fixes from the sync-pipeline audit by @d-v-b in #4205
  • fix: reject malformed chunk keys in DefaultChunkKeyEncoding by @d-v-b in #4219
  • fix: explicit store sync-IO capability; wrappers forward it; LatencyStore fixes by @d-v-b in #4206
  • docs: add dev blog, update 3.3.0 release notes by @d-v-b in #4191
  • fix: make consolidated metadata nesting independent of persisted key order by @d-v-b in #4227
  • Convert rst double-backtick docstring markup to markdown by @jhamman in #4193
  • fix: preserve non-JSON-serializable storage options in _make_async by @d-v-b in #4239
  • chore: bump ruff to 0.16.0 and fix new default-rule violations by @d-v-b in #4213
  • docs: add a page linking to the companion packages by @d-v-b in #4247
  • docs: update readme by @d-v-b in #4251
  • docs: add card for zarr-http-server by @d-v-b in #4249
  • fix: allow require_array to accept a ZDType by @JOhnsonKC201 in #4189
  • fix: accept numpy integers as chunk sizes by @d-v-b in #4257
  • fix(build): use an sdist allowlist so the zarr sdist stops shipping subpackages by @d-v-b in #4261
  • Add unified JSON metadata validation via msgspec (#3285) by @vup903 in #4063
  • deps: bump cast-value.rs to >= 0.4.2 by @d-v-b in #4260
  • docs: add roadmap page outlining future plans by @d-v-b in #4149
  • fix: accept universal-pathlib UPath as a StoreLike value by @d-v-b in #4265
  • fix: make the nightly hypothesis failure alarm able to file issues by @glaziermag in #4274
  • fix: reject a string-valued zero scale in the scale_offset codec by @dylanpulver in #4279
  • fix: keep fill value and attributes in from_array by @paraseba in #4288
  • fix: skip exact byte comparison for gzip codec due to timestamp variance by @sheikhayaan in #4270
  • docs+test: gzip MTIME documentation follow-up and fused-pipeline test style pass - #310 by @d-v-b in #4296
  • feat: name packages that provide a codec zarr cannot find by @arcusbuilds in #4277
  • Fix infinite loop in _guess_num_chunks_per_axis_shard for 0-dimensional arrays by @Tomatokeftes in #4305
  • fix: resolve chunks=-1 to chunk size 1 on zero-length axes by @d-v-b in #4307
  • docs: document Read the Docs slugs for subpackage releases by @cucuwang in #4297
  • fix: shape the value buffer for coordinate selections in sharded writes by @dylanpulver in #4284
  • fix(sharding): flatten any multi-dim value for coordinate selections in partial writes by @d-v-b in #4316
  • fix(chunk-grids): make array creation O(1) in per-dimension chunk count by @d-v-b in #4218
  • chore(tests): move gzip mtime-comparison helper out of library code by @d-v-b in #4326
  • fix: unsigned index arrays raise IndexError because np.diff wraps and uint64 promotes by @selmanozleyen in #4286
  • fix: preserve index bounds and input arrays during normalization by @d-v-b in #4332
  • docs: state the rectilinear-flag consequence of #4272 and qualify nchunks_initialized by @d-v-b in #4323
  • chore(metadata): import Literal at module level in v2.py by @d-v-b in #4327
  • fix(metadata): handle argless KeyError from a codec's from_dict by @d-v-b in #4324
  • fix: deep-copy source attributes in from_array by @d-v-b in #4325
  • fix: resolve chunks=False to chunk size 1 on zero-length axes by @d-v-b in #4328
  • feat: accept numpy arrays as chunks/shards in create_array, Group.create_array and from_array by @d-v-b in #4329
  • fix: remove attribute nesting depth limit by @d-v-b in #4330
  • test: give the sharded coordinate-selection write path real weight in test_oindex by @d-v-b in #4331
  • fix: preserve the source Zarr dtype in from_array by @d-v-b in #4335
  • docs: explain from_array attribute copy recursion limit by @d-v-b in #4338
  • fix(docs): stop the docs build and docs tests deleting a cwd-relative data/ directory by @d-v-b in #4339
  • fix: complete imagecodecs codec package hints by @d-v-b in #4351
  • fix(store): retry the LocalStore rename when the destination is busy by @Tomatokeftes in #4358
  • refactor(store): polish the LocalStore rename retry from #4358 by @d-v-b in #4359
  • docs(blog): zarr 3.4.0 release post by @d-v-b in #4355
  • docs: 3.4.0 release notes by @d-v-b in #4360

Dependency updates

  • chore(deps): bump the python-dependencies group across 1 directory with 11 updates by @dependabot[bot] in #4216
  • chore(deps): bump cryptography from 48.0.1 to 50.0.0 by @dependabot[bot] in #4240
  • chore(deps): bump aiohttp from 3.14.1 to 3.14.3 by @dependabot[bot] in #4233
  • chore(deps): bump pymdown-extensions from 10.21.3 to 11.0 by @dependabot[bot] in #4197
  • chore(deps): bump the actions group across 1 directory with 9 updates by @dependabot[bot] in #4241
  • chore(deps-dev): bump the python-dependencies group across 1 directory with 5 updates by @dependabot[bot] in #4242
  • chore(deps): bump the actions group with 4 updates by @dependabot[bot] in #4258
  • chore(deps): bump the python-dependencies group with 6 updates by @dependabot[bot] in #4259
  • chore(deps): bump the python-dependencies group across 1 directory with 7 updates by @dependabot[bot] in #4278
  • chore(deps): bump the actions group across 1 directory with 4 updates by @dependabot[bot] in #4294
  • chore(deps): bump the python-dependencies group with 7 updates by @dependabot[bot] in #4295
  • chore(deps): bump CodSpeedHQ/action from 5.0.3 to 5.2.1 in the actions group by @dependabot[bot] in #4308
  • chore(deps-dev): bump the python-dependencies group with 5 updates by @dependabot[bot] in #4309
  • chore(deps): bump pymdown-extensions from 11.0 to 11.0.1 by @dependabot[bot] in #4314
  • chore(deps): bump the python-dependencies group with 6 updates by @dependabot[bot] in #4337
  • chore(deps): bump zizmorcore/zizmor-action from 0.6.2 to 0.6.3 in the actions group by @dependabot[bot] in #4336

New Contributors

Full Changelog: v3.3.0...v3.4.0