Skip to content

v0.13.0

Compare
Choose a tag to compare
@github-actions github-actions released this 19 Jun 02:49
· 830 commits to master since this release
96c8372

backhand

Changes

  • Decrease in memory usage for file reader and write (#255)
  • Remove unnecessary deconstruction/reconstruction of Vec when reading inodes (@rbran) (#251)
  • Only store file data compressed if it results in smaller size (@rbran) (#250)
  • Remove lzo being a default feature because of GPL license (#240)
  • Add support for OpenWRT compression options (#239)
  • Bump MSRV to 1.65.0 for latest clap requirements (#253)

Bug Fix

  • Fix bug in generating Uid and Gid's with FilesystemWriter. All internal representation of Gid and Uid are changed to u32 (#254)
  • Remove case where invalid filesystem root_inode_offset would cause invalid bounds read panic. Found by fuzzer (#245)

Complete API Updates

$ cargo public-api -ss diff v0.12.0..HEAD
Click to expand
Removed items from the public API
=================================
(none)

Changed items in the public API
===============================
-pub fn backhand::FilesystemWriter<'a>::set_root_gid(&mut self, gid: u16)
+pub fn backhand::FilesystemWriter<'a>::set_root_gid(&mut self, gid: u32)
-pub fn backhand::FilesystemWriter<'a>::set_root_uid(&mut self, uid: u16)
+pub fn backhand::FilesystemWriter<'a>::set_root_uid(&mut self, uid: u32)
-pub backhand::NodeHeader::gid: u16
+pub backhand::NodeHeader::gid: u32
-pub backhand::NodeHeader::uid: u16
+pub backhand::NodeHeader::uid: u32
-pub fn backhand::NodeHeader::new(permissions: u16, uid: u16, gid: u16, mtime: u32) -> Self
+pub fn backhand::NodeHeader::new(permissions: u16, uid: u32, gid: u32, mtime: u32) -> Self

Added items to the public API
=============================
+pub backhand::compression::Xz::bit_opts: core::option::Option<u16>
+pub backhand::compression::Xz::fb: core::option::Option<u16>
+pub fn backhand::kind::Kind::magic(&self) -> [u8; 4]
+impl backhand::NodeHeader
+pub fn backhand::NodeHeader::from_inode(inode_header: InodeHeader, id_table: &[backhand::Id]) -> Self

All binaries

Changes

  • jemalloc is now used for -musl release targets for performance reasons (#254)
  • HAVE_DECODER_ARM, HAVE_DECODER_ARM64, and HAVE_DECODER_ARMTHUMB filter flags are now defined for xz2. This only effects static build created in our CI. (#254)
  • Add RUST_LOG and available Decompressors to --help of all binaries (#242)

add

Changes

  • Add --dir to create a empty directory (#242)

Bug Fix

  • Add correctly reading new file metadata from --file, force other arguments for --dir (#254)

unsquashfs

Changes

  • Add --auto-offset for automatic finding of initial SquashFS offset in image (#241)
  • Add possible kind values to --help output (#236)
  • Add --path-filter to limit file extraction to a path (#237)