summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* trie: Implement a QP trieTavian Barnes2019-03-013-0/+661
|
* tests: Add a test for symlink coloring to a deviceTavian Barnes2019-02-1813-1/+34
|
* parse: Wrap -help output at 80 charsTavian Barnes2019-02-131-3/+4
|
* Fix missing color escape ($) in the -help outputTavian Barnes2019-02-121-1/+1
|
* Release 1.3.31.3.3Tavian Barnes2019-02-103-2/+16
|
* Add some documentation commentsTavian Barnes2019-02-0921-1/+159
|
* tests: Add tests for -no{group,user} under fd pressureTavian Barnes2019-02-073-0/+16
|
* Turn on -Wstrict-prototypesTavian Barnes2019-02-064-4/+4
|
* Re-write the help/manpageTavian Barnes2019-02-062-503/+402
| | | | | | I'm not sure people care very much whether the functionality they're looking up originated in POSIX/BSD/GNU find (and if they do, they can check those docs).
* parse: Treat -d as a flag, not an optionTavian Barnes2019-02-061-2/+2
| | | | | | This is consistent with BSD find, not with GNU find. But the GNU find feature was an (incorrect) attempt to be compatible with BSD find anyway.
* parse: Add support for whiteouts in -type/-xtypeTavian Barnes2019-02-061-0/+4
| | | | FreeBSD find supports this.
* Fix -nouser/-nogroup error handlingTavian Barnes2019-02-062-2/+22
| | | | | | | | | | The proper way to check for nonexistent users/groups is to set errno to 0 before the get{grg,pwu}id() call, and check it afterwards. On doing this, it becomes obvious that the call can fail if bftw() is using all the available FDs, so give them some ephemeral FDs. It would be ideal to read the user/group table only once, but this fixes the bug for now.
* opt: Optimize -samefile together with -inumTavian Barnes2019-02-041-0/+9
|
* Merge branch 'improvements'Tavian Barnes2019-02-0128-212/+594
|\
| * util: Remove some unused macrosTavian Barnes2019-02-011-12/+0
| |
| * opt: Apply data flow optimizations to more numeric rangesTavian Barnes2019-02-011-79/+208
| |
| * parse: Remove the recommendation to check find -help or man findTavian Barnes2019-02-011-6/+3
| | | | | | | | bfs has had a comprehensive help text and man page for a while now.
| * tests: New utility for making and testing socket filesTavian Barnes2019-02-0115-13/+156
| |
| * eval: Fix wrong colors in error messagesTavian Barnes2019-02-011-45/+72
| | | | | | | | | | When reporting an error, we should try to stat the file first so the message can have the right colors.
| * main: Fix closed standard stream handlingTavian Barnes2019-02-016-22/+76
| | | | | | | | | | bfs >&- should complain about a missing file descriptor, rather than silently succeeding.
| * Makefile: New distcheck targetTavian Barnes2019-02-012-28/+27
| | | | | | | | | | | | To catch more errors automatically, this new target runs the tests in multiple configurations, including various sanitizers and with/without optimization.
| * util: Allow configuration macros to be specified with -DTavian Barnes2019-02-012-7/+24
| | | | | | | | In case we need to override them at build time.
| * stat: Work around msan not knowing about statx()Tavian Barnes2019-01-312-1/+14
| |
| * tests: Fail if bfs failsTavian Barnes2019-01-311-3/+17
| | | | | | | | | | For tests that expect bfs to fail, the return value disambiguates whether bfs itself failed or whether the output was unexpected.
| * dstring: Initialize freshly-allocated stringsTavian Barnes2019-01-311-0/+1
| | | | | | | | | | | | | | | | | | | | Previously, a string allocated with dstralloc() had length 0 but no terminating NUL byte there. This was problematic if such a string was used without being modified. In particular, this was reproducible with bfs -ok by not typing any response to the prompt. In that case, uninitialized memory was being tested for a y/n response, with unpredictable results.
* | Merge pull request #49 from ylluminarious/patch-1Tavian Barnes2019-01-221-1/+2
|\ \ | |/ |/| Add instructions for installing via MacPorts
| * add instructions for installing via MacPortsGeorge Plymale II2019-01-181-1/+2
|/
* Release 1.3.21.3.2Tavian Barnes2019-01-113-2/+11
|
* parse: Allow multiple comma-separated debug flagsTavian Barnes2019-01-112-54/+91
|
* color.c: Fix an out-of-bounds read if LS_COLORS doesn't end in a colonTavian Barnes2019-01-111-9/+9
|
* Release 1.3.11.3.1Tavian Barnes2019-01-033-3/+11
|
* posix1e: Don't #include <sys/capability.h> on FreeBSDTavian Barnes2019-01-033-7/+9
| | | | | | | | The file is there by default, but deprecated and not a POSIX.1E implementation. While I'm at it, move the logic to posix1e.h so other files aren't burdened with an extra include. Fixes the other half of #40.
* stat: s/ENODATA/ENOTSUP, since ENODATA is POSIX-optionalTavian Barnes2019-01-031-3/+3
| | | | Fixes half of #40.
* Release 1.31.3Tavian Barnes2019-01-023-4/+4
|
* posix1e: Split out ACL and capability handling from utilTavian Barnes2019-01-029-185/+248
|
* color: Fix more incompatibilities with GNU lsTavian Barnes2019-01-0215-31/+267
|
* color: Check format strings + args for cfprintf()Tavian Barnes2019-01-028-312/+353
| | | | | | %{cc} is now ${cc} to avoid warnings about an unrecognized format specifier, and %P and %L are now %pP and %pL to make them look more like standard format strings.
* diag: Unify diagnostic formattingTavian Barnes2019-01-029-136/+271
| | | | | | This adds a bfs: prefix to error/warning messages for consistency with other command line tools, and leaves only the "error:"/"warning:" part colored like GCC. It also uniformly adds full stops after messages.
* README.md: Fix broken macOS find man page linkTavian Barnes2018-12-301-1/+1
|
* Hide unsupported options from -helpTavian Barnes2018-12-301-0/+6
|
* RELEASES.md: Update for the next releaseTavian Barnes2018-12-301-0/+21
|
* tests: Fix test_exit() to not depend on breadth-first orderingTavian Barnes2018-12-282-16/+1
|
* color: Don't bail out on colors that exist but are NULLTavian Barnes2018-12-281-14/+7
|
* parse: Handle argc == 0Tavian Barnes2018-12-281-0/+6
| | | | | Linux allows you to exec() with no argument list at all. Default to "bfs" in that case.
* stat: Provide a helper for getting human-readable field namesTavian Barnes2018-12-254-60/+73
| | | | And fix -newerXY if the Y time doesn't exist.
* stat: Unify bfs_stat_time() implementationsTavian Barnes2018-12-204-45/+39
|
* stat: Handle statx() not returning some timesTavian Barnes2018-12-192-14/+44
| | | | | | /sys/fs/cgroup, for example, doesn't return access times from statx(). That shouldn't matter unless we actually need them, so make it not an error.
* parse: Fix probabilities when -types are duplicatedTavian Barnes2018-12-191-16/+24
| | | | -type f,f does not have more than a 100% probability of success.
* parse: Add cost info for -acl and -capableTavian Barnes2018-12-191-2/+6
| | | | And set ephemeral_fds correctly too.
* util: Don't leak an acl_t on non-POSIX.1e platformsTavian Barnes2018-12-191-1/+2
|