Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | tests: Fail if bfs fails | Tavian Barnes | 2019-01-31 | 1 | -3/+17 | |
| | | | | | For tests that expect bfs to fail, the return value disambiguates whether bfs itself failed or whether the output was unexpected. | |||||
* | posix1e: Split out ACL and capability handling from util | Tavian Barnes | 2019-01-02 | 1 | -3/+3 | |
| | ||||||
* | color: Fix more incompatibilities with GNU ls | Tavian Barnes | 2019-01-02 | 1 | -4/+79 | |
| | ||||||
* | tests: Fix test_exit() to not depend on breadth-first ordering | Tavian Barnes | 2018-12-28 | 1 | -1/+1 | |
| | ||||||
* | tests.sh: Add a --help with usage information | Tavian Barnes | 2018-12-17 | 1 | -1/+36 | |
| | ||||||
* | exec: Reject -exec \; without a command | Tavian Barnes | 2018-11-14 | 1 | -1/+15 | |
| | | | | | | | | | | | Prior to this, we'd fork and then segfault on every file as NULL was passed to execvpe(). Found while looking through old FreeBSD find bugs: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=36521 bfs still supports the (dubious, possibly unintentional?) GNU find extension to POSIX that allows $ bfs -exec {} \; | |||||
* | tests: Don't assume BSD find has the "implicit ." | Tavian Barnes | 2018-11-14 | 1 | -3/+2 | |
| | | | | Also, FreeBSD find rejects -L -delete, so don't test it under --bsd. | |||||
* | tests: Don't assume find continues after filesystem loops | Tavian Barnes | 2018-11-14 | 1 | -13/+45 | |
| | | | | | | | | | | | 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: Make the weird names tests POSIX-compliant | Tavian Barnes | 2018-11-01 | 1 | -6/+6 | |
| | ||||||
* | tests: Add testcases for -prune | Tavian Barnes | 2018-11-01 | 1 | -0/+16 | |
| | ||||||
* | tests: Sort test lists | Tavian Barnes | 2018-09-27 | 1 | -159/+292 | |
| | ||||||
* | tests: Move test for -H -newer out of POSIX | Tavian Barnes | 2018-09-27 | 1 | -1/+2 | |
| | | | | | The POSIX spec implies that -newer is actually not supposed to respect -H/-L. But all implementations I know about do anyway. | |||||
* | tests: Remove non-POSIX features from POSIX tests | Tavian Barnes | 2018-09-26 | 1 | -13/+21 | |
| | | | | Credit to http://core.suckless.org/sbase/ for identifying these. | |||||
* | Update some more copyright dates | Tavian Barnes | 2018-09-26 | 1 | -1/+1 | |
| | ||||||
* | spawn: New posix_spawn()-like API for exec | Tavian Barnes | 2018-09-18 | 1 | -9/+0 | |
| | ||||||
* | opt: Re-run optimizations after reordering expressions | Tavian Barnes | 2018-08-18 | 1 | -1/+11 | |
| | | | | | This catches new data flow inferences that can be made after swapping the children of an expression. | |||||
* | printf: Support %B, GNU find's undocumented birth time specifier | Tavian Barnes | 2018-07-24 | 1 | -2/+2 | |
| | ||||||
* | tests: Add tests for mode 000 | Tavian Barnes | 2018-07-20 | 1 | -0/+21 | |
| | ||||||
* | printf: Output ? for errors in %Y | Tavian Barnes | 2018-07-20 | 1 | -0/+16 | |
| | ||||||
* | eval: Fix -delete when following symlinks. | Tavian Barnes | 2018-07-12 | 1 | -0/+14 | |
| | | | | | 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 | 1 | -0/+45 | |
| | ||||||
* | tests: Use -maxdepth 0 instead of | head -n1 | Tavian Barnes | 2018-07-07 | 1 | -1/+1 | |
| | | | | | | | This avoids the potential for "broken pipe" errors observed on some systems, e.g. http://build.alpinelinux.org/buildlogs/build-edge-s390x/testing/bfs/bfs-1.2.2-r0.log | |||||
* | tests: Relax test_depth_error | Tavian Barnes | 2018-06-24 | 1 | -3/+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/+18 | |
| | ||||||
* | tests: Work around broken rm in cleanup | Tavian Barnes | 2018-03-18 | 1 | -0/+7 | |
| | | | | | | | BusyBox rm, for example, doesn't handle long paths properly, so give it some help. C.f. http://lists.busybox.net/pipermail/busybox/2018-March/086302.html | |||||
* | tests: Don't use process substitution for diff | Tavian Barnes | 2018-03-18 | 1 | -7/+18 | |
| | | | | | This frees up an extra FD for some diff implementations like openbox that need it when ulimit -n is low. | |||||
* | tests: Be robust to ls -i implementation that output a leading space | Tavian Barnes | 2018-03-18 | 1 | -1/+1 | |
| | ||||||
* | tests: Add a --noclean option to preserve the test directory | Tavian Barnes | 2018-03-18 | 1 | -2/+14 | |
| | | | | Useful for debugging testsuite failures. | |||||
* | printf: Add %w and %Wk for file birth times | Tavian Barnes | 2018-01-20 | 1 | -0/+6 | |
| | | | | | %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/+9 | |
| | ||||||
* | parse: Support -perm +7777, for compatibility with BSD and old GNU find | Tavian Barnes | 2017-11-05 | 1 | -5/+10 | |
| | ||||||
* | parse: Keep track of what files are already open | Tavian Barnes | 2017-10-21 | 1 | -4/+20 | |
| | | | | Fixes #22 | |||||
* | Report errors that occur when closing files | Tavian Barnes | 2017-10-21 | 1 | -1/+19 | |
| | | | | Otherwise we miss write errors that occur when flushing the cache. | |||||
* | tests: -quit is not POSIX | Tavian Barnes | 2017-09-20 | 1 | -1/+1 | |
| | ||||||
* | opt: Fix -depth with arguments bigger than INT_MAX | Tavian Barnes | 2017-09-17 | 1 | -0/+5 | |
| | ||||||
* | tests: Add tests that trigger some optimizations | Tavian Barnes | 2017-09-16 | 1 | -0/+40 | |
| | ||||||
* | tests: Silence error messages while creating deep/ | Tavian Barnes | 2017-09-09 | 1 | -1/+1 | |
| | | | | | Some platforms will print errors like "cannot access parent directories: Result too large" | |||||
* | Try /proc/self/fd before /dev/fd | Tavian Barnes | 2017-09-09 | 1 | -2/+8 | |
| | | | | On Solaris, /proc/self/fd is dynamic while /dev/fd is static. | |||||
* | Revert "tests: Test hardlinks to symlinks" | Tavian Barnes | 2017-09-07 | 1 | -2/+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/+8 | |
| | | | | | | -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 | 1 | -0/+2 | |
| | ||||||
* | tests: Make test_deep pass with other find implementations | Tavian Barnes | 2017-09-04 | 1 | -6/+5 | |
| | | | | | 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 | 1 | -26/+27 | |
| | ||||||
* | tests: Remove unnecessary sort-args.sh invocations | Tavian Barnes | 2017-08-16 | 1 | -2/+2 | |
| | ||||||
* | tests: Add some syntax highlighting to --verbose | Tavian Barnes | 2017-08-12 | 1 | -3/+22 | |
| | ||||||
* | Unify broken symlink handling | Tavian Barnes | 2017-08-12 | 1 | -0/+29 | |
| | | | | | | | | | 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/+8 | |
| | ||||||
* | exec: Fix more corner cases with -ok ... + | Tavian Barnes | 2017-07-29 | 1 | -0/+10 | |
| | | | | -ok should look for a ; even if it sees {} +, according to POSIX. | |||||
* | tests.sh: Add a --verbose mode | Tavian Barnes | 2017-07-29 | 1 | -22/+58 | |
| | ||||||
* | exec: Don't allow anything between {} and + | Tavian Barnes | 2017-07-29 | 1 | -27/+31 | |
| | | | | | | | | | POSIX explicitly forbids this extension: > Only a <plus-sign> that immediately follows an argument containing > only the two characters "{}" shall punctuate the end of the primary > expression. Other uses of the <plus-sign> shall not be treated as > special. |