summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* distcheck: Disable tsan on FreeBSDTavian Barnes2024-05-161-1/+1
| | | | | | | | | ThreadSanitizer has some FreeBSD-specific bugs that are too difficult to work around. In particular, deadlock is possible if any signal with a user-defined handler interrupts an atomic operation. Link: https://github.com/llvm/llvm-project/issues/92313 Link: https://github.com/llvm/llvm-project/issues/92437
* Work around https://github.com/llvm/llvm-project/issues/88163Tavian Barnes2024-05-164-3/+24
|
* ctx: Try to reset TTY state when terminating abnormallyTavian Barnes2024-05-163-51/+105
| | | | Fixes: https://github.com/tavianator/bfs/issues/138
* bar: Use atsigexit() to reset the barTavian Barnes2024-05-161-132/+47
|
* sighook: New utilities for hooking signalsTavian Barnes2024-05-167-0/+777
| | | | This allows multiple hooks to be installed for a single signal.
* atomic: Add a spin_loop() hintTavian Barnes2024-05-151-0/+14
|
* atomic: Add atomic_{thread,signal}_fence() wrappersTavian Barnes2024-05-151-0/+19
|
* xspawn: Mask signals before fork()Tavian Barnes2024-05-151-8/+29
| | | | This prevents signal handlers from running in the child before execve().
* bar: Make SIGWINCH move the cursor out of the barTavian Barnes2024-05-151-23/+16
|
* bar: Defend bfs_bar::fd against signal handler racesTavian Barnes2024-05-091-31/+102
| | | | | This is not currently a problem because bfs_bar_hide() is only ever called while single-threaded, but we might as well program defensively.
* build: Sort generated headersTavian Barnes2024-05-081-4/+4
|
* dstring: Make dstrprintf() return dchar *Tavian Barnes2024-05-082-4/+4
|
* build/has/getdents: Squelch warningsTavian Barnes2024-05-073-9/+6
|
* ci: Save config.log filesTavian Barnes2024-05-071-5/+30
|
* distcheck: Don't build with make -sTavian Barnes2024-05-071-6/+6
| | | | That way I can see the ./configure output on CI.
* prelude: Kill #include <sys/param.h>Tavian Barnes2024-05-071-7/+0
| | | | We don't check for `BSD` anymore.
* build: Check for 1- and 2-argument getmntent() variantsTavian Barnes2024-05-074-2/+23
|
* build: Add a check for getmntinfo()Tavian Barnes2024-05-073-2/+12
|
* mtab: Fix getmntinfo() error checkTavian Barnes2024-05-071-1/+1
| | | | The man pages all say "if an error occurs, zero is returned"
* build: Add checks for strtofflags() and string_to_flags()Tavian Barnes2024-05-074-7/+29
|
* prelude: Remove unused __GLIBC_PREREQ() polyfillTavian Barnes2024-05-071-4/+0
|
* stat: Remove __GNU__ guardTavian Barnes2024-05-071-1/+1
| | | | | The number of people running bfs on Hurd with an outdated glibc version is vanishingly small (I hope).
* stat: Prefer fstat(fd) to fstatat(fd, "", AT_EMPTY_PATH)Tavian Barnes2024-05-071-19/+13
| | | | | | | | | This lets us get rid of the runtime probe for AT_EMPTY_PATH support, and should be more efficient anyway. We still use statx(fd, "", AT_EMPTY_PATH) if available. Link: https://lore.kernel.org/linux-fsdevel/CAHk-=wiYnnv7Kw7v+Cp2xU6_Fd-qxQMZuuxZ61LgA2=Gtftw-A@mail.gmail.com/
* prelude: Kill unused __NetBSD_Prereq__() polyfillTavian Barnes2024-05-071-4/+0
|
* xtime: Don't use timegm() on FreeBSD+msanTavian Barnes2024-05-061-1/+3
|
* xtime: Use the libc's timegm() if presentTavian Barnes2024-05-064-7/+51
|
* build: Don't look for -s inside VAR=val in $MAKEFLAGSTavian Barnes2024-05-031-0/+2
|
* Makefile: Recommend --enable-release over RELEASE=yTavian Barnes2024-05-021-2/+2
|
* Release 3.23.2Tavian Barnes2024-05-022-1/+31
|
* Prefer ./configure --enable-release to RELEASE=yTavian Barnes2024-05-022-3/+3
|
* build: Add some nice aliases to ./configureTavian Barnes2024-05-016-138/+221
|
* build: Listen to make -sTavian Barnes2024-04-3010-55/+115
|
* build: Replace `make config` with a `./configure` scriptTavian Barnes2024-04-2963-387/+445
| | | | | | | | | | This lets us do more traditional out-of-tree builds like $ ../path/to/bfs/configure $ make The .mk files are moved from ./config to ./build, mostly so that ./configure will auto-complete easily.
* bench: Get rid of stray lsTavian Barnes2024-04-271-1/+0
|
* config: Just use NOT to implement NORTavian Barnes2024-04-262-19/+4
|
* config: Move .c files into config/{use,has} subdirectoriesTavian Barnes2024-04-2643-68/+70
|
* bench: Run make config when buildingTavian Barnes2024-04-251-2/+9
|
* config: Add BFS_USE_LIB* to config.h instead of CPPFLAGSTavian Barnes2024-04-259-75/+50
|
* ioq: Fix uninitialized values in ioq_create() cleanup pathTavian Barnes2024-04-241-4/+1
| | | | | | | | I switched from ZALLOC_FLEX() to ALLOC_FLEX() in hopes that msan would catch uninitialized values in ioq_thread_create(), but in doing so, forgot to initialize all fields before the first goto fail. Fixes: f64f76b ("ioq: Copy ring_ops from the previous thread")
* printf: Check dynamic format strings more carefullyTavian Barnes2024-04-242-41/+48
|
* printf: Refactor %y/%Y implementationTavian Barnes2024-04-243-59/+53
|
* ctx: Escape paths when reporting errors in bfs_ctx_free()Tavian Barnes2024-04-241-1/+1
|
* opt: Add missing NULL check in visit_shallow()Tavian Barnes2024-04-241-1/+5
| | | | | visit_shallow() should propagate NULL, but look_up_visitor() dereferences expr to know which visitor to return.
* dstring: Add missing va_end() to dstrvcatf() error pathTavian Barnes2024-04-241-0/+1
|
* eval: Plug memory leak if bfs_opendir() failsTavian Barnes2024-04-247-18/+32
|
* build(deps): bump codecov/codecov-action from 3 to 4dependabot[bot]2024-04-221-1/+1
| | | | | | | | | | | | | | | Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 3 to 4. - [Release notes](https://github.com/codecov/codecov-action/releases) - [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md) - [Commits](https://github.com/codecov/codecov-action/compare/v3...v4) --- updated-dependencies: - dependency-name: codecov/codecov-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
* Enable Dependabot for GitHub ActionsTavian Barnes2024-04-221-0/+6
|
* ci/netbsd: Use cross-platform-actionsTavian Barnes2024-04-221-16/+8
|
* ci/openbsd: Use cross-platform-actionsTavian Barnes2024-04-221-14/+8
|
* ci/freebsd: Use cross-platform-actionsTavian Barnes2024-04-221-14/+8
|