Split tests rfc5#3
Merged
jo-mueller merged 51 commits intoDec 15, 2025
Merged
Conversation
…ller/ngff-spec into upgrade-to-jupyter-book-2
See discussion [here](bogovicj/ngff-rfc5-coordinate-transformation-examples#11 (comment))
affine/rotation matrices should always be 2D
I'm merging this so that all necessary changes regarding the addition of rfc5-stuff to the main branch of the ngff-spec repo can be in one place. This branch was supposed to be a break-out to keep the commit-history of ome#17 clean. * Update input/output to input_axes/output_axes in schema * Add description and required field to byDimension * Update mapAxis schema to use integer array * Add path and interpolation to displacements schema The displacements object now includes a required 'path' property for specifying the zarr array location and an 'interpolation' property with supported methods. This enhances the schema's ability to describe displacement fields and their application. * Add path and interpolation to coordinates schema Introduces 'path' and 'interpolation' properties to the 'coordinates' object in the schema, specifying the location of the coordinate field and the interpolation method to use. The 'path' property is now required. * only allow paths, no URLs * move required fields to correct places * name musnt't be empty * added axis types to schema * Added descriptions to schemas * updated versions to 0.6dev2 * fix paths and versions * pull schema from correct location * Added action to run the tests * update config reference * update versions in test suite * Revert "update config reference" This reverts commit ff3fedd. * update all version references to "0.6dev2" * update version reference * at least two spatial axes * allow any axis type * update version reference * Add maxItems constraint to axes schema Set a maximum of 5 items for the axes array in the schema to enforce limits on the number of axes allowed. * Refactor image schema for coordinate transformations Refactors the definition of coordinateTransformations and coordinateSystems to use inline array schemas with stricter constraints. Adds a new multiscale_coordinateTransformations definition to support scale and translate transformations for multiscale datasets. * Update to NGFF 0.6dev2 and refactor coordinate systems Updated example and test JSON files to use the NGFF 0.6dev2 specification. Replaced 'axes' with 'coordinateSystems', added explicit 'input' and 'output' fields to coordinateTransformations, and restructured transformation chains for clarity and compliance with the new spec. * fix schema resolution
Co-authored-by: Will Moore <900055+will-moore@users.noreply.github.com> Co-authored-by: David Stansby <d.stansby@ucl.ac.uk> Co-authored-by: Davis Bennett <davis.v.bennett@gmail.com>
Also minor refactor test_validation
Automated Review URLs |
Closed
Owner
|
Hi @clbarnes, before I proceed with changing the ngff-spec repo structure, I think it would be wise to first get your changes here in board. I'm fairly certain you should be able to resolve the merge blockers by simply choosing your incoming changes over the current code everywhere. I already got going on restructuring the repo (ome#35) but that shouldn't go in before this here is done :) |
This was referenced Dec 15, 2025
replaced `0.6dev2` by `0.6.dev2`
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes ome#37
Supercedes ome#26
Example usage:
This will iterate over all attributes tests (concurrently) and, with the test path $TEST_PATH, calls
path/to/my/dingus --dingus-arg $TEST_PATH.The dingus is expected to read the test from the given path and return
{"valid": true}if it believes the test data is valid (falseif not; optionally"message": strwith more details). Prints out a TSV of all test names and their statuspass/fail/error.In "attributes" mode, $TEST_PATH is a path to a JSON file containing the Zarr attributes object (i.e.
{"ome": {...}}). In "zarr" mode, $TEST_PATH is a path to directory representing the root of a zarr container (i.e. containing azarr.json).Test cases are not guaranteed to be correct for the moment.
I recommend ignoring most of the diff (mainly just moving around JSON files); look at
ome_zarr_conformance.pyand the changes in theschemas/directory.