Release Notes
Added
-
slpc::Destination, behind the new fs feature, which writes a container
to a path: through a temporary file beside it, with the permissions a file
there should have, renamed into place at the end. The reading side has taken a
path since 0.1.0 through Container::open and the writing side never had the
equivalent, so every caller putting a container on disk supplied that half
itself. Off by default, so a caller writing into a socket or a buffer does not
acquire a temporary-file dependency and the library's default tree stays at
fifteen crates.
slipcase now writes through it rather than through its own copy. No change
to what the tool does: same permissions, same atomicity, same messages.
-
Container::payload_size, the payload's uncompressed length, read off the
central directory without decompressing anything. Refuses the way
Container::payload does for a container declaring a version this build does
not implement, since the payload was never located.
-
slpc::metadata_of, the metadata document of a byte stream with no
conformance question attached. A container whose payload.file names no
member — or names several, or names something SPEC 2.3 forbids, or which is
missing a required key — has a metadata document that parsed cleanly, and
Container::read returns an error over the payload before a caller can reach
it. This returns the document. It is not a verdict: validate remains the
only function that answers the question SPEC 3 constrains.
Install slipcase 0.3.1
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/excelano/slpc-rust/releases/download/v0.3.1/slipcase-installer.sh | sh
Install prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://github.com/excelano/slpc-rust/releases/download/v0.3.1/slipcase-installer.ps1 | iex"
Install prebuilt binaries via Homebrew
brew install excelano/tap/slipcase
Download slipcase 0.3.1