Sylvestre Ledru f0ae449d11 tests: run the GNU grep testsuite against uu_grep
Add util/fetch-gnu.sh (downloads the GNU grep 3.12 release tarball from
ftp.gnu.org) and util/run-gnu-testsuite.sh, which reuses the gnulib test
framework shipped in the tarball (tests/init.sh + init.cfg) and injects the
Rust grep binary via PATH, replicating tests/Makefile.am's TESTS_ENVIRONMENT.
Each test is classified by its gnulib exit code (0=PASS, 77=SKIP, else FAIL)
and results are emitted as JSON.

Modelled on ../sed (lightweight PATH-injection runner) and ../coreutils
(release-tarball fetch). Current baseline: 61 pass / 39 fail / 28 skip of 128
tests -- the failures quantify the remaining GNU-compatibility gap.
2026-05-29 18:43:11 +02:00
2026-05-28 20:19:53 +02:00
2026-05-29 10:12:38 +02:00
2026-05-28 22:32:49 +02:00
2026-05-28 20:19:53 +02:00
2026-05-28 20:19:53 +02:00
2026-05-28 22:37:01 +02:00
2026-05-28 20:19:53 +02:00
2026-05-28 20:19:53 +02:00
2026-05-28 20:19:53 +02:00
2026-05-28 20:19:53 +02:00

Crates.io Discord License dependency status

CodeCov

Grep, now in Rust

A Rust implementation of GNU Grep. This project is an initial release and may contain bugs.

Building

Download Rust at: https://rustup.rs/

# Check out this repository
git clone https://github.com/uutils/grep
cd grep

# Build a release version
cargo build --release

# Run!
./target/release/grep --help

# Run tests (if needed; after making changes)
cargo test

Known Issues

  • Does not take LANG, etc., into account for handling file encodings (non-UTF8 matches are treated as binary)
  • No localization support yet

Contributing

To contribute to uutils, please see CONTRIBUTING.

License

uutils is licensed under the MIT License - see the LICENSE file for details

GNU Grep is licensed under the GPL 3.0 or later.

S
Description
No description provided
Readme MIT 272 KiB
Languages
Rust 90.9%
Shell 6.4%
Python 2.7%