fd v8.3.0 Release Notes

  • ๐ŸŽ Performance improvements

    • ๐Ÿ‘€ Colorized output is now significantly faster, see #720 and #853 (@tavianator)
    • ๐ŸŽ Writing to stdout is now buffered if the output does not go to a TTY. This increases performance when the output of fd is piped to another program or to a file, see #885 (@tmccombs, original implementation by @sourlemon207)
    • ๐Ÿ“‡ File metadata is now cached between the different filters that require it (e.g. --owner, --size), reducing the number of stat syscalls when multiple filters are used; see #863 (@tavianator, original implementation by @alexmaco)

    ๐Ÿ”‹ Features

    • ๐Ÿ‘€ Don't buffer command output from --exec when using a single thread. See #522
    • โž• Add new -q, --quiet flag, see #303 (@Asha20)
    • โž• Add new --no-ignore-parent flag, see #787 (@will459)
    • โž• Add new --batch-size flag, see #410 (@devonhollowood)
    • โž• Add opposing command-line options, see #595 (@Asha20)
    • โž• Add support for more filesystem indicators in LS_COLORS, see https://github.com/sharkdp/lscolors/pull/35 (@tavianator)

    ๐Ÿ›  Bugfixes

    • ๐Ÿ‘€ Always show the ./ prefix for search results unless the output is a TTY or --strip-cwd-prefix is set, see #760 and #861 (@jcaplan)
    • ๐Ÿ‘€ Set default path separator to / in MSYS, see #537 and #730 (@aswild)
    • ๐Ÿ‘€ fd cannot search files under a RAM disk, see #752
    • ๐Ÿ fd doesn't show substituted drive on Windows, see #365
    • ๐Ÿ‘€ Properly handle write errors to devices that are full, see #737
    • ๐Ÿ‘€ Use local time zone for time functions (--change-newer-than, --change-older-than), see #631 (@jacobmischka)
    • ๐Ÿ‘Œ Support --list-details on more platforms (like BusyBox), see #783
    • The filters --owner, --size, and --changed-{within,before} now apply to symbolic links themselves, rather than the link target, except when --follow is specified; see #863
    • ๐Ÿ”„ Change time comparisons to be exclusive, see #794 (@jacobmischka)

    ๐Ÿ”„ Changes

    • ๐Ÿ‘€ Apply custom --path-separator to commands run with --exec(-batch) and --list-details, see #697 (@aswild)

    Other

    • ๐Ÿ“š Many documentation updates