v0.14.0
·
699 commits
to master
since this release
Major changes were made to the organization of this repo, with the library backhand now being separated from
the backhand-cli package, which is used to install unsquashfs, replace, and add.
backhand
Changes
- Following changes were done to allow multi-threaded applications (#278)
- Change
RefCell<Box<T>>intoArc<Mutex<T>> - Change
RefCell<T>intoMutex<T> - Change
Rc<T>intoArc<T> - Change
dyn CompressionActiontodyn CompressionAction + Send + SyncforKinduses - Change
BufReadSeek: BufRead + Seek {}toBufReadSeek: BufRead + Seek + Send {}
- Change
- Allow user provided read/write files to not be static (@rbran) (#285)
- Bump MSRV to
1.67.1 - Allow creating and reading uncompressed files (@rbran) (#365)
- Allow calling
FilesystemWriter::writewith Owned and RefMut writer (@rbran) (#361) - Push dir, file, etc, with lifetimes unrelated to reader from
from_fs_reader(@rbran) (#361)
For example, the following is now allowed:
- let mut output = File::create(&args.out).unwrap();
- if let Err(e) = filesystem.write(&mut output) {
+ let output = File::create(&args.out).unwrap();
+ if let Err(e) = filesystem.write(output) {Bug Fix
- When creating an empty image using
FilesystemWriter::default(), correctly create the ID table for UID and GID entries. Reported: (@hwittenborn) (!250), Fixed: (#275) - Remove manual
Cloneimpl forFilesystemReaderFile(#277) - Increase
DirectoryIndex::name_sizelength from 100 to 255. (@eatradish) (!282), Fixed: (#283) - Prevent
push_file"file within file", will now returnInvalidFilePath(@rbran) (#364) - Fix
gidanduidforpush_dir_all(..)(#360)
Security
backhand-cli
Changes to All
stripandLTOare enabled for release binaries- Fix macOS builds (#260)
- Bump MSRV to
1.73.0to use now stabilizedstd::os::unix::fs::lchown - Add color styling to help output (#387)
unsquashfs
- Changed name to
unsquashfs-backhand(#356) - Add progress bar for a cleaner output when extracting files (#272)
- Add
--quietfor not displaying progress bar and RUST_LOG output (#272) - Add multiple threads for extracing files, giving us the same performance in most cases as
squashfs-tools/unsquashfs! (#278)
add
- Changed name to
add-backhand(#356)
replace
- Changed name to
replace-backhand(#356)
ci
- Add testing and release binaries for the following platforms:(#259)
aarch64-unknown-linux-muslarm-unknown-linux-musleabix86_64-unknown-linux-musl(previously already release supported)
- Testing and release binaries were not added for macOS, support was tested on that platform.
testing
- Replace curl in test dependency
test-assetswith ureq (#264) - Replace
zune-inflatewithlibdeflaterfor custom decompression testing for reliability (#325)
Dependencies
- Bump
flate2from 1.0.26 to 1.0.28 (#307) - Bump
jemallocatorfrom 0.5.0 to 0.5.4 (#305) - Bump
env_loggerfrom 0.10.0 to 0.10.1 (#341) - Bump
clapfrom 4.4.7 to 4.4.12 (#340, #371, #376, #399) - Bump
dangoslen/dependabot-changelog-helperfrom 3.5.0 to 3.7.0 (#342, #369) - Bump
tracing-subscriberfrom 0.3.17 to 0.3.18 (#347) - Bump
byte-unitfrom 4.0.19 to 5.0.3 (#367) - Bump
actions/labelerfrom 4 to 5 (#377) - Bump
test-logfrom 0.2.13 to 0.2.14 (#378) - Bump
clap_completefrom 4.4.4 to 4.4.5 (#393) - Bump
thiserrorfrom 1.0.51 to 1.0.53 (#391, #401) - Bump
actions/upload-artifactfrom 3.1.3 to 4.0.0 (#380) - Bump
tempfilefrom 3.8.1 to 3.9.0 (#398) - Bump
document-featuresfrom 0.2.7 to 0.2.8 (#400)