Repository navigation
merge-backend: zipped output ends as the archive, other rows are an error; version 0.9.1 - #38
Merged
Merged
Conversation
…rror; version 0.9.1
- `-o m` (zip on by default) left the working m.zarr and never made the
m.zarr.zip it promised: finalize took the bare output, not the resolved
one. It now finalizes to the .zarr.zip, as merge-mtx does.
- An output that is one of the inputs (`-o pbmc` beside pbmc.zarr.zip, or
`-o a --no-zip` beside a.zarr) is refused before anything is cleared:
the output is deleted before the inputs are read and zipped over its
name after.
- Backends whose row names differ hit an `assert_eq!` panic that printed
every name; they are now refused with an error naming the two files,
before anything is written. The first file is the reference even when
it has no rows.
- The batch labels go to `{output}.batch.gz` with the output's backend
suffix stripped (`-o m.zarr.zip` wrote m.zarr.zip.batch.gz), in
merge-backend, merge-mtx and squeeze's merge alike: the three share
the end of a merge, labelling the columns and finalizing, in one place,
from the resolved output only. A column with no known batch takes the
output's whole name (`sample.v2`), no longer cut at its last dot.
- merge-mtx writes the backend the output's name resolves to (an .h5
name, or the zarr fallback when hdf5 is not built), not the flag's.
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.
Bug fixes to
merge-backend, split out of the MCP work so they can ship now.-o m(zip is on by default) left the workingm.zarrand never made them.zarr.zipthe help promises: finalize took the bare output instead of the resolved one.-o pbmcbesidepbmc.zarr.zip, or-o a --no-zipbesidea.zarr, is now refused before anything is cleared. The output is deleted before the inputs are read and zipped over afterwards, so the first fix would otherwise overwrite the input.assert_eq!panic that printed every name. They now get an error naming the two files, raised before anything is written. The first file is the reference even when it has no rows.{output}.batch.gzwith the backend suffix stripped;-o m.zarr.zipused to writem.zarr.zip.batch.gz. This applies the same way in merge-backend, merge-mtx and squeeze's merge, which now share the end-of-merge step in one place. A column with no known batch takes the output's whole name (sample.v2)..h5name, or the zarr fallback when hdf5 isn't built), not the one the flag names.Behaviour changes to note:
{output}.zarr.zip.batch.gzname explicitly will need to update..zarroutput:-o m.zarrwithout--no-zipnow ends asm.zarr.zip, like every other command.Tests: new regression tests for the archive, the batch labels, the refusals and mismatched rows.
cargo fmt,cargo clippy --all-targetsandcargo testare clean.Left for follow-ups, all pre-existing:
squeezerejects a bare-oprefix, and only after loading every input;find_aligned_rowscounts duplicate rows within one input as common;merge-backendwith a single input exits 0 and writes nothing;from_h5adpanics (assert_eq!) on short name arrays;zarr_io::prepare_output/finalize_output.