Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | 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 |
| | |||||
* | tests: Add utilities for comparing colors to ls | Tavian Barnes | 2019-03-19 | 2 | -0/+92 |
| | |||||
* | tests: Use archive extensions for color tests | Tavian Barnes | 2019-03-17 | 25 | -4/+79 |
| | |||||
* | color: Match the behaviour of GNU ls more closely | Tavian Barnes | 2019-03-17 | 25 | -25/+212 |
| | |||||
* | tests: Add a test for extension overrides | Tavian Barnes | 2019-03-07 | 2 | -0/+34 |
| | |||||
* | eval: Fix -unique with -depth | Tavian Barnes | 2019-03-07 | 2 | -0/+22 |
| | |||||
* | Implement -unique | Tavian Barnes | 2019-03-01 | 3 | -0/+6 |
| | | | | Closes #48 | ||||
* | tests: Add a test for symlink coloring to a device | Tavian Barnes | 2019-02-18 | 12 | -0/+28 |
| | |||||
* | tests: Add tests for -no{group,user} under fd pressure | Tavian Barnes | 2019-02-07 | 2 | -0/+0 |
| | |||||
* | tests: New utility for making and testing socket files | Tavian Barnes | 2019-02-01 | 12 | -0/+142 |
| | |||||
* | main: Fix closed standard stream handling | Tavian Barnes | 2019-02-01 | 3 | -0/+19 |
| | | | | | bfs >&- should complain about a missing file descriptor, rather than silently succeeding. | ||||
* | color: Fix more incompatibilities with GNU ls | Tavian Barnes | 2019-01-02 | 12 | -12/+165 |
| | |||||
* | tests: Fix test_exit() to not depend on breadth-first ordering | Tavian Barnes | 2018-12-28 | 1 | -15/+0 |
| | |||||
* | color: Don't print the leading directory color if there's no leading directory | Tavian Barnes | 2018-12-17 | 1 | -1/+1 |
| | |||||
* | tests: Don't assume find continues after filesystem loops | Tavian Barnes | 2018-11-14 | 18 | -24/+55 |
| | | | | | | | | | | | POSIX says > When it detects an infinite loop, find shall write a diagnostic > message to standard error and shall either recover its position in the > hierarchy or terminate. So make the 'links' folder not have any loops, and add a new 'loops' folder for testing the GNU/bfs behaviour. | ||||
* | tests: Add testcases for -prune | Tavian Barnes | 2018-11-01 | 3 | -0/+29 |
| | |||||
* | spawn: New posix_spawn()-like API for exec | Tavian Barnes | 2018-09-18 | 1 | -16/+0 |
| | |||||
* | opt: Re-run optimizations after reordering expressions | Tavian Barnes | 2018-08-18 | 2 | -0/+24 |
| | | | | | This catches new data flow inferences that can be made after swapping the children of an expression. | ||||
* | tests: Add tests for mode 000 | Tavian Barnes | 2018-07-20 | 4 | -0/+25 |
| | |||||
* | printf: Output ? for errors in %Y | Tavian Barnes | 2018-07-20 | 1 | -0/+3 |
| | |||||
* | eval: Fix -delete when following symlinks. | Tavian Barnes | 2018-07-12 | 1 | -0/+2 |
| | | | | | Same bug as https://savannah.gnu.org/bugs/?46305. Please don't ever do this though. | ||||
* | tests: Add some more tests for broken symlinks | Tavian Barnes | 2018-07-07 | 8 | -0/+10 |
| | |||||
* | tests: Relax test_depth_error | Tavian Barnes | 2018-06-24 | 1 | -2/+0 |
| | | | | | Whether bfs can return children of a directory without search permission depends on whether d_type is filled in, which can't be guaranteed. | ||||
* | tests: New test for -depth in the presence of read errors | Tavian Barnes | 2018-06-23 | 1 | -0/+4 |
| | |||||
* | printf: Add %w and %Wk for file birth times | Tavian Barnes | 2018-01-20 | 1 | -0/+0 |
| | | | | | %w and %W were chosen to match the format specifiers for file birth times from stat(1) | ||||
* | exec: Recover from E2BIG | Tavian Barnes | 2017-11-12 | 1 | -0/+16 |
| | |||||
* | parse: Support -perm +7777, for compatibility with BSD and old GNU find | Tavian Barnes | 2017-11-05 | 2 | -0/+12 |
| | |||||
* | parse: Keep track of what files are already open | Tavian Barnes | 2017-10-21 | 1 | -0/+57 |
| | | | | Fixes #22 | ||||
* | opt: Fix -depth with arguments bigger than INT_MAX | Tavian Barnes | 2017-09-17 | 1 | -0/+19 |
| | |||||
* | tests: Add tests that trigger some optimizations | Tavian Barnes | 2017-09-16 | 8 | -0/+47 |
| | |||||
* | Revert "tests: Test hardlinks to symlinks" | Tavian Barnes | 2017-09-07 | 12 | -18/+0 |
| | | | | | | Apparently macOS doesn't support ln -P. This reverts commit 80eec18020f531abbdb2abbb919ab6c6fa34107c. | ||||
* | parse: Don't reorder or remove tests with potential side effects | Tavian Barnes | 2017-09-06 | 1 | -0/+0 |
| | | | | | | -empty and -xtype may have side effects like reporting permission errors, which even affect the exit status of bfs. We shouldn't remove these effects without -Ofast. | ||||
* | tests: Test hardlinks to symlinks | Tavian Barnes | 2017-09-06 | 12 | -0/+18 |
| | |||||
* | tests: Make test_deep pass with other find implementations | Tavian Barnes | 2017-09-04 | 2 | -16/+32 |
| | | | | | And move test_deep_strict to the bfs-specific tests, since it's not likely to ever pass for other implementations. | ||||
* | tests: Use human-readable filenames in links/ | Tavian Barnes | 2017-09-02 | 32 | -116/+101 |
| | |||||
* | tests: Remove unnecessary sort-args.sh invocations | Tavian Barnes | 2017-08-16 | 2 | -38/+38 |
| | |||||
* | Unify broken symlink handling | Tavian Barnes | 2017-08-12 | 5 | -0/+6 |
| | | | | | | | | | Rather than open-code the fallback logic for broken symlinks everywhere it's needed, introduce a new xfstatat() utility function that performs the fallback automatically. Using xfstatat() consistently fixes a few bugs, including cases where broken symlinks are given as arguments to predicates like -samefile. | ||||
* | tests: Add a test for -exec ... {} + with a failing command | Tavian Barnes | 2017-08-12 | 1 | -0/+19 |
| | |||||
* | exec: Fix more corner cases with -ok ... + | Tavian Barnes | 2017-07-29 | 2 | -0/+38 |
| | | | | -ok should look for a ; even if it sees {} +, according to POSIX. |