Repository navigation
Conversation
Validate node names before writing Zarr v3 metadata.
Keep the branch diff focused by preserving repository line endings.
Reject reserved Zarr v3 node names before metadata writes.
Cover array, group, hierarchy, and v2 compatibility cases.
Document the reserved-node-name validation change.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #4551 +/- ##
=======================================
Coverage 94.71% 94.71%
=======================================
Files 94 94
Lines 13663 13672 +9
=======================================
+ Hits 12941 12950 +9
Misses 722 722
🚀 New features to boost your workflow:
|
Use the compatibility fix in mkdocstrings 1.0.8 so ReadTheDocs builds work with the current pymdownx.highlight API.
Use mkdocstrings 1.0.8, which handles the current pymdownx.highlight constructor API.
Use mkdocstrings 1.0.8, which handles the current pymdownx.highlight constructor API.
Preserve repository line endings after resolving the branch update.
Author
|
Update: I have now personally reviewed and understand every change in the diff, and can explain why each is correct. The AI assistance and validation disclosures above remain accurate. |
This branch has not been deployed
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.
Summary
Fixes #4453 by rejecting Zarr v3 node names that are reserved by the format: names beginning with
__, the exact namezarr.json, and names made only of periods. The validation runs before metadata is written, preventing hierarchies that cannot be discovered or reopened reliably. Zarr v2 behavior remains unchanged.For reviewers
The two
pyproject.tomlfiles now preserve LF line endings; the default diff shows the single dependency-pin change in each file.Please focus on the validation boundary across array creation, group creation, hierarchy creation, and metadata writes. The tests cover each reserved-name rule, nested paths, v2 compatibility, and the no-write-on-failure behavior.
Validation run locally:
pytest tests/test_group.py— 990 passed, 209 skippedpytest tests/test_metadata/test_io.py tests/test_api.py tests/test_array.py— 2942 passed, 765 skippedAI assistance was used to inspect the existing code path, draft the implementation and tests, and run the validation listed above. The PR author later stated in a follow-up comment that they personally reviewed and understood the final diff. The validation results above remain agent-executed.
Author attestation
TODO
docs/user-guide/*.mdchanges/