Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | tests: Split test cases into separate files | Tavian Barnes | 2022-10-19 | 770 | -2857/+902 |
| | |||||
* | tests: Test -exec with a nonexistent command | Tavian Barnes | 2022-10-05 | 5 | -0/+116 |
| | |||||
* | tests: POSIX doesn't *require* -ok ... {} + to be unsupported | Tavian Barnes | 2022-09-18 | 1 | -2/+11 |
| | |||||
* | tests: Don't pass NUL bytes to sort | Tavian Barnes | 2022-07-18 | 4 | -5/+11 |
| | | | | The tests now pass with busybox instead of coreutils. | ||||
* | tests: Limit path lengths passed to mkdir | Tavian Barnes | 2022-07-13 | 1 | -4/+7 |
| | | | | FreeBSD limits mkdir() to 1023 bytes, not 4096. | ||||
* | tests: Set colors to the empty string for non-ttys | Tavian Barnes | 2022-07-13 | 1 | -0/+9 |
| | |||||
* | tests: Use set -u | Tavian Barnes | 2022-07-13 | 1 | -2/+2 |
| | |||||
* | tests: Optimize startup | Tavian Barnes | 2022-07-13 | 1 | -14/+14 |
| | | | | ./tests.sh is about 110ms faster on my machine with this patch. | ||||
* | tests: Add tests for parsing failures in more locations | Tavian Barnes | 2022-07-13 | 1 | -0/+15 |
| | |||||
* | tests: New test for -exec with unset $PATH | Tavian Barnes | 2022-07-12 | 2 | -0/+30 |
| | |||||
* | tests: Simplify snapshot testing without bfs_diff | Tavian Barnes | 2022-07-12 | 1 | -102/+51 |
| | |||||
* | tests: Add a test for every printf directive | Tavian Barnes | 2022-06-01 | 1 | -0/+13 |
| | |||||
* | tests: Add tests for -warn/-nowarn | Tavian Barnes | 2022-05-29 | 1 | -0/+13 |
| | |||||
* | tests: Don't print test names to non-ttys without --verbose=tests | Tavian Barnes | 2022-05-20 | 1 | -6/+15 |
| | | | | This should shrink the CI logs appreciably. | ||||
* | Makefile: Add a BUILDDIR variable for out-of-tree builds | Tavian Barnes | 2022-05-20 | 1 | -1/+6 |
| | | | | bfs can now be built from a read-only source tree. | ||||
* | Makefile: Split build into bin and obj directories | Tavian Barnes | 2022-05-16 | 1 | -0/+3433 |
| | | | | | This also moves the main binary from ./bfs to ./bin/bfs, and ./tests.sh to ./tests/tests.sh, with the goal of keeping the repository root clean. | ||||
* | tests: Use skip_if for sudo tests | Tavian Barnes | 2022-05-12 | 1 | -0/+0 |
| | | | | | | This lets us categorize the sudo tests properly, which fixes e.g. $ ./tests.sh --posix --sudo | ||||
* | stat: Pass AT_NO_AUTOMOUNT if possible | Tavian Barnes | 2022-05-12 | 1 | -0/+1 |
| | | | | | Previously bfs would trigger automounts even when it didn't descend into the mount directory, while GNU find does not. | ||||
* | Source / Include Folder (#88) | トトも | 2022-04-16 | 2 | -2/+2 |
| | | | Moved Source Files Into `src` Folder | ||||
* | tests: Use bfs_diff in more cases | Tavian Barnes | 2022-03-15 | 1 | -0/+0 |
| | |||||
* | tests: Shell style fixes | Tavian Barnes | 2022-03-14 | 1 | -1/+1 |
| | | | | We now support `./tests.sh --bfs="path/with\ spaces/bfs"` | ||||
* | tests: Use -print0 instead of -printf '%p ' for exec flush tests | Tavian Barnes | 2022-03-13 | 2 | -0/+0 |
| | |||||
* | tests: Use plain sort, not bfs_sort | Tavian Barnes | 2022-03-13 | 112 | -531/+531 |
| | | | | | bfs_sort existed to keep the test outputs nicely in breadth-first order. Unfortunately the implementation using awk didn't support NUL bytes. | ||||
* | Don't shadow standard headers | Tavian Barnes | 2022-03-12 | 1 | -1/+1 |
| | | | | | | | | | | | | | @italic on the AUR stated that bfs from the AUR fails to build on Manjaro. From the build log, it seems like <time.h> doesn't get included properly. I assume it's picking up ./time.h instead. I couldn't reproduce the build issue in the default configuration, but it does fail with EXTRA_CFLAGS="-I." which isn't good. So rename everything with an x prefix to stop clashing. Link: https://aur.archlinux.org/packages/bfs#comment-856102 Link: https://paste.rs/eqR | ||||
* | regex: Use the encoding from the current locale | Tavian Barnes | 2022-02-24 | 1 | -0/+1 |
| | |||||
* | exec: Flush I/O streams before executing anything | Tavian Barnes | 2022-02-11 | 3 | -0/+21 |
| | | | | | | Otherwise output from commands may appear unexpectedly earlier than output from bfs. We use fflush(NULL) to flush all streams, which is more than GNU find does, but seems to be a useful extension. | ||||
* | tests: Add a test that -exit suppresses the implicit -print | Tavian Barnes | 2022-02-10 | 1 | -0/+0 |
| | |||||
* | regex: Add support for emacs and grep types | Tavian Barnes | 2022-02-04 | 2 | -0/+10 |
| | |||||
* | tests: Add tests for syntactically invalid globs | Tavian Barnes | 2022-02-02 | 12 | -0/+22 |
| | |||||
* | tests: New tests for -i?wholename | Tavian Barnes | 2022-02-01 | 2 | -0/+14 |
| | |||||
* | tests: New test for ** in a glob | Tavian Barnes | 2022-02-01 | 1 | -0/+4 |
| | |||||
* | tests: New test for -prune on a non-directory | Tavian Barnes | 2022-02-01 | 1 | -0/+10 |
| | |||||
* | parse: Add support for ed and sed regexes | Tavian Barnes | 2022-01-30 | 2 | -0/+2 |
| | | | | They're apparently the same as POSIX basic regexes. | ||||
* | Revert "tests: Add a test for posix-basic alternation" | Tavian Barnes | 2022-01-29 | 1 | -2/+0 |
| | | | | | | | Turns out alternation is not actually part of the POSIX basic regular expression language, it's just a glibc extension. This reverts commit c898af13a671ee92a056467d324f16823594eb1c. | ||||
* | tests: Add a test for posix-basic alternation | Tavian Barnes | 2022-01-29 | 1 | -0/+2 |
| | |||||
* | tests: Add missing license headers | Tavian Barnes | 2022-01-18 | 2 | -0/+32 |
| | |||||
* | tests/trie: Fix "handling" typo | Tavian Barnes | 2022-01-18 | 1 | -1/+1 |
| | |||||
* | 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 |
| |