summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Turn on more aggressive format string warningsTavian Barnes2022-12-094-30/+65
|
* Add BFS_FORMATTER() to vprintf()-type functions tooTavian Barnes2022-12-084-0/+8
|
* opt: Pass a va_list to bfs_vwarning(), not bfs_warning()Tavian Barnes2022-12-081-1/+1
| | | | Luckily none of the callers actually pass any arguments.
* Merge pull request #98 from lgtm-migrator/codeqlTavian Barnes2022-12-081-0/+55
|\ | | | | Add CodeQL workflow for GitHub code scanning
| * Add CodeQL workflow for GitHub code scanningLGTM Migrator2022-12-081-0/+55
|/
* trie: Use static_assert() instead of #errorTavian Barnes2022-12-071-3/+1
|
* config: New BFS_COUNTOF macroTavian Barnes2022-12-073-3/+8
|
* expr: Rename bfs_expr_has_children() to _is_parent()Tavian Barnes2022-12-056-14/+14
|
* tests: Allow wildcard patterns like "posix/*"Tavian Barnes2022-12-021-48/+31
|
* parse: Fix crash on -xdev -mountTavian Barnes2022-11-303-1/+22
|
* parse: Pass the right argument when warning about -O9Tavian Barnes2022-11-303-1/+23
|
* expr: Remove the singleton bfs_{true,false} expressionsTavian Barnes2022-11-304-174/+209
|
* expr: Remove the synthetic flagTavian Barnes2022-11-294-22/+8
| | | | | Only diagnostics cares about this, and we can just check if the pointers are equal.
* Dump expression trees in a multi-line formatTavian Barnes2022-11-291-50/+71
|
* config: Support target_clones on more platformsTavian Barnes2022-11-212-1/+8
|
* tests: Avoid syslog() using a low fd on macOSTavian Barnes2022-11-201-5/+16
|
* expr: Don't use reftime for -lsTavian Barnes2022-11-174-9/+12
| | | | | reftime is part of a different union than the print actions are supposed to use.
* trie: Limit target_clones to glibcTavian Barnes2022-11-161-5/+5
| | | | Musl doesn't support ifuncs.
* README: Add acl dependency to FedoraTavian Barnes2022-11-161-1/+1
|
* README: Use `console` syntax highlighting moreTavian Barnes2022-11-161-22/+33
|
* Use BFS_COMMAND over "bfs" in more placesTavian Barnes2022-11-131-5/+8
|
* distcheck: Add ubsan to msan buildTavian Barnes2022-11-111-1/+1
|
* exec: Fix index overflow parsing -exec +Tavian Barnes2022-11-113-1/+5
|
* typo: Array bounds are exclusive, not inclusiveTavian Barnes2022-11-102-1/+2
|
* xregex: Fix build without OnigurumaTavian Barnes2022-11-101-0/+1
|
* Try to report I/O errors earlier and only onceTavian Barnes2022-11-104-10/+50
|
* Revert "exec: Don't flush if the user says no to -ok"Tavian Barnes2022-11-104-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 outputsTavian Barnes2022-11-101-2/+0
|
* parse: Squelch an uninitialized variable warningTavian Barnes2022-11-091-1/+1
|
* trie: Check __has_attribute(target_clones) before using itTavian Barnes2022-11-091-1/+1
|
* ctx: Flush the user/group caches when executing commandsTavian Barnes2022-11-093-24/+43
| | | | | | This fixes (admittedly uncommon) commands like $ bfs -nouser -exec add-missing-user.sh {} \;
* pwcache: Fill the user/group caches lazilyTavian Barnes2022-11-0910-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 statTavian Barnes2022-11-081-0/+1
|
* ci/codecov: Use a tokenTavian Barnes2022-11-081-2/+3
| | | | Workaround for https://github.com/codecov/codecov-action/issues/837
* tests/xtouch: Add some missing POSIX touch featuresTavian Barnes2022-11-085-59/+114
|
* tests/xtouch: New utilityTavian Barnes2022-11-0723-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 Barnes2022-11-073-24/+28
|
* xtime: s/parse_timestamp/xgetdate/Tavian Barnes2022-11-073-12/+12
|
* Fix includesTavian Barnes2022-11-0611-9/+10
|
* bfstd: Rename from util and reorganize itTavian Barnes2022-11-0620-402/+419
|
* config: Split out some of util.h into a new headerTavian Barnes2022-11-0616-188/+205
|
* util: Get rid of BFS_HAS_INCLUDE() wrapper for __has_include()Tavian Barnes2022-11-069-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 availableTavian Barnes2022-11-062-1/+8
|
* util: Use fewer BFS_*() wrappers for feature testingTavian Barnes2022-11-065-27/+19
|
* xspawn: Use _PATH_DEFPATH if _CS_PATH is not definedTavian Barnes2022-11-062-2/+14
| | | | | And set errno correctly if neither one is. Fixes tests/posix/exec_nopath on Android.
* README: Add back empty paragraph for spacingTavian Barnes2022-11-051-0/+1
|
* README: Work around Content-Security-Policy issues with the animationTavian Barnes2022-11-041-4/+3
| | | | Workaround for https://github.com/github/markup/issues/1601.
* codecov: Fix conflicts between src/*.c and tests/*.cTavian Barnes2022-11-031-1/+1
|
* color: Avoid dynamic allocation in get_ext_color()Tavian Barnes2022-11-011-11/+19
|
* trie: Optimize trie_mismatch() with tzcntTavian Barnes2022-11-011-13/+40
|