Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | config: New BFS_COUNTOF macro | Tavian Barnes | 2022-12-07 | 3 | -3/+8 | |
| | ||||||
* | expr: Rename bfs_expr_has_children() to _is_parent() | Tavian Barnes | 2022-12-05 | 6 | -14/+14 | |
| | ||||||
* | tests: Allow wildcard patterns like "posix/*" | Tavian Barnes | 2022-12-02 | 1 | -48/+31 | |
| | ||||||
* | parse: Fix crash on -xdev -mount | Tavian Barnes | 2022-11-30 | 3 | -1/+22 | |
| | ||||||
* | parse: Pass the right argument when warning about -O9 | Tavian Barnes | 2022-11-30 | 3 | -1/+23 | |
| | ||||||
* | expr: Remove the singleton bfs_{true,false} expressions | Tavian Barnes | 2022-11-30 | 4 | -174/+209 | |
| | ||||||
* | expr: Remove the synthetic flag | Tavian Barnes | 2022-11-29 | 4 | -22/+8 | |
| | | | | | Only diagnostics cares about this, and we can just check if the pointers are equal. | |||||
* | Dump expression trees in a multi-line format | Tavian Barnes | 2022-11-29 | 1 | -50/+71 | |
| | ||||||
* | config: Support target_clones on more platforms | Tavian Barnes | 2022-11-21 | 2 | -1/+8 | |
| | ||||||
* | tests: Avoid syslog() using a low fd on macOS | Tavian Barnes | 2022-11-20 | 1 | -5/+16 | |
| | ||||||
* | expr: Don't use reftime for -ls | Tavian Barnes | 2022-11-17 | 4 | -9/+12 | |
| | | | | | reftime is part of a different union than the print actions are supposed to use. | |||||
* | trie: Limit target_clones to glibc | Tavian Barnes | 2022-11-16 | 1 | -5/+5 | |
| | | | | Musl doesn't support ifuncs. | |||||
* | README: Add acl dependency to Fedora | Tavian Barnes | 2022-11-16 | 1 | -1/+1 | |
| | ||||||
* | README: Use `console` syntax highlighting more | Tavian Barnes | 2022-11-16 | 1 | -22/+33 | |
| | ||||||
* | Use BFS_COMMAND over "bfs" in more places | Tavian Barnes | 2022-11-13 | 1 | -5/+8 | |
| | ||||||
* | distcheck: Add ubsan to msan build | Tavian Barnes | 2022-11-11 | 1 | -1/+1 | |
| | ||||||
* | exec: Fix index overflow parsing -exec + | Tavian Barnes | 2022-11-11 | 3 | -1/+5 | |
| | ||||||
* | typo: Array bounds are exclusive, not inclusive | Tavian Barnes | 2022-11-10 | 2 | -1/+2 | |
| | ||||||
* | xregex: Fix build without Oniguruma | Tavian Barnes | 2022-11-10 | 1 | -0/+1 | |
| | ||||||
* | Try to report I/O errors earlier and only once | Tavian Barnes | 2022-11-10 | 4 | -10/+50 | |
| | ||||||
* | Revert "exec: Don't flush if the user says no to -ok" | Tavian Barnes | 2022-11-10 | 4 | -4/+27 | |
| | | | | | | | | | | | From the bfs_ctx_flush() implementation: // Before executing anything, flush all open streams. This ensures that // - the user sees everything relevant before an -ok[dir] prompt But that only works if we call it before the prompt. This reverts commit 21344dfb72f9b65b366ca5f754f1bc35f52da3c7. | |||||
* | docs: Update some example outputs | Tavian Barnes | 2022-11-10 | 1 | -2/+0 | |
| | ||||||
* | parse: Squelch an uninitialized variable warning | Tavian Barnes | 2022-11-09 | 1 | -1/+1 | |
| | ||||||
* | trie: Check __has_attribute(target_clones) before using it | Tavian Barnes | 2022-11-09 | 1 | -1/+1 | |
| | ||||||
* | ctx: Flush the user/group caches when executing commands | Tavian Barnes | 2022-11-09 | 3 | -24/+43 | |
| | | | | | | This fixes (admittedly uncommon) commands like $ bfs -nouser -exec add-missing-user.sh {} \; | |||||
* | pwcache: Fill the user/group caches lazily | Tavian Barnes | 2022-11-09 | 10 | -366/+237 | |
| | | | | | | | Iterating all the users/groups can be expensive, especially with NSS. Android has so many that it doesn't even return them all from get{pw,gr}ent() for performance reasons, leading to incorrect behaviour of -user/-group/etc. | |||||
* | eval: Add missing flag to -D stat | Tavian Barnes | 2022-11-08 | 1 | -0/+1 | |
| | ||||||
* | ci/codecov: Use a token | Tavian Barnes | 2022-11-08 | 1 | -2/+3 | |
| | | | | Workaround for https://github.com/codecov/codecov-action/issues/837 | |||||
* | tests/xtouch: Add some missing POSIX touch features | Tavian Barnes | 2022-11-08 | 5 | -59/+114 | |
| | ||||||
* | tests/xtouch: New utility | Tavian Barnes | 2022-11-07 | 23 | -90/+263 | |
| | | | | | | POSIX touch(1) doesn't include the -h option, and indeed OpenBSD doesn't implement it. Making our own utility also lets us add some handy extensions like -p (create parents) and -M (set permissions). | |||||
* | xtime: Move parse_gettime() to xgettime() | Tavian Barnes | 2022-11-07 | 3 | -24/+28 | |
| | ||||||
* | xtime: s/parse_timestamp/xgetdate/ | Tavian Barnes | 2022-11-07 | 3 | -12/+12 | |
| | ||||||
* | Fix includes | Tavian Barnes | 2022-11-06 | 11 | -9/+10 | |
| | ||||||
* | bfstd: Rename from util and reorganize it | Tavian Barnes | 2022-11-06 | 20 | -402/+419 | |
| | ||||||
* | config: Split out some of util.h into a new header | Tavian Barnes | 2022-11-06 | 16 | -188/+205 | |
| | ||||||
* | util: Get rid of BFS_HAS_INCLUDE() wrapper for __has_include() | Tavian Barnes | 2022-11-06 | 9 | -51/+84 | |
| | | | | | | | | | Since __has_include() needs special preprocessing rules (e.g. not expanding `linux` in `__has_include(<linux/stat.h>)`, macros that expand to __has_include() do not necessarily behave correctly. Instead, we have to directly test `#if __has_include(...)`. See https://bugs.llvm.org/show_bug.cgi?id=37990 for more details. | |||||
* | tests: Skip fstype tests if the mtab isn't available | Tavian Barnes | 2022-11-06 | 2 | -1/+8 | |
| | ||||||
* | util: Use fewer BFS_*() wrappers for feature testing | Tavian Barnes | 2022-11-06 | 5 | -27/+19 | |
| | ||||||
* | xspawn: Use _PATH_DEFPATH if _CS_PATH is not defined | Tavian Barnes | 2022-11-06 | 2 | -2/+14 | |
| | | | | | And set errno correctly if neither one is. Fixes tests/posix/exec_nopath on Android. | |||||
* | README: Add back empty paragraph for spacing | Tavian Barnes | 2022-11-05 | 1 | -0/+1 | |
| | ||||||
* | README: Work around Content-Security-Policy issues with the animation | Tavian Barnes | 2022-11-04 | 1 | -4/+3 | |
| | | | | Workaround for https://github.com/github/markup/issues/1601. | |||||
* | codecov: Fix conflicts between src/*.c and tests/*.c | Tavian Barnes | 2022-11-03 | 1 | -1/+1 | |
| | ||||||
* | color: Avoid dynamic allocation in get_ext_color() | Tavian Barnes | 2022-11-01 | 1 | -11/+19 | |
| | ||||||
* | trie: Optimize trie_mismatch() with tzcnt | Tavian Barnes | 2022-11-01 | 1 | -13/+40 | |
| | ||||||
* | trie: Use target_clones() for popcnt | Tavian Barnes | 2022-10-30 | 1 | -6/+28 | |
| | ||||||
* | trie: Refactor insertion to allocate the leaf in one place | Tavian Barnes | 2022-10-30 | 1 | -49/+48 | |
| | ||||||
* | trie: Make leaves into a linked list | Tavian Barnes | 2022-10-29 | 5 | -45/+91 | |
| | ||||||
* | trie: New is_power_of_two() helper | Tavian Barnes | 2022-10-29 | 1 | -5/+10 | |
| | ||||||
* | trie: Convert ASCII art to Unicode art | Tavian Barnes | 2022-10-29 | 1 | -31/+49 | |
| | ||||||
* | README: Use a different screencast for the light theme | Tavian Barnes | 2022-10-26 | 1 | -1/+6 | |
| |