Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | 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 | |
| | ||||||
* | README: Simplify comparison table | Tavian Barnes | 2022-10-25 | 1 | -4/+1 | |
| | ||||||
* | tests: Fix privilege dropping when run as root | Tavian Barnes | 2022-10-21 | 1 | -1/+1 | |
| | | | | Fixes: 412102712921e2b051da1d2ae9171d67a2a4bd61 | |||||
* | Release 2.6.22.6.2 | Tavian Barnes | 2022-10-21 | 3 | -2/+16 | |
| | ||||||
* | README: Add a <thead> to work around horizontal overflow on Firefox | Tavian Barnes | 2022-10-21 | 1 | -0/+3 | |
| | ||||||
* | tests/gnu/inum_automount: Work around systemd-mount race | Tavian Barnes | 2022-10-21 | 2 | -6/+6 | |
| | | | | | | | | | | | | This test used systemd-mount to set up an automount on scratch/mnt. If a previous test mounted something there, systemd will notice that asynchronously and may not have noticed the unmount by the time that test runs. This led to the test randomly being skipped sometimes when systemd-mount failed. It could be reproduced with a loop like this: $ for _ in {1..10}; ./tests/tests.sh common/L_mount gnu/inum_automount Work around it by using scratch/automnt instead to avoid conflicts. | |||||
* | tests: Always clean scratch before using it | Tavian Barnes | 2022-10-20 | 4 | -0/+4 | |
| | ||||||
* | tests: Add a helper for cleaning scratch | Tavian Barnes | 2022-10-20 | 27 | -38/+50 | |
| | | | | And try to unmount things if the a test left them mounted. | |||||
* | parse: Don't free uninitialized data on error paths | Tavian Barnes | 2022-10-19 | 1 | -0/+13 | |
| | ||||||
* | tests: Coverage number go up | Tavian Barnes | 2022-10-19 | 22 | -2/+101 | |
| | ||||||
* | README: Break inline lists before bullets | Tavian Barnes | 2022-10-19 | 1 | -12/+16 | |
| | ||||||
* | tests: Split test cases into separate files | Tavian Barnes | 2022-10-19 | 773 | -2877/+931 | |
| | ||||||
* | README: Add bullets to inline lists | Tavian Barnes | 2022-10-18 | 1 | -10/+10 | |
| | ||||||
* | util: Use ENOTSUP instead of ENOSYS for stubbed xconfstr() | Tavian Barnes | 2022-10-18 | 1 | -1/+1 | |
| | ||||||
* | README: Move the spacing <p></p> out of the <summary> | Tavian Barnes | 2022-10-18 | 1 | -7/+7 | |
| | ||||||
* | stat: Check Android API level for statx() support | Tavian Barnes | 2022-10-18 | 1 | -1/+1 | |
| | | | | | | Bionic's <sys/stat.h> can define STATX_BASIC_STATS without declaring statx() on lower API levels, so explicitly check for the version it was added in. |