summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Makefile: Use a recipe to update .flags rather than $(shell)Tavian Barnes2022-04-181-8/+4
| | | | | | | | | This means we don't need to generate .flags unless we're actually building a target that needs it, which is important for thing like $ sudo make install that used to inconveniently create a root-owned .flags file.
* tests: Also put build outputs under build/Tavian Barnes2022-04-163-19/+14
|
* Keep Build Files In `build` (#89)トトも2022-04-161-29/+32
|
* Source / Include Folder (#88)トトも2022-04-1654-5/+8
| | | Moved Source Files Into `src` Folder
* style: Use &array[i] rather than array + iTavian Barnes2022-04-163-8/+8
|
* color: Support a separate $BFS_COLORS environment variableTavian Barnes2022-04-155-70/+84
|
* color: Use three-letter codes for warnings and errorsTavian Barnes2022-04-153-11/+11
| | | | No reason to potentially conflict with the two-letter codes GNU ls uses.
* tests: Quiet errors from chflagsTavian Barnes2022-04-151-1/+1
|
* eval: Use BFTW_BUFFER when deleting files on FreeBSDTavian Barnes2022-04-151-0/+35
| | | | Works around #67.
* bftw: New BFTW_BUFFER flagTavian Barnes2022-04-152-2/+4
|
* bfs.1: Fix a confusing comma in the -size docsTavian Barnes2022-04-011-2/+2
|
* opt: Use floats consistently for probabilities and costsTavian Barnes2022-03-272-5/+5
|
* Release 2.52.5Tavian Barnes2022-03-273-2/+29
|
* README: Add a blurb about fancy errors/warningsTavian Barnes2022-03-271-0/+22
|
* parse.c: Use state->last_arg as the location for the expected )Tavian Barnes2022-03-271-16/+4
| | | | This lets us remove the special case for *argv == NULL.
* diag: Avoid printing trailing spacesTavian Barnes2022-03-271-3/+5
|
* opt: Add some more warningsTavian Barnes2022-03-271-0/+6
|
* parse: Highlight command line errorsTavian Barnes2022-03-274-191/+380
|
* diag: New functions for highlighting command line argumentsTavian Barnes2022-03-275-75/+185
|
* util: New xstrwidth() functionTavian Barnes2022-03-262-0/+46
|
* opt: Warn about expressions we remove while optimizingTavian Barnes2022-03-263-28/+115
|
* parse: Stop warning for options after tests/actionsTavian Barnes2022-03-261-44/+7
| | | | | | | | | | | Part of the bfs design philosophy is to care less about the order of arguments. As such, there's no good reason to be warning-compatible with GNU find in this case. I don't even think things like this are confusing: bfs -print -color so why warn about it?
* expr: Store auxilliary data in a unionTavian Barnes2022-03-259-777/+815
| | | | And rename struct expr to bfs_expr.
* Update from C99 to C11Tavian Barnes2022-03-252-2/+2
| | | | This is necessary for standard anonymous structs/unions.
* printf: Switch from a linked list to an arrayTavian Barnes2022-03-251-129/+123
|
* main: Fix comment alignmentTavian Barnes2022-03-251-2/+2
|
* tests: Use bfs_diff in more casesTavian Barnes2022-03-152-22/+5
|
* tests: Shell style fixesTavian Barnes2022-03-142-58/+57
| | | | We now support `./tests.sh --bfs="path/with\ spaces/bfs"`
* exec: Check for errors when printing the -ok promptTavian Barnes2022-03-131-2/+6
|
* exec: Don't flush if the user says no to -okTavian Barnes2022-03-131-3/+3
|
* ctx: Factor out exec flushing behaviour into bfs_ctx_flush()Tavian Barnes2022-03-133-14/+27
|
* tests: Use -print0 instead of -printf '%p ' for exec flush testsTavian Barnes2022-03-133-4/+4
|
* tests: Use plain sort, not bfs_sortTavian Barnes2022-03-13113-548/+533
| | | | | bfs_sort existed to keep the test outputs nicely in breadth-first order. Unfortunately the implementation using awk didn't support NUL bytes.
* tests: Use skip_if for more testsTavian Barnes2022-03-131-15/+11
|
* Rename the include guards for the recently renamed headersTavian Barnes2022-03-134-12/+12
|
* Don't shadow standard headersTavian Barnes2022-03-1215-21/+21
| | | | | | | | | | | | | @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
* CONTRIBUTING: Add a contribution guideTavian Barnes2022-03-111-0/+167
|
* README: Clarify some dependenciesTavian Barnes2022-03-111-5/+5
|
* Makefile: Disable onig-config for the 32-bit distcheck buildTavian Barnes2022-03-111-2/+2
| | | | | | | | | | | onig-config can redundantly add -L/usr/lib to LDLIBS, which results in a few warnings like /usr/bin/ld: skipping incompatible /usr/lib/libonig.so when searching for -lonig While I'm at it, explicitly restrict the -m32 build to Linux, since it doesn't work on FreeBSD and was only skipped because uname -m is amd64, not x86_64.
* Makefile: Enable time64Tavian Barnes2022-03-111-0/+1
|
* ctx: Don't include std{out,err} in the open file countTavian Barnes2022-03-091-1/+5
|
* bftw: Fix open FD accountingTavian Barnes2022-03-091-3/+2
| | | | | Due to the introduction of bfs_dir, we don't need to reserve an extra file descriptor for the currently open directory.
* bftw: Keep root paths at the head of the LRU listTavian Barnes2022-03-091-4/+25
| | | | | With a low ulimit -n, this brings performance back in line with the old heap based implementation.
* Revert "darray: New DARRAY_POP() macro"Tavian Barnes2022-03-092-32/+0
| | | | This reverts commit 6ac4deb451ccd4ed11fb0d022b83710b5b0522fe.
* bftw: Bring back the LRU listTavian Barnes2022-03-091-158/+78
|
* Makefile: Add lsan and tsan flag targetsTavian Barnes2022-03-091-1/+13
|
* Merge pull request #84 from chapmanjacobd/patch-1Tavian Barnes2022-03-071-0/+3
|\ | | | | docs: readme: add fedora deps
| * add fedora depsJacob Chapman2022-03-081-0/+3
|/
* README: Fix typoTavian Barnes2022-03-011-1/+1
|
* Makefile: Make separate variables for Oniguruma flagsTavian Barnes2022-02-281-3/+6
| | | | | | This allows customizing the necessary flags if onig-config isn't available or is undesirable (e.g. when linking against a non-system build of libonig).