Skip to content

v0.1.4

Choose a tag to compare

@pkharchenko pkharchenko released this 03 Jul 13:47
· 87 commits to main since this release

Single-file .lstar.zarr.zip

A store can now be packaged as one file — a .lstar.zarr.zip, written with every entry STORED (no deflate) so its already-codec-compressed chunks stay byte-range-readable when hosted. Read and write on all four surfaces (Python, R, C++, JS) and the CLI.

  • Produce: lstar convert dir.lstar.zarr out.lstar.zarr.zip (repackage a directory store), lstar convert … --viewer out.lstar.zarr.zip (a single-file viewer store), or from a library — lstar.write(ds, "x.lstar.zarr.zip") (Python), lstar_write(ds, "x.lstar.zarr.zip") (R).
  • Read: lstar.read(...) / lstar_read(...) / lstar::read(...); in the browser, ZipStore.open(httpZipSource(url)) reads a hosted zip by HTTP Range — one request per chunk, no extraction.
  • Writers force STORED (regardless of a chunk compressor) and are ZIP64-aware; a DEFLATE-packed .lstar.zarr.zip is rejected on read with a clear message. The directory form stays the default working format. See docs/format.md §Packaging.

Cross-surface parity is enforced by the conformance suite (conformance/zip*.sh).