summaryrefslogtreecommitdiffstats
path: root/bftw.h
AgeCommit message (Collapse)Author
2019-07-04Make -mount and -xdev do different thingsTavian Barnes
POSIX now says -mount should skip the whole mount point, while -xdev should only skip its descendents. C.f. http://austingroupbugs.net/view.php?id=1133 C.f. https://savannah.gnu.org/bugs/?42318 C.f. https://savannah.gnu.org/bugs/?54745
2019-06-25bftw: Remove BFTW_SKIP_SIBLINGSTavian Barnes
It's not used by bfs, and it's difficult to support in all search strategies.
2019-06-25bftw.h: Add missing #include for mode_tTavian Barnes
2019-05-29Implement an iterative deepening mode (-ids)Tavian Barnes
2019-05-28Implement a depth-first mode (-dfs)Tavian Barnes
2019-05-28bftw: Visit multiple roots breadth-firstTavian Barnes
This makes `bfs a b` treat `a` and `b` as siblings.
2019-05-05bftw: Pass a const struct BFTW * to the callbackTavian Barnes
2019-05-04bftw: Add a caching stat() API to struct BFTWTavian Barnes
2019-05-04stat: Unify the flags argumentsTavian Barnes
2019-03-06bftw: Work around d_type being wrong for bind mounts on LinuxTavian Barnes
C.f. https://savannah.gnu.org/bugs/?54913 C.f. https://lkml.org/lkml/2019/2/11/2027 Fixes https://github.com/tavianator/bfs/issues/37
2019-03-06bftw: Switch from taking separate parameters to a parameters structTavian Barnes
2019-02-09Add some documentation commentsTavian Barnes
2018-12-17bftw: Move bftw_typeflag conversion out of utilTavian Barnes
Turns out incomplete enum types are a GNU C extension.
2018-09-24Update copyright datesTavian Barnes
2018-01-08stat: New wrapper around the stat() familyTavian Barnes
This lets bfs transparently support the new statx() system call on Linux, giving it access to file birth times.
2018-01-08Minor header cleanupsTavian Barnes
2017-07-27Re-license under the BSD Zero Clause LicenseTavian Barnes
2017-04-24Release 1.01.0Tavian Barnes
2017-04-08Move bftw_typeflag converters to util.cTavian Barnes
2017-02-08Add support for -x?type with multiple typesTavian Barnes
This functionality is already part of GNU findutils git.
2017-02-05Implement -printf/-fprintfTavian Barnes
Based on a patch by Fangrui Song <i@maskray.me>. Closes #16.
2016-11-24Update some copyright dates.Tavian Barnes
2016-11-21bftw: Make bftw_flags more similar to fts() options.Tavian Barnes
2016-10-02bftw: Add support for some exotic file types, where available.Tavian Barnes
2016-02-14Implement -mount/-xdev.Tavian Barnes
2016-02-13Follow links if appropriate in predicates.Tavian Barnes
2016-02-09Implement -L/-follow.Tavian Barnes
2016-02-04Implement -P and -H.Tavian Barnes
2016-02-04Don't use typedefs to avoid struct/enum tags.Tavian Barnes
2015-09-26Optimize -maxdepth in -depth mode.Tavian Barnes
2015-09-26Don't call stat() until absolutely necessary.Tavian Barnes
This way we only call stat() if we're actually pretty-printing the path, potentially saving lots of calls on paths that don't get printed.
2015-09-26bftw() interface improvements:Tavian Barnes
- Use enums instead of ints where it makes sense - Move the file path inside struct BFTW - Expose a fd and relative path for *at() calls
2015-09-08Add -depth support.Tavian Barnes
The resulting order is fairly weird, as files are still returned in breadth-first order, but directories are returned in a backwards order based on when their reference counts drop to zero. But it's good enough for -delete support.
2015-09-02Print the root file/directory too.Tavian Barnes
2015-08-30Add -type support.Tavian Barnes
Fixes #2.
2015-07-25Recover from errors in diropen().Tavian Barnes
Fixes #4.
2015-07-23bftw: New struct BFTW type to hold file attributes.Tavian Barnes
Like nftw()'s struct FTW. level is needed to implement -mindepth/ -maxdepth.
2015-06-18bftw: Add flags parameter and BFTW_STAT flag.Tavian Barnes
2015-06-14Implement bftw().Tavian Barnes