Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | printf: Colorize file names/paths in simple cases | Tavian Barnes | 2021-10-09 | 1 | -0/+20 | |
| | ||||||
* | Don't truncate files until we know they're not duplicates | Tavian Barnes | 2021-09-26 | 2 | -0/+39 | |
| | ||||||
* | ctx: Also deduplicate the standard streams | Tavian Barnes | 2021-09-21 | 2 | -0/+57 | |
| | | | | | | This fixes some potential missing output when the same file is used in a redirection and something like -fprint. The main benefit is smarter handling of /dev/stdout, which will now share the CFILE* with cout. | |||||
* | tests: Make the -files0-from tests weirder | Tavian Barnes | 2021-09-15 | 2 | -100/+60 | |
| | ||||||
* | Implement -files0-from FILE | Tavian Barnes | 2021-09-15 | 2 | -0/+100 | |
| | | | | | See https://savannah.gnu.org/bugs/?60383 for the development of the corresponding GNU find feature. | |||||
* | Use /usr/bin/env bash as the shebang in scripts | Tavian Barnes | 2021-08-05 | 4 | -4/+4 | |
| | | | | This should reduce the need for patches on the BSDs. | |||||
* | Implement time units for -{a,B,c,m}time | Tavian Barnes | 2021-06-02 | 1 | -0/+5 | |
| | | | | From FreeBSD find. Closes #75. | |||||
* | tests: Add a test for deleting large directories | Tavian Barnes | 2021-04-18 | 1 | -0/+1 | |
| | | | | This serves as a test for https://github.com/tavianator/bfs/issues/67 | |||||
* | test: Add more tests for -H/-L and -type l | Tavian Barnes | 2021-03-28 | 15 | -12/+32 | |
| | ||||||
* | Implement -flags, from FreeBSD find | Tavian Barnes | 2021-03-06 | 1 | -0/+1 | |
| | | | | This is the last BSD-specific primary I'm aware of. Fixes #14. | |||||
* | eval: Make -hidden behave consistently | Tavian Barnes | 2020-11-28 | 1 | -0/+5 | |
| | | | | | | | | | | | | | | | Previously there was an unexpected difference between $ bfs .hidden -hidden and $ bfs ./.hidden -hidden ./.hidden The intent of the code was to avoid considering `.`, the default starting point, as hidden and thus pruning a whole search with -nohidden. Fix it to do that explicitly, and handle `..` too. | |||||
* | Include what I use | Tavian Barnes | 2020-11-12 | 2 | -4/+0 | |
| | | | | Thanks to https://github.com/include-what-you-use/include-what-you-use | |||||
* | tests: Improve test coverage a bit | Tavian Barnes | 2020-11-10 | 12 | -0/+157 | |
| | ||||||
* | tests: Add missing expectations from dd3bbb9 | Tavian Barnes | 2020-11-09 | 2 | -0/+38 | |
| | ||||||
* | tests: Add missing ground truth | Tavian Barnes | 2020-09-20 | 1 | -0/+12 | |
| | ||||||
* | Implement -xattrname | Tavian Barnes | 2020-08-13 | 4 | -0/+6 | |
| | | | | From macOS find. | |||||
* | tests/trie: New acceptance test for tries | Tavian Barnes | 2020-06-09 | 1 | -0/+118 | |
| | ||||||
* | tests/xtimegm: Don't test the year 1900 | Tavian Barnes | 2020-06-09 | 1 | -1/+1 | |
| | | | | | | | macOS doesn't support negative time_t's that are larger than 32 bits apparently. C.f.: https://stackoverflow.com/a/46335905 | |||||
* | tests: New acceptance test for xtimegm() | Tavian Barnes | 2020-06-09 | 1 | -0/+91 | |
| | ||||||
* | Treat -nohidden like -exclude -hidden | Tavian Barnes | 2020-06-07 | 1 | -0/+19 | |
| | | | | Fixes #30. | |||||
* | Implement -exclude, a special form for convenient exclusions | Tavian Barnes | 2020-06-07 | 3 | -0/+26 | |
| | | | | Fixes #8. | |||||
* | opt: Track data flow information about predicates | Tavian Barnes | 2020-05-22 | 4 | -0/+76 | |
| | | | | | | | | | | This allows us to optimize things like -sparse -o -not -sparse <==> -true and -sparse -a -not -sparse <==> -false | |||||
* | Implement -s flag from FreeBSD find to sort results | Tavian Barnes | 2020-03-21 | 4 | -0/+68 | |
| | ||||||
* | eval: Irregular files aren't empty | Tavian Barnes | 2020-02-14 | 1 | -0/+14 | |
| | | | | | GNU find's -empty returns false for devices, sockets, etc., even though their st_size is 0. Match that behaviour. | |||||
* | parse: Handle 1969-12-31T23:59:59Z | Tavian Barnes | 2020-02-13 | 1 | -0/+5 | |
| | | | | | mktime() returns -1 on error, but also for one second before the epoch. Compare the input against localtime(-1) to distinguish those cases. | |||||
* | Implement -{a,B,c,m,}since | Tavian Barnes | 2020-02-12 | 2 | -0/+6 | |
| | ||||||
* | Implement explicit reference times (-newerXt) | Tavian Barnes | 2020-02-11 | 1 | -0/+3 | |
| | ||||||
* | parse: Don't treat -mount differently from -xdev yet | Tavian Barnes | 2019-09-11 | 2 | -0/+4 | |
| | | | | | | | | The new POSIX version with -mount isn't out yet, so there's no point in conforming to a non-existent document while breaking compatibility with GNU find, which hasn't changed yet either. But a warning is added for the future incompatibility. This patch can be reverted to re-enable the feature. | |||||
* | tests: Add -mount/-xdev tests with -L | Tavian Barnes | 2019-09-11 | 2 | -0/+7 | |
| | ||||||
* | tests: Test more cases in test_color_ls | Tavian Barnes | 2019-09-05 | 1 | -4/+10 | |
| | ||||||
* | color: Fix directory coloring when resolving symlinks at the root | Tavian Barnes | 2019-09-03 | 1 | -0/+6 | |
| | ||||||
* | Make -mount and -xdev do different things | Tavian Barnes | 2019-07-04 | 1 | -1/+0 | |
| | | | | | | | | | 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 | |||||
* | tests: Relax test_execdir_ulimit so that GNU find passes | Tavian Barnes | 2019-06-28 | 1 | -0/+9 | |
| | ||||||
* | color: Fix a crash if LS_COLORS ends in * | Tavian Barnes | 2019-06-27 | 1 | -0/+20 | |
| | ||||||
* | bftw: Queue individual files in depth-first mode | Tavian Barnes | 2019-06-25 | 1 | -0/+31 | |
| | | | | This makes the order be truly depth-first. | |||||
* | Implement -xattr predicate | Tavian Barnes | 2019-05-24 | 2 | -0/+4 | |
| | ||||||
* | fsade: Refactor the POSIX.1e abstractions | Tavian Barnes | 2019-05-24 | 4 | -0/+6 | |
| | | | | | | | Since we're going to want to abstract more things that aren't part of POSIX.1e (like xattrs) in a similar way, let's give this a more generic name. And while we're at it, give it some more precise error reporting, and add some tests. | |||||
* | tests: Add some more --sudo tests | Tavian Barnes | 2019-05-09 | 3 | -0/+5 | |
| | | | | | | https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=912180#17 pointed out that d_ino is not trustworthy on mount points either. Make sure we don't use it. | |||||
* | color: Don't stat() if we don't need to | Tavian Barnes | 2019-05-05 | 2 | -0/+40 | |
| | ||||||
* | tests: Add missing expectation file | Tavian Barnes | 2019-05-04 | 1 | -0/+0 | |
| | ||||||
* | bftw: Add a caching stat() API to struct BFTW | Tavian Barnes | 2019-05-04 | 1 | -0/+20 | |
| | ||||||
* | tests: Add some tests that require sudo | Tavian Barnes | 2019-04-24 | 3 | -0/+9 | |
| | ||||||
* | parse: Allow things like -uid ++10 | Tavian Barnes | 2019-04-21 | 4 | -0/+76 | |
| | | | | GNU find does too. | |||||
* | tests: Don't test symlink permissions | Tavian Barnes | 2019-04-20 | 1 | -31/+31 | |
| | | | | They're different between platforms. | |||||
* | tests: Add a test with -printf %H and multiple roots | Tavian Barnes | 2019-04-20 | 1 | -0/+31 | |
| | | | | To make sure we're keeping track of different root paths correctly | |||||
* | tests: Fix color NUL byte test on platforms where sort expects text | Tavian Barnes | 2019-03-28 | 2 | -0/+0 | |
| | ||||||
* | color: Implement ln=target | Tavian Barnes | 2019-03-28 | 1 | -0/+20 | |
| | | | | | With ln=target in LS_COLORS, links should be colored according to their target's stat() info, not their own. | |||||
* | color: Implement escape sequence parsing | Tavian Barnes | 2019-03-28 | 2 | -0/+20 | |
| | | | | | GNU ls allows custom escape sequences inside color values, including control characters and embedded NULs. | |||||
* | opt: Optimize redundant comma expressions | Tavian Barnes | 2019-03-21 | 2 | -0/+2 | |
| | ||||||
* | opt: Replace -a -false/-o -true with -not when possible | Tavian Barnes | 2019-03-20 | 1 | -0/+1 | |
| |