Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for HCS 0.4 specification #159

Merged
merged 14 commits into from
Jan 19, 2022
Merged

Add support for HCS 0.4 specification #159

merged 14 commits into from
Jan 19, 2022

Conversation

sbesson
Copy link
Member

@sbesson sbesson commented Jan 18, 2022

Implements the specification changes proposed in ome/ngff#24

  • rows and columns must have unique names and be alphanumerical
  • wells elements must include path (composed of exactly 2 groups), rowIndex and colIndex

As discussed in #157, the internal logic is adjusted to support the simple case of passing wells as list of strings and compute the row/column indices assuming the paths match the rows and columns lists.

Unit tests are updated to cover both the new and the legacy behavior as well as various invalid cases. The reader is not adjusted to consume the new logic. I would propose to complete the work on #148 first.

- rowIndex/colIndex are now mandatory keys of the well element
- add validation logic in the format API
- add logic for generating row/column index if wells are passed as strings
@codecov
Copy link

codecov bot commented Jan 18, 2022

Codecov Report

Merging #159 (c516339) into master (13b8428) will increase coverage by 0.71%.
The diff coverage is 100.00%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master     #159      +/-   ##
==========================================
+ Coverage   82.11%   82.82%   +0.71%     
==========================================
  Files          12       12              
  Lines        1269     1304      +35     
==========================================
+ Hits         1042     1080      +38     
+ Misses        227      224       -3     
Impacted Files Coverage Δ
ome_zarr/format.py 98.23% <100.00%> (+4.25%) ⬆️
ome_zarr/writer.py 97.82% <100.00%> (+0.08%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 13b8428...c516339. Read the comment docs.

ome_zarr/format.py Outdated Show resolved Hide resolved
ome_zarr/format.py Outdated Show resolved Hide resolved
ome_zarr/writer.py Outdated Show resolved Hide resolved
@sbesson sbesson closed this Jan 18, 2022
@sbesson sbesson reopened this Jan 18, 2022
@sbesson
Copy link
Member Author

sbesson commented Jan 18, 2022

The last commits add extra validation checks ensuring the consistency of the well path against rows, columns, rowIndex and columnIndex.

@will-moore
Copy link
Member

Looks good, thanks.

@will-moore
Copy link
Member

will-moore commented Jan 19, 2022

@sbesson - I've started using write_plate_metadata() in ome/omero-cli-zarr@cc44688

tests/test_writer.py Outdated Show resolved Hide resolved
Copy link
Member

@jburel jburel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thanks for adding new tests

@sbesson sbesson merged commit 804dccf into ome:master Jan 19, 2022
@sbesson sbesson deleted the hcs_0.4 branch January 19, 2022 15:49
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.

3 participants