Skip to content

Support zarr v3#4260

Open
alejoe91 wants to merge 27 commits into
SpikeInterface:mainfrom
alejoe91:zarrv3
Open

Support zarr v3#4260
alejoe91 wants to merge 27 commits into
SpikeInterface:mainfrom
alejoe91:zarrv3

Conversation

@alejoe91

@alejoe91 alejoe91 commented Dec 11, 2025

Copy link
Copy Markdown
Member

Fixes #4014

Implement bulk changes from zarr v2 to zarr v3

  • create_dataset -> create_array
  • Serialization of non JSON serializable objects (recording/sorting/extensions) not supported anymore
  • Compressors use zarr.codecs, which wrap numcodecs compressor (e.g., Blosc -> BloscCodec)
  • Codec Pipeline: improved generation of codec pipeline to automatically chain filters (ArrayArrayCodec), serializers (standard unless an ArrayBytesCodec is used - e.g. Wavpack), and compressors (BytesBytesCodec)
  • Clean up of tests

TODO:

  • Add sharding parameter to save function
  • Backcompatibility
  • Test v2 reading in v3: make an action that generates v2 zarr for Recording/Sorting/Template/SortingAnalyzer using an old SI version and reads it in the new version

Depends on:

@alejoe91 alejoe91 added dependencies Issue/PR that is related to dependencies core Changes to core module labels Dec 11, 2025
@alejoe91 alejoe91 closed this Mar 20, 2026
@alejoe91 alejoe91 deleted the zarrv3 branch March 20, 2026 09:41
@alejoe91 alejoe91 restored the zarrv3 branch March 20, 2026 09:41
@alejoe91 alejoe91 reopened this Mar 23, 2026
@alejoe91 alejoe91 added this to the 0.105.0 milestone Mar 24, 2026
Comment thread src/spikeinterface/core/zarrextractors.py
@alejoe91 alejoe91 mentioned this pull request Mar 26, 2026
@alejoe91 alejoe91 marked this pull request as ready for review June 24, 2026 11:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

core Changes to core module dependencies Issue/PR that is related to dependencies

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Migrating to zarr v3

1 participant