Repository navigation
fs-safe 0.8.2
Highlights: TAR/gzip extraction now shares one parser across native and fallback modes, improving compatibility with system-tar output while keeping admission and publication guarded.
- Reject reserved archive device names and ignored-space aliases on Windows while preserving ordinary POSIX members, and guard secret reads with the documented
device-pathrejection. Thanks @SebTardif. - Unify native and guarded JavaScript TAR admission on one Rust core, bundle its WASM build, and accept strict UTF-8/newline PAX paths without a runtime
tardependency; retain bounded framing, raw-field validation, and guarded publication. - Accept bounded all-zero gzip container padding from system-tar stdout after validated member trailers, and reject nonzero data hidden after padding on both native and guarded JavaScript TAR routes.
- Fix
replaceFileAtomic({ dirMode })rejecting a rawfs.statmode: directory modes are masked to permission bits (0o7777) before application and verification, matching chmod semantics; 0.8.0 regressed this input tolerance withdirectory final mode could not be verified. - Standardize malformed TAR mode fields on the native zero fallback while preserving ordinary octal, absent, zero, and safe GNU binary modes.
- Refresh the native binding build tool to
@napi-rs/cli3.9.0 and the test/coverage toolchain to Vitest 5.0.0. Thanks @dependabot.
Published packages
| Package | Registry tarball | Verified integrity | Provenance |
|---|---|---|---|
| @openclaw/fs-safe-linux-x64-gnu@0.8.2 | tgz | sha512-gNQzb79bvjkgs0aFkOW3Z2TNL/1ES+5lASLbYaKkxIBgYz97Tc5paG0yPo+DJnfXdzVHiCvRX2Y9aqvcKCMM8A== |
verified attestation |
| @openclaw/fs-safe-linux-x64-musl@0.8.2 | tgz | sha512-oRli+G9DOHNnudln56884nfGdMav0EVOYeKBxtrScb8oDSdmCmAyWV6sXPyXagKiUN5bzigBhOLRsIjI8RbHJA== |
verified attestation |
| @openclaw/fs-safe-linux-arm64-gnu@0.8.2 | tgz | sha512-yJtWUg+NTDb6lrZx5Py6Mu3RhqZgd7jo8Hs2L6XhTH2wTObffkf6dUWu3UVfr7AGRMsvlKMzLgPYWKiZfGvxXA== |
verified attestation |
| @openclaw/fs-safe-linux-arm64-musl@0.8.2 | tgz | sha512-dkkL//yTBU3CYI3d9Qfp09wr3DxC/b7S5f5V6N8WkU7cpJcHACwu4gxfmttqQOgLW/C/IuWqGjJlhF7N5jKR3A== |
verified attestation |
| @openclaw/fs-safe-darwin-x64@0.8.2 | tgz | sha512-mZLEjYR7IThJ1ftkOw7Gg+/iXvxnbBQKuBiM+Pch/n4MqwZmFA3iV9gxI/ib20bsA+3NVUjwaj7iI0O/4rAeAg== |
verified attestation |
| @openclaw/fs-safe-darwin-arm64@0.8.2 | tgz | sha512-YQvI/d86fiBK2otufZSYIylbNGzFtpW5caw2Nh8c+h14fVlCuOsbx0Tslf3bzEy6ClLM5SCfFhW1vb6dfI0BuA== |
verified attestation |
| @openclaw/fs-safe-win32-x64-msvc@0.8.2 | tgz | sha512-6EsIZa+K+DhcI73uDhUSS1PSZxRaCOfi0k15EVqm9rZVKqLjFUTSJVnSHsQvtllshFWpIHQDWGjks2UnL98+MQ== |
verified attestation |
| @openclaw/fs-safe@0.8.2 | tgz | sha512-XZ/5RCK45asJNLM+zvFW1lf/Jwjhxb3DdScWWe89rBKumFrcWuFn8R0xVZVzXUsIPchaNm5eoUJIFUN3Q1u36A== |
verified attestation |
Release proof: GitHub Actions run.