Skip to content

Releases: CalebQ42/squashfs

v1.4.0

07 Jun 08:29
Compare
Choose a tag to compare
  • Fixed a data race on file fragments, causing issues when extracting archives with a lot of files.
  • Re-wrote and tweaked the file extraction code to better use resources.
    • From my tests, you should see slightly low CPU usage and slightly higher memory usage, but with a slight performance increase. Importantly, performance seems to be more stable in general.
    • ExtractionOptions.SimultaneousFiles is depreciated and only ExtractionOptions.ExtractionRoutines is used.
  • Nearly everywhere that binary.Read was used has been removed in favor of manually reading and decoding the bytes for better performance due to removing runtime reflection.
  • squashfslow has has some slight API changes, mainly due to data.FullReader and data.Reader. I've formally decided that squashfslow's API is subject to change and added that to the squashfslow README.

What's Changed

Full Changelog: v1.3.0...v1.4.0

Full Access

25 May 19:06
ebbbc9e
Compare
Choose a tag to compare
  • Added OpenFile to get a *File instead of a fs.File
  • Added access to squashfslow values for File and FS
  • Re-use zstd & zlib decompressors.
    • I think the zstd implementation should be stable, but it took a while to get it working properly and I'm not sure exactly why it's working now 😛. I'll revert it if it ends up being unstable.
    • This should lower resource usage for zstd & zlib archives.

Performance!

10 Apr 16:31
3315675
Compare
Choose a tag to compare
  • Significantly improved performance in nearly every instance.
    • Up to 4x improvements when using zstd.
    • Only minor improvements for the Arch Linux airootfs (xz compression).
    • Still significantly slower then unsquashfs (see README for more details)

Build tags

17 Mar 11:54
Compare
Choose a tag to compare
  • Added the build tags no_gpl and no_obsolete to disable gpl libraries and obsolete compression type respectively.

What's Changed

Full Changelog: v1.0.6...v1.1.0

.Mode() fixes

12 Mar 05:13
Compare
Choose a tag to compare
  • Fixed missing file type flags when using .Mode(), most importantly for symlinks.

What's Changed

New Contributors

Full Changelog: v1.0.5...v1.0.6

Reader fix

04 Mar 10:36
Compare
Choose a tag to compare
  • Fixed issue caused by the data.Reader not emptying it's buffer on EOF causing it to replay the last block's data on subsequent Read calls (#32).

Fix stray println

10 Dec 22:12
e9fdd89
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v1.0.3...v1.0.4

Bug fix

26 Nov 23:14
Compare
Choose a tag to compare

Fixed issue with fragment, id, and indode reference table values on block borders reported by @willmurphyscode in #30.

Offset

21 Sep 01:14
Compare
Choose a tag to compare

Re-added NewReaderAtOffset

Improved performance

17 Jul 14:32
Compare
Choose a tag to compare

Improved extraction performance slightly by changing some pointers to normal values.