mirror of
https://github.com/uutils/findutils.git
synced 2026-06-10 15:48:30 -07:00
33703b79d83313447c15f3b39d67aa1ffee871fc
Introduce criterion benchmarks (via codspeed-criterion-compat) that drive find and xargs end-to-end through their real entry points, plus a CodSpeed GitHub Actions workflow to track performance on pushes and PRs. - benches/find_bench.rs: walks a generated directory tree exercising the matcher tree (-name/-iname/-regex/-size/-type, grouping, -prune, -printf). Output is sent to a sink so the directory walk and matching dominate. - benches/xargs_bench.rs: feeds a corpus via -a and runs 'true' so xargs' own argument reading/splitting/batching dominates (whitespace, NUL, -n, -s). - .github/workflows/codspeed.yml: mirrors the uutils/grep setup.
findutils
Rust implementation of GNU findutils: xargs, find, locate and updatedb.
The goal is to be a full drop-in replacement of the original commands.
Run the GNU testsuite on rust/findutils:
bash util/build-gnu.sh
# To run a specific test:
bash util/build-gnu.sh tests/misc/help-version.sh
Comparing with GNU
Build/run with BFS
bfs is a variant of the UNIX find command that operates breadth-first rather than depth-first.
bash util/build-bfs.sh
# To run a specific test:
bash util/build-bfs.sh posix/basic
For more details, see https://github.com/uutils/findutils-tracking/
Description
Languages
Rust
98.7%
Shell
1%
Python
0.3%