Skip to content

Releases: CalebQ42/squashfs

ReaderAtOffset

22 Dec 08:02
Compare
Choose a tag to compare
ReaderAtOffset Pre-release
Pre-release
  • Added ReaderAtOffset which reads a squashfs archive from io.ReaderAt at a given offset.

Slight FUSE improvements

17 Dec 23:07
Compare
Choose a tag to compare
Pre-release
  • squashfs.Mount now serves the mount on a seperate goroutine and has comments.

FUSE

03 Dec 08:54
56fdba2
Compare
Choose a tag to compare
FUSE Pre-release
Pre-release
  • Added the ability to FUSE mount an archive (using fuse3)
    • Use Reader.Mount
  • Added File.ReadAt
    • Still needs to be tested, but I want to get FUSE released.
  • Added FS.OpenFile which returns a *squashfs.File instead of an fs.File

Clean before validating path

24 Oct 08:20
Compare
Choose a tag to compare
Pre-release

Paths passed to squashfs.FS are now cleaned before they are validated. This is to fix an issue I found where a valid symlink was being rejected due to the path starting with ./

Fragments work properly

26 Aug 17:15
Compare
Choose a tag to compare
Pre-release

Fixed a couple issues with fragments. Particularly:

  • If you had more then 512 fragments then it would start using ID table numbers (oops) (thanks @tri-adam)
  • Some fragments would not be read from deep enough into the fragment

Additional Fixes:

  • FS.ReadDir, FS.Glob, and FS.Stat would throw type assertion errors. (Again, thanks @tri-adam)

What's Changed

Full Changelog: v0.6.0...v0.6.1

Mainly just some code work

26 Aug 10:42
Compare
Choose a tag to compare
Pre-release

Ideally this release does basically nothing, it's just a large re-write of many parts of the code to make it more maintainable and understandable. This does fix one bug (#15 and #14) relating to how fragments are read and processed.

There are some breaking changes.

  • NewSquashfsReader and NewSquashfsReaderFromReader have been renamed to NewReader and NewReaderFromReader.
    • This better matches other libraries.
  • Reader.Init() was removed. This was never meant to be exported and shouldn't have been used.
  • FileInfo and DirEntry is not longer exported. They were identical in functionality to fs.FileInfo and fs.DirEntry so it felt unnecessary to export them as separate structs.

This release should be good, but due to the large amount of changes (and the fact I apparently finished it a month ago, then go COVID and completely forgot about it) I recommend caution when upgrading to it.

Handle paths with special characters

22 Apr 09:30
0a2ced9
Compare
Choose a tag to compare
Pre-release

Changed Open, ReadDir, Stat, and Sub to only accept exact matches. Allowing wildcards by using path.Match causes issues in certain circumstances. You can use fs.Glob if you need to use wildcards, and I'll probably implement fs.GlobFS at some point in the near (ish) future.

What's Changed

  • fix: handle paths with special characters by @tri-adam in #11

New Contributors

Full Changelog: v0.5.3...v0.5.4

Added "." directory support.

02 Dec 15:10
89f28ce
Compare
Choose a tag to compare
Pre-release

Added support for "." as a directory thanks to @stffabi

Fixed io.Reader support

27 Sep 06:29
Compare
Choose a tag to compare
Pre-release

Fixed some issues I was having with io.Readers and squashfs archives

io.Reader support

26 Sep 23:32
Compare
Choose a tag to compare
io.Reader support Pre-release
Pre-release

You can now use an io.Reader to create a squashfs.Reader. This is not recommended, especially for large archives since almost all of the archive WILL end up cached in memory.