Skip to content

Use OME v0.5 by default and require it for Zarr v3#94

Open
kabilar wants to merge 7 commits into
lincbrain:mainfrom
kabilar:fix-ome0p5
Open

Use OME v0.5 by default and require it for Zarr v3#94
kabilar wants to merge 7 commits into
lincbrain:mainfrom
kabilar:fix-ome0p5

Conversation

@kabilar

@kabilar kabilar commented Jul 10, 2026

Copy link
Copy Markdown
Member

Context

Currently it looks like the default Zarr version is 3 but the default OME version is 0.4. Changing this default uncovered some issues with linc-convert (e.g. golden test data) and nifti-zarr-py.

Changes

  • Update the default OME version to 0.5 and require it for Zarr v3
  • Pass ome_version to write_ome_metadata across all modalities
  • Derive ome_version from zarr_version in tests and regenerate golden test data
  • Depends on Fix OME v0.5 metadata neuroscales/nifti-zarr-py#51
  • Depends on new nifti-zarr-py release

cc @satra @ayendiki

@kabilar
kabilar requested a review from balbasty July 10, 2026 21:48
@kabilar kabilar self-assigned this Jul 10, 2026
@kabilar

kabilar commented Jul 10, 2026

Copy link
Copy Markdown
Member Author

The CI is failing. Something looks quite off with regards to the test data: https://github.com/lincbrain/linc-convert/tree/main/tests/data

The zarr v2 test data have zarr.json files. And the zarr v3 zarr.json files have the ome key set to 0.4.

@kabilar

kabilar commented Jul 13, 2026

Copy link
Copy Markdown
Member Author

The CI is failing. Something looks quite off with regards to the test data: https://github.com/lincbrain/linc-convert/tree/main/tests/data

The zarr v2 test data have zarr.json files. And the zarr v3 zarr.json files have the ome key set to 0.4.

Hi @balbasty, as I am working to fix the test data, I am thinking that we should drop support in linc-convert for Zarr v2/OME v0.4. I don't think we have any data associated with publications or newly acquired data that is Zarr v2/OME v0.4. Although it is hard to be sure since the zarr.json files have the "version": "0.4", for example with the M1 LSM: https://webdav.dandiarchive.org/dandisets/001412/draft/derivatives/sub-MF283/strips_raw/sample-slice001/sub-MF283_sample-slice001_chunk-0001_acq-camera-01.ome.zarr/. What do you think?

@kabilar

kabilar commented Jul 14, 2026

Copy link
Copy Markdown
Member Author

The CI is failing. Something looks quite off with regards to the test data: https://github.com/lincbrain/linc-convert/tree/main/tests/data

The zarr v2 test data have zarr.json files. And the zarr v3 zarr.json files have the ome key set to 0.4.

I think I have fixed these issues, but neuroscales/nifti-zarr-py#51 has to be merged and released first.

@kabilar

kabilar commented Jul 17, 2026

Copy link
Copy Markdown
Member Author

With the new release of nifti-zarr-py, the CI now pass and this pull request is ready for review.

https://pypi.org/project/nifti-zarr/#history

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant