-
Notifications
You must be signed in to change notification settings - Fork 15
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
Support for variable length string arrays #16
Merged
Merged
Conversation
This file contains 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
TODO: * Write works but doesn't write number of serialized bytes. Hence, read does not allocate correct number of bytes. * Filter is non-functional at the moment. Adapt this such that it writes the correct json data (as seen in Anndata).
In this version reading and writing arrays to/from Python works (tested manually)
This was referenced Mar 11, 2023
Without this, the data gets read incompletely
To run and debug in intellij: add PATH and CONDA_PREFIX env variables to run setting
DType is constructed by a typestring and a collection of filters. In particular, it's not directly de-serialized anymore.
Thanks to @axtimwalde, reading and writing string arrays works and is compatible with Python. The current solution does not read every For me, this would be good to go now. |
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.
This is the zarr implementation of the corresponding pull request in the N5 base repository. To compile, the .jar files from the issue in the base repository are needed.
The main points are:
VLenStringDataBlock
was added to encapsulate that logic.DataBlock
s, which must know the number of (decompressed) bytes in advance, some workaround was necessary to make this work with all compression schemes that are currently implemented in the tests.filter
interface was fleshed out a bit, but not used in the actual (de-)serialization because that would have required more changes.For full disclosure: the last commit changes the public API by fixing a typo. I can force-push away this one if requested as it's technically unrelated to the issue.