Skip to content

vfs-zip: Virtual FileSystem abstractions for ZIP files

License

Unknown and 2 other licenses found

Licenses found

Unknown
LICENSE.md
Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT
Notifications You must be signed in to change notification settings

MaulingMonkey/vfs-zip

vfs-zip: Virtual FileSystem abstractions for ZIP files

GitHub crates.io docs.rs %23![forbid(unsafe_code)] rust: 1.34.0+ License Build Status

Currently this just bridges vfs and zip. Alternate VFS abstractions may be added in the future. Caveats:

  1. vfs 0.4 lacks async interfaces, making it useless for browser targets.
  2. zip isn't amenable to re-entrant access. This leads to Mutex spam, and forces open_file to copy/read the whole file up front.

Features

Feature Description
default
vfs04 vfs = "0.4.x" interop
zip-deflate "zip/deflate" (de)compression support
zip-bzip2 "zip/bzip2" (de)compression support
(opt-in)
zip-time "zip/time" write timestamps when creating zip archives

Unsafe Code

Crate uses #![forbid(unsafe_code)]. However, indirect dependencies do contain some unsafe - including, but perhaps not limited to:

crate version
bzip2 0.3.3
crc32fast 1.2.0
flat2 1.0.14
syn 1.0.39
time 0.1.44
winapi 0.3.9

MSRV (Minimum Supported Rust Version)

Currently 1.34.0...ish.

  • zip 0.5.6 has a MSRV of 1.34.0. However, zip's MSRV policy allows 0.5.7 to bump this, and vfs-zip does not pin zip to this version.
  • vfs 0.4.0 has a MSRV of 1.32.0. However, it has no clear policy for when MSRV can be bumped.
  • Not all indirect dependencies have MSRV policies. For example, I've already pinned flate2 to "<1.0.16" since "1.0.16" broke 1.34.0 with "extern crate alloc;"

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

About

vfs-zip: Virtual FileSystem abstractions for ZIP files

Resources

License

Unknown and 2 other licenses found

Licenses found

Unknown
LICENSE.md
Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT

Stars

Watchers

Forks

Packages

No packages published

Languages