NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
Go modules
Last release 1 months ago
12 Aug 2026
Release timing varies
gaps range from 2 weeks to 9 months
Some releases are documented
notes for 7 of 14 stable releases
1 version withdrawn
withdrawn after publishing
5 years old
51 releases · first in 2022
One column per quarter.
Nothing published for this version
Nothing published for this version
Nothing published for this version
internal/dirent: fix tests on s390x: #65
v1.0.14
This release actually fixes the internal/dirent/readInt tests on s390x. Release v1.0.13 was meant to fix the tests but introduced a new test failure (which I didn't catch due to not having access to a s390x box).
NB: The only change here is the test.
internal/dirent: use binary.NativeEndian for parsing ints: #63
Nothing published for this version
Nothing published for this version
This release adds two new features that make replicating the --max-depth option of CLI tools like rg and fd simpler. The first is that the fastwalk.Di
v1.0.11
This release adds two new features that make replicating the --max-depth option of CLI tools like rg and fd simpler. The first is that the fastwalk.DirEntry interface now has a Depth() method which returns the depth of the entry relative to the root being walked (this is useful when manually controlling traversal depth). The second is the new fastwalk.Config.MaxDepth field which will automatically limit traversal depth. Additionally, both features are compatible with symlinks.
commit 5623863
Author: Charlie Vieth charlie.vieth@gmail.com
Date: Wed May 14 19:21:30 2025 -0400
fastwalk. Add Config.MaxDepth field to limit traversal depth
This commit adds the Config.MaxDepth field which limits the depth of
directory traversal to MaxDepth levels beyond the root directory being
walked. By default, there is no limit on the search depth and a value of
zero or less disables this feature.
commit 3d5486c
Author: Charlie Vieth charlie.vieth@gmail.com
Date: Wed May 7 19:45:15 2025 -0400
fastwalk: add new DirEntry.Depth method
The new DirEntry Depth method returns the depth at which the entry was
generated relative to the root being walked. This is useful for programs
that wish to limit traversal depth.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
This release fixes an issue on Windows that occured when the root argument to Walk was a disk root ( C:\ ). Instead of walking the disk root C:\ (or a
v1.0.9
This release fixes an issue on Windows that occured when the root argument to Walk was a disk root (C:\). Instead of walking the disk root C:\ (or any other root) it walked the current directory. This occurred because we were transforming fully qualified path C:\ to the relative path C: which caused the current directory to be walked.
commit aa71a4c
Author: Charlie Vieth charlie.vieth@gmail.com
Date: Fri Oct 25 10:10:04 2024 -0400
fastwalk: don't clean the path argument to Walk on Windows
On Windows don't attempt to clean the path argument to Walk since the
existing clean logic (cleanRootPath) transforms paths like "C:\" => "C:"
which are not equivalent.
This logic only existed to make the joining of paths simpler and should
probably be removed since we shouldn't be modifying user provided paths.
TODO: Investigate if anything relies on the current clean logic and
remove it if nothing does.
Fixes: https://github.com/charlievieth/fastwalk/issues/37
Nothing published for this version
Nothing published for this version
Nothing published for this version
commit 1fb2d4d Author: Charlie Vieth charlie.vieth@gmail.com Date: Thu Jul 18 10:00:29 2024 -0400
v1.0.8
commit 1fb2d4d
Author: Charlie Vieth charlie.vieth@gmail.com
Date: Thu Jul 18 10:00:29 2024 -0400
fix go 1.20 build and retract v1.0.7
This commit fixes the build for Go 1.20 by removing use of the slices
package and retracts the v1.0.7 release.
It also changes the CI to test go1.20 (our minimum supported version)
so that this will not happen again in the future.
Nothing published for this version
This release changes the detection for ToSlash on Windows to only check is the "MSYSTEM" environment variable is set and removes the detection for Win
v1.0.7
This release changes the detection for ToSlash on Windows to only check is the "MSYSTEM" environment variable is set and removes the detection for Windows Subsystem on Linux (WSL) since it was unreliable (additionally tools like fd do not attempt to detect if running under WSL).
It also adds a new feature: the ability to sort directory entries before being processed. This does not make the order that directories and files are visited globally deterministic, but it does significantly improve the output Walk and is useful for tools that print said output.
commit 861d712
Author: Charlie Vieth charlie.vieth@gmail.com
Date: Thu Jul 11 00:39:35 2024 -0400
fastwalk: add optional sorting and improve documentation
This commit adds the new SortMode and Config.Sort setting to sort
a directory's entries before they are processed. This does not make
the global order that directories and entries are visited
non-deterministic but it does help make the output a bit saner compared
to the default directory order. This was added to make the output of FZF
a bit nicer.
This commit also improves documentation and comments of exported
functions.
commit 875daa3
Author: Charlie Vieth charlie.vieth@gmail.com
Date: Tue Jul 16 12:50:55 2024 -0400
fastwalk: only check if MSYSTEM is set during MSYS/MSYS2
This changes the MSYS/MSYS2 detection to only check if the MSYSTEM
environment variable is set instead of asserting on its value. This
is to support other MSYS environments like UCRT64.
It also removes the check for Windows Subsystem for Linux (WSL) since
it was unreliable and required us to stat and potentially read a file
on initialization (which is bad).
See:
* https://github.com/charlievieth/fastwalk/commit/87029d9318159fb714bd064bbda22d69a11fa9f2#r144282929
* https://github.com/sharkdp/fd/commit/f875ea9a5
commit 87029d9
Author: Charlie Vieth charlie.vieth@gmail.com
Date: Wed Jul 3 14:59:17 2024 -0400
fastwalk: add MSYS/MSYS2 detection to DefaultToSlash
This change updates DefaultToSlash to also check if we're running in a
MSYS/MSYS2 enviroment since they also use forward slashes.
Nothing published for this version
commit 3ec5a9e Author: Charlie Vieth charlie.vieth@gmail.com Date: Wed Jul 3 02:58:43 2024 -0400
v1.0.6
commit 3ec5a9e
Author: Charlie Vieth charlie.vieth@gmail.com
Date: Wed Jul 3 02:58:43 2024 -0400
fastwalk: remove use of go1.21 features
fastwalk: remove use of go1.21 features to fix fzf build
commit 0446dfe Author: Charlie Vieth charlie.vieth@gmail.com Date: Wed Jul 3 01:21:34 2024 -0400
v1.0.5
commit 0446dfe
Author: Charlie Vieth charlie.vieth@gmail.com
Date: Wed Jul 3 01:21:34 2024 -0400
fastwalk: add ToSlash option for enforcing forward-slash paths
This commit adds the Config.ToSlash option which forces paths to be
joined with a forward-slash instead of the default OS path separator.
This mostly applies to Go binaries that are compiled for Windows but
run under the Windows Subsystem for Linux (WSL) so this commit also
adds a helper function DefaultToSlash which detects if we're a Windows
exe running in WSL.
commit 22a282e (master)
Author: Charlie Vieth charlie.vieth@gmail.com
Date: Tue Jul 2 15:00:22 2024 -0400
mod: update go version to 1.20
commit d4d0d43
Author: Charlie Vieth charlie.vieth@gmail.com
Date: Sat Jun 29 15:36:06 2024 -0400
dirent: handle nil DirEntry in StatDirEntry
commit ca81468
Author: Charlie Vieth charlie.vieth@gmail.com
Date: Tue Jul 2 14:22:14 2024 -0400
gh: test on macos arm64
commit b2d5e56
Author: Charlie Vieth charlie.vieth@gmail.com
Date: Tue Jul 2 14:12:03 2024 -0400
darwin: cleanup syscall code and use a fixed buffer for opendir
Remove unused syscall code and use a fixed buffer for opendir which
saves us an alloc.
commit e515b65
Author: Charlie Vieth charlie.vieth@gmail.com
Date: Sat Jun 22 01:10:08 2024 -0400
darwin: replace getdirentries64 with readdir_r
The performance benefit of getdirentries64 was negligible to
non-existent and added a huge support burden code wise.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →