Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Don't call stat() just to determine symbolic lengths | Tavian Barnes | 2020-09-18 | 1 | -0/+13 |
| | | | | | | | The new bftw_cached_stat() helper gets us stat info if we already have it, but doesn't call stat() if we don't. In that case we just take a guess for the initial length to readlinkat(). This lets us avoid stat() entirely in many cases for -lname and -printf %l. | ||||
* | bftw: Make some flag names more explicit | Tavian Barnes | 2020-07-29 | 1 | -5/+5 |
| | |||||
* | bftw: Rename bftw_typeflag to bftw_type, and make it not a bitmask | Tavian Barnes | 2020-07-29 | 1 | -19/+19 |
| | |||||
* | Implement exponential deepening search | Tavian Barnes | 2020-06-16 | 1 | -0/+2 |
| | |||||
* | Implement -s flag from FreeBSD find to sort results | Tavian Barnes | 2020-03-21 | 1 | -0/+2 |
| | |||||
* | Make -mount and -xdev do different things | Tavian Barnes | 2019-07-04 | 1 | -2/+4 |
| | | | | | | | | | 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 | ||||
* | bftw: Remove BFTW_SKIP_SIBLINGS | Tavian Barnes | 2019-06-25 | 1 | -3/+1 |
| | | | | | It's not used by bfs, and it's difficult to support in all search strategies. | ||||
* | bftw.h: Add missing #include for mode_t | Tavian Barnes | 2019-06-25 | 1 | -0/+1 |
| | |||||
* | Implement an iterative deepening mode (-ids) | Tavian Barnes | 2019-05-29 | 1 | -0/+2 |
| | |||||
* | Implement a depth-first mode (-dfs) | Tavian Barnes | 2019-05-28 | 1 | -2/+13 |
| | |||||
* | bftw: Visit multiple roots breadth-first | Tavian Barnes | 2019-05-28 | 1 | -3/+5 |
| | | | | This makes `bfs a b` treat `a` and `b` as siblings. | ||||
* | bftw: Pass a const struct BFTW * to the callback | Tavian Barnes | 2019-05-05 | 1 | -3/+3 |
| | |||||
* | bftw: Add a caching stat() API to struct BFTW | Tavian Barnes | 2019-05-04 | 1 | -3/+44 |
| | |||||
* | stat: Unify the flags arguments | Tavian Barnes | 2019-05-04 | 1 | -3/+3 |
| | |||||
* | bftw: Work around d_type being wrong for bind mounts on Linux | Tavian Barnes | 2019-03-06 | 1 | -0/+3 |
| | | | | | | 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 | ||||
* | bftw: Switch from taking separate parameters to a parameters struct | Tavian Barnes | 2019-03-06 | 1 | -11/+19 |
| | |||||
* | Add some documentation comments | Tavian Barnes | 2019-02-09 | 1 | -0/+4 |
| | |||||
* | bftw: Move bftw_typeflag conversion out of util | Tavian Barnes | 2018-12-17 | 1 | -0/+5 |
| | | | | Turns out incomplete enum types are a GNU C extension. | ||||
* | Update copyright dates | Tavian Barnes | 2018-09-24 | 1 | -1/+1 |
| | |||||
* | stat: New wrapper around the stat() family | Tavian Barnes | 2018-01-08 | 1 | -3/+3 |
| | | | | | This lets bfs transparently support the new statx() system call on Linux, giving it access to file birth times. | ||||
* | Minor header cleanups | Tavian Barnes | 2018-01-08 | 1 | -0/+3 |
| | |||||
* | Re-license under the BSD Zero Clause License | Tavian Barnes | 2017-07-27 | 1 | -10/+15 |
| | |||||
* | Release 1.01.0 | Tavian Barnes | 2017-04-24 | 1 | -1/+1 |
| | |||||
* | Move bftw_typeflag converters to util.c | Tavian Barnes | 2017-04-08 | 1 | -5/+0 |
| | |||||
* | Add support for -x?type with multiple types | Tavian Barnes | 2017-02-08 | 1 | -12/+17 |
| | | | | This functionality is already part of GNU findutils git. | ||||
* | Implement -printf/-fprintf | Tavian Barnes | 2017-02-05 | 1 | -0/+2 |
| | | | | | Based on a patch by Fangrui Song <i@maskray.me>. Closes #16. | ||||
* | Update some copyright dates. | Tavian Barnes | 2016-11-24 | 1 | -1/+1 |
| | |||||
* | bftw: Make bftw_flags more similar to fts() options. | Tavian Barnes | 2016-11-21 | 1 | -9/+7 |
| | |||||
* | bftw: Add support for some exotic file types, where available. | Tavian Barnes | 2016-10-02 | 1 | -0/+6 |
| | |||||
* | Implement -mount/-xdev. | Tavian Barnes | 2016-02-14 | 1 | -0/+2 |
| | |||||
* | Follow links if appropriate in predicates. | Tavian Barnes | 2016-02-13 | 1 | -0/+2 |
| | |||||
* | Implement -L/-follow. | Tavian Barnes | 2016-02-09 | 1 | -4/+10 |
| | |||||
* | Implement -P and -H. | Tavian Barnes | 2016-02-04 | 1 | -3/+5 |
| | |||||
* | Don't use typedefs to avoid struct/enum tags. | Tavian Barnes | 2016-02-04 | 1 | -12/+15 |
| | |||||
* | Optimize -maxdepth in -depth mode. | Tavian Barnes | 2015-09-26 | 1 | -1/+13 |
| | |||||
* | Don't call stat() until absolutely necessary. | Tavian Barnes | 2015-09-26 | 1 | -1/+1 |
| | | | | | 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. | ||||
* | bftw() interface improvements: | Tavian Barnes | 2015-09-26 | 1 | -50/+68 |
| | | | | | | - 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 | ||||
* | Add -depth support. | Tavian Barnes | 2015-09-08 | 1 | -0/+2 |
| | | | | | | | 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. | ||||
* | Print the root file/directory too. | Tavian Barnes | 2015-09-02 | 1 | -2/+2 |
| | |||||
* | Add -type support. | Tavian Barnes | 2015-08-30 | 1 | -6/+14 |
| | | | | Fixes #2. | ||||
* | Recover from errors in diropen(). | Tavian Barnes | 2015-07-25 | 1 | -1/+12 |
| | | | | Fixes #4. | ||||
* | bftw: New struct BFTW type to hold file attributes. | Tavian Barnes | 2015-07-23 | 1 | -5/+17 |
| | | | | | Like nftw()'s struct FTW. level is needed to implement -mindepth/ -maxdepth. | ||||
* | bftw: Add flags parameter and BFTW_STAT flag. | Tavian Barnes | 2015-06-18 | 1 | -2/+11 |
| | |||||
* | Implement bftw(). | Tavian Barnes | 2015-06-14 | 1 | -0/+62 |