Changelog History
Page 1
-
v10.4.2 Changes
March 10, 2026 -
v10.4.1 Changes
March 08, 2026🚀 This is just a re-release of 10.4.0 due to an issue with the 10.4.0 release.
-
v10.4.0 Changes
March 07, 2026🔋 Features
- ➕ Add
--ignore-containoption to ignore directories containing a named entry (e.g. to ignoreCACHEDIR.TAG); see #1727 (@fischman).
🛠 Bugfixes
🛠 Fix Windows hyperlink generation for paths with spaces. (#1872)
🖨
--print0combined with--execwill now print a\0between the output of each entry. Note that if there are multiple instances
of--exec, the\0will be between each set of commands, not between each individual command run. Fixes #1797.⚡️ Several bugs were fixed by an update to the
ignorelibrary used for handling ignore rules
🔄 Changes
- ➕ Add
-
v10.3.0 Changes
August 26, 2025🔋 Features
- ➕ Add a hidden
--mindepthalias for--min-depth. (#1617)
🛠 Bugfixes
🔄 Changes
👀 Replace
humantimecrate andchronocrate withjiffcrate, see #1690 (@sorairolake). This has some small changes to the
way dates given to options such--changed-withinand--changed-beforeincluding:- 'M' no longer means "month", as that could be confusing with minutes. Use "mo", "mos", "month" or "months" instead.
- month and year now account for variability in the calander rather than being a hard-coded number of seconds. That is probably
what you would expect, but it is a slight change in behavior.
🚀 aarch64 Windows was added to CI and release artifacts
⚡️ Many dependencies were updated
👍 Better support building on Illumos (there is no automated testing, but some known issues were fixed)
Other
🚀 This will be the last release that has been tested on x86_64 Mac OS, since GitHub is
⬇️ dropping support for runners with that hardware.🚀 It may also be the last release to use a version of Rust with tier-1 support for
🏁 x86_64/intel Macs and Windows 7. - ➕ Add a hidden
-
v10.2.0 Changes
August 23, 2024🔋 Features
- ➕ Add --hyperlink option to add OSC 8 hyperlinks to output
🔄 Changes
- 🚀 Build windows releases with rust 1.77 so windows 7 is still supported
- 📦 Deb packages now include symlink for fdfind to be more consistent with official packages
🆕 New Contributors
- @bryanhonof made their first contribution in #1574
- @JCHacking made their first contribution in #1602
- @RossSmyth made their first contribution in #1596
Full Changelog : v10.1.0...v10.2.0
-
v10.1.0 Changes
May 08, 2024🔋 Features
- 👍 Allow passing an optional argument to
--strip-cwd-prefixof "always", "never", or "auto". to force whether the cwd prefix is stripped or not. - ➕ Add a
--formatoption which allows using a format template for direct ouput similar to the template used for--exec. (#1043)
🛠 Bugfixes
- 🛠 Fix aarch64 page size again. This time it should actually work. (#1085, #1549) (@tavianator)
Other
- 🚀 aarch64-apple-darwin target added to builds on the release page. Note that this is a tier 2 rust target.
- 👍 Allow passing an optional argument to
-
v10.0.0 Changes
May 06, 2024🔋 Features
- ➕ Add
diras an alias todirectorywhen using-t\--type, see #1460 and #1464 (@Ato2207). - ➕ Add support for @%s date format in time filters similar to GNU date (seconds since Unix epoch for --older/--newer), see #1493 (@nabellows)
- 💥 Breaking: No longer automatically ignore
.gitwhen using--hiddenwith vcs ignore enabled. This reverts the change in v9.0.0. While this feature
was often useful, it also broke some existing workflows, and there wasn't a good way to opt out of it. And there isn't really a good way for us to add
a way to opt out of it. And you can easily get similar behavior by adding.git/to your global fdignore file.
👀 See #1457.
🛠 Bugfixes
- Respect NO_COLOR environment variable with
--list-detailsoption. (#1455) - 🛠 Fix bug that would cause hidden files to be included despite gitignore rules
if search path is "." (#1461, BurntSushi/ripgrep#2711). - 🏗 aarch64 builds now use 64k page sizes with jemalloc. This fixes issues on some systems, such as ARM Macs that
have a larger system page size than the system that the binary was built on. (#1547) - ➕ Address CVE-2024-24576, by increasing minimum rust version.
🔄 Changes
- 👍 Minimum supported rust version is now 1.77.2
- ➕ Add
-
v9.0.0 Changes
December 19, 2023🐎 Performance
This release is all about performance, which has been significantly improved, both due to optimizations in the underlying
ignorecrate (#1429 by @tavianator), and infditself (#1422, #1408, #1362 by @tavianator). Benchmark results show gains of 6-8x for full traversals of smaller directories (100k files) and up to 13x for larger directories (1M files).0️⃣ The default number of threads is now constrained to be at most 64. This should improve startup time on systems with many CPU cores. (#1203, #1410, #1412, #1431) - @tmccombs and @tavianator
🆕 New flushing behavior when writing output to stdout, providing better performance for TTY and non-TTY use cases, see #1452 and #1313 (@tavianator).
🔋 Features
- 👌 Support character and block device file types, see #1213 and #1336 (@cgzones)
- 💥 Breaking:
.git/is now ignored by default when using--hidden/-H, use--no-ignore/-Ior--no-ignore-vcsto override, see #1387 and #1396 (@skoriop)
🛠 Bugfixes
- 🛠 Fix
NO_COLORsupport, see #1421 (@acuteenvy)
Other
- 🛠 Fixed documentation typos, see #1409 (@marcospb19)
Thanks
🐎 Special thanks to @tavianator for his incredible work on performance in the
ignorecrate andfditself. -
v8.7.1 Changes
October 21, 2023🛠 Bugfixes
-1properly conflicts with the exec family of options.--max-resultsoverrides-1--quietproperly conflicts with the exec family of options. This used to be the case, but broke during the switch to clap-derive- ⚡️
--changed-withinnow accepts a space as well as a "T" as the separator between date and time (due to update of chrono dependency)
Other
- ⚡️ Many dependencies were updated
- 📚 Some documentation was updated and fixed
-
v8.7.0 Changes
February 24, 2023🔋 Features
🛠 Bugfixes
- 🛠 Fix logic for when to use global ignore file. There was a bug where the only case where the
global ignore file wasn't processed was if--no-ignorewas passed, but neither--unrestricted
👀 nor--no-global-ignore-fileis passed. See #1209
- 🛠 Fix logic for when to use global ignore file. There was a bug where the only case where the