Releases: mojatter/wfs
Releases · mojatter/wfs
Release list
v0.5.1
Highlights
Bug fix: memfs directory enumeration and RemoveAll mishandled prefix-named siblings. A sibling such as dir0-tmp shares the string prefix dir0 and can sort between a directory key and its children (- (0x2d) sorts before / (0x2f)). The previous code matched on the bare string prefix, so enumeration could stop short and RemoveAll("dir0") could delete the unrelated dir0-tmp. This is the primary reason to upgrade.
Changes
Fixed
- memfs: match the full path segment (
dir0/) instead of the bare string prefix inReadDir, glob, andRemoveAll(#17)
Internal
- Modernize
interface{}→anyandb.N→b.Loop()(#18) - Harden memfs tests: avoid
reflect.DeepEqualon errors, use range-over-int in theSubconcurrency smoke test (#19, #20)
Upgrading
- wfs is a single module: run
go get github.com/mojatter/wfs@v0.5.1. - No public API changes and no behavior changes outside the memfs fix above — no migration needed.
Full Changelog
v0.5.0
[0.5.0]
A documentation, tooling, and compatibility release. No public API
changes; the code-level features (RenameFS, SyncWriterFile, the
memfs Sub mutex fix, the memfs store performance work) all shipped
in v0.4.1 and are now properly documented.
Added
- README sections covering capability layers, an
atomicWriteexample
built onRenameFS+SyncWriterFile, and the memfs limitations
callers should know about (Close-publishes-writes, Sync-is-a-noop,
file-only Rename) (#12). CHANGELOG.md, starting with this entry (#13).- CI: Go version matrix (
1.24,stable) so regressions against the
lowest supported toolchain are caught (#11). - CI:
go test -raceis now run on every PR (#15). - CI: aggregator job named
testsso the branch protection required
check stays stable across future matrix changes (#11 follow-up).
Changed
- Minimum Go version is now 1.24 (was 1.26) so projects on older
toolchains can consume wfs (#11).
Deprecated
osfs.NewOSFSis now documented as scheduled for removal in v0.6.0.
Useosfs.Newinstead (#14).
v0.4.1
What's Changed
- Add Rename and Sync capabilities for atomic writes by @mojatter in #6
- CI: add staticcheck and gosec, rename workflow to tests.yaml by @mojatter in #7
- memfs: Share mutex between parent and Sub-derived filesystems by @mojatter in #8
- memfs: Speed up store.put and removeAll by @mojatter in #9
- memfs: Document MemFile write/close/sync semantics by @mojatter in #10
Full Changelog: v0.4.0...v0.4.1
v0.4.0
v0.3.2
v0.3.1
v0.3.0
v0.2.0
v0.1.0
Full Changelog: https://github.com/jarxorg/fs2/commits/v0.1.0