Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | parse: Treat -d as a flag, not an option | Tavian Barnes | 2019-02-06 | 1 | -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/-xtype | Tavian Barnes | 2019-02-06 | 1 | -0/+4 | |
| | | | | FreeBSD find supports this. | |||||
* | Fix -nouser/-nogroup error handling | Tavian Barnes | 2019-02-06 | 2 | -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 -inum | Tavian Barnes | 2019-02-04 | 1 | -0/+9 | |
| | ||||||
* | Merge branch 'improvements' | Tavian Barnes | 2019-02-01 | 28 | -212/+594 | |
|\ | ||||||
| * | util: Remove some unused macros | Tavian Barnes | 2019-02-01 | 1 | -12/+0 | |
| | | ||||||
| * | opt: Apply data flow optimizations to more numeric ranges | Tavian Barnes | 2019-02-01 | 1 | -79/+208 | |
| | | ||||||
| * | parse: Remove the recommendation to check find -help or man find | Tavian Barnes | 2019-02-01 | 1 | -6/+3 | |
| | | | | | | | | bfs has had a comprehensive help text and man page for a while now. | |||||
| * | tests: New utility for making and testing socket files | Tavian Barnes | 2019-02-01 | 15 | -13/+156 | |
| | | ||||||
| * | eval: Fix wrong colors in error messages | Tavian Barnes | 2019-02-01 | 1 | -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 handling | Tavian Barnes | 2019-02-01 | 6 | -22/+76 | |
| | | | | | | | | | | bfs >&- should complain about a missing file descriptor, rather than silently succeeding. | |||||
| * | Makefile: New distcheck target | Tavian Barnes | 2019-02-01 | 2 | -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 -D | Tavian Barnes | 2019-02-01 | 2 | -7/+24 | |
| | | | | | | | | In case we need to override them at build time. | |||||
| * | stat: Work around msan not knowing about statx() | Tavian Barnes | 2019-01-31 | 2 | -1/+14 | |
| | | ||||||
| * | 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. | |||||
| * | dstring: Initialize freshly-allocated strings | Tavian Barnes | 2019-01-31 | 1 | -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-1 | Tavian Barnes | 2019-01-22 | 1 | -1/+2 | |
|\ \ | |/ |/| | Add instructions for installing via MacPorts | |||||
| * | add instructions for installing via MacPorts | George Plymale II | 2019-01-18 | 1 | -1/+2 | |
|/ | ||||||
* | Release 1.3.21.3.2 | Tavian Barnes | 2019-01-11 | 3 | -2/+11 | |
| | ||||||
* | parse: Allow multiple comma-separated debug flags | Tavian Barnes | 2019-01-11 | 2 | -54/+91 | |
| | ||||||
* | color.c: Fix an out-of-bounds read if LS_COLORS doesn't end in a colon | Tavian Barnes | 2019-01-11 | 1 | -9/+9 | |
| | ||||||
* | Release 1.3.11.3.1 | Tavian Barnes | 2019-01-03 | 3 | -3/+11 | |
| | ||||||
* | posix1e: Don't #include <sys/capability.h> on FreeBSD | Tavian Barnes | 2019-01-03 | 3 | -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-optional | Tavian Barnes | 2019-01-03 | 1 | -3/+3 | |
| | | | | Fixes half of #40. | |||||
* | Release 1.31.3 | Tavian Barnes | 2019-01-02 | 3 | -4/+4 | |
| | ||||||
* | posix1e: Split out ACL and capability handling from util | Tavian Barnes | 2019-01-02 | 9 | -185/+248 | |
| | ||||||
* | color: Fix more incompatibilities with GNU ls | Tavian Barnes | 2019-01-02 | 15 | -31/+267 | |
| | ||||||
* | color: Check format strings + args for cfprintf() | Tavian Barnes | 2019-01-02 | 8 | -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 formatting | Tavian Barnes | 2019-01-02 | 9 | -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 link | Tavian Barnes | 2018-12-30 | 1 | -1/+1 | |
| | ||||||
* | Hide unsupported options from -help | Tavian Barnes | 2018-12-30 | 1 | -0/+6 | |
| | ||||||
* | RELEASES.md: Update for the next release | Tavian Barnes | 2018-12-30 | 1 | -0/+21 | |
| | ||||||
* | tests: Fix test_exit() to not depend on breadth-first ordering | Tavian Barnes | 2018-12-28 | 2 | -16/+1 | |
| | ||||||
* | color: Don't bail out on colors that exist but are NULL | Tavian Barnes | 2018-12-28 | 1 | -14/+7 | |
| | ||||||
* | parse: Handle argc == 0 | Tavian Barnes | 2018-12-28 | 1 | -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 names | Tavian Barnes | 2018-12-25 | 4 | -60/+73 | |
| | | | | And fix -newerXY if the Y time doesn't exist. | |||||
* | stat: Unify bfs_stat_time() implementations | Tavian Barnes | 2018-12-20 | 4 | -45/+39 | |
| | ||||||
* | stat: Handle statx() not returning some times | Tavian Barnes | 2018-12-19 | 2 | -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 duplicated | Tavian Barnes | 2018-12-19 | 1 | -16/+24 | |
| | | | | -type f,f does not have more than a 100% probability of success. | |||||
* | parse: Add cost info for -acl and -capable | Tavian Barnes | 2018-12-19 | 1 | -2/+6 | |
| | | | | And set ephemeral_fds correctly too. | |||||
* | util: Don't leak an acl_t on non-POSIX.1e platforms | Tavian Barnes | 2018-12-19 | 1 | -1/+2 | |
| | ||||||
* | util: Support systems that don't define the POSIX.1e ACL tag values | Tavian Barnes | 2018-12-18 | 1 | -0/+4 | |
| | ||||||
* | travis: Install the POSIX.1e headers | Tavian Barnes | 2018-12-18 | 1 | -0/+8 | |
| | ||||||
* | Implement -acl test | Tavian Barnes | 2018-12-17 | 7 | -2/+110 | |
| | ||||||
* | Add new -capable test | Tavian Barnes | 2018-12-17 | 4 | -0/+33 | |
| | ||||||
* | color: Support coloring files with capabilities | Tavian Barnes | 2018-12-17 | 4 | -5/+115 | |
| | ||||||
* | Makefile: Link with -lrt on Linux | Tavian Barnes | 2018-12-17 | 1 | -2/+14 | |
| | | | | Fixes #29. | |||||
* | tests.sh: Add a --help with usage information | Tavian Barnes | 2018-12-17 | 1 | -1/+36 | |
| | ||||||
* | bftw: Move bftw_typeflag conversion out of util | Tavian Barnes | 2018-12-17 | 6 | -112/+107 | |
| | | | | Turns out incomplete enum types are a GNU C extension. | |||||
* | color: Make extension detection case-insensitive | Tavian Barnes | 2018-12-17 | 1 | -8/+18 | |
| | | | | It's what GNU ls does. |