Skip to content

v0.6.0

Choose a tag to compare

@dkulyk dkulyk released this 03 Sep 13:56
· 54 commits to main since this release
89b380d

Added

  • Lazy streams for unchanged ZIP-backed parts, sharing one source archive whose container remains alive until the caller closes the last stream.
  • Deferred part paths using native zip:// URIs for unchanged entries and package-owned local materialization for staged content and path-only consumers.
  • Local path-based APIs for adding and replacing large parts without first loading their contents into PHP strings.
  • Same-process coordination of source archives before atomic replacement.

Changed

  • Source files are fully hashed once when opened and immediately before an in-place save; part reads use inexpensive filesystem metadata checks.
  • openStream() now returns a lazy ZIP stream for unchanged parts. Seekability is no longer guaranteed; use getLocalPath() when random access is required.
  • Source archives remain open for the package lifetime and are shared by its streams. Replacing a source is rejected while a relevant stream remains open.
  • Package opening and small-part reads no longer repeatedly hash the complete source package.

See the full changelog.