Skip to content

Releases: janelia-cellmap/zarrify

v0.1.3

01 Jun 21:36
d02e136

Choose a tag to compare

Features

  • Every zarr3 array now includes dimension_names in its array metadata, sourced from the same axes list that lands in ome.multiscales[].axes. Required by the OME-NGFF 0.5 spec.

Breaking changes

  • Silent metadata trimming is gone. Previously, format classes auto-trimmed user-supplied axes/units/scale/translation to match the source's ndim. Now they raise a clear ValueError listing the mismatched field lengths. Pass axes/scale/translation/units matching the source rank.
  • N5 / zarr v2 conversions pre-validate every array's rank in one pass before any writes start, so a mismatch in a multi-array tree fails up front instead of partway through.

Tests

  • New test validates output end-to-end against ome_zarr_models.v05.Image.from_zarr()

Install

pip install zarrify==0.1.3

0.1.2

01 Jun 21:35
d02e136

Choose a tag to compare

Features

  • Output OME-NGFF v0.5 metadata for every zarr3 conversion (root.attrs["ome"] wrapper with version: "0.5")
  • Convert 0.4 multiscales on zarr v2 sources up to the 0.5 ome wrapper on the way out

Tests

  • New tests/test_metadata.py covering TIFF / N5 / zarr2 metadata correctness
  • ome-zarr-models added as a test dependency

Other

  • uv.lock committed for reproducible dev/CI builds
  • pixi run dev-install works again (renamed [tool.pixi.project][tool.pixi.workspace], uses uv pip install)

Install

pip install zarrify==0.1.2

0.1.1

01 Jun 21:35
d02e136

Choose a tag to compare

Fixes

  • data_origin is now optional in the config, required only when multiscale: true (previously failed config validation for non-multiscale runs)
  • Skip multiscale parameters in the config when multiscale: false

Install

pip install zarrify==0.1.1

0.1.0

01 Jun 21:33

Choose a tag to compare

Features

  • TensorStore-backed conversion for all formats (TIFF, TIFF stack, MRC, N5, zarr v2) to zarr3
  • Sharded zarr3 output with configurable shard shape
  • Pluggable compression codecs (zstd, gzip, blosc) with per-codec defaults
  • CRC32C checksums in the codec chain by default
  • Worker RAM validation before writes — raises with a suggested shard shape if a shard exceeds worker memory
  • Worker error propagation: per-task failures (e.g. checksum mismatches) are surfaced to the scheduler log
  • Shard alignment to inner chunk multiples
  • OME-NGFF v0.4 multiscales metadata output

Install

pip install zarrify==0.1.0