|
| 1 | +<div align="center"> |
| 2 | + |
| 3 | + |
| 4 | + |
1 | 5 | # uutils AWK |
2 | 6 |
|
3 | | -This is a human, WIP, and clean implementation of an AWK interpreter, written in Rust and compatible with GNU's AWK (`gawk`) bug-for-bug. Expected to be production-ready before Ubuntu 26.10. Made with love. |
| 7 | +[](https://discord.gg/wQVJbvJ) |
| 8 | +[](https://github.com/uutils/awk/blob/main/LICENSE-MIT) |
| 9 | +[](https://github.com/uutils/awk/blob/main/LICENSE-APACHE) |
| 10 | +[](https://deps.rs/repo/github/uutils/awk) |
| 11 | + |
| 12 | +</div> |
| 13 | + |
| 14 | +--- |
| 15 | + |
| 16 | +uutils AWK is a WIP, cross-platform reimplementation of GNU AWK (a.k.a. `gawk`) in |
| 17 | +[Rust](http://www.rust-lang.org). |
| 18 | + |
| 19 | +## Goals |
| 20 | + |
| 21 | +uutils AWK aims to be a drop-in replacement for `gawk`. Differences with GNU |
| 22 | +are treated as bugs. |
| 23 | + |
| 24 | +Our key objectives include: |
| 25 | +- Matching GNU's output (stdout and error code) exactly |
| 26 | +- Better error messages |
| 27 | +- Best-in-class memory safety |
| 28 | +- Improved performance |
| 29 | +- Providing comprehensive internationalization support (UTF-8, etc.) |
| 30 | +- Extensions when relevant |
| 31 | + |
| 32 | +uutils AWK aims to work on as many platforms as possible, to be able to use the same |
| 33 | +utils on Linux, macOS, *BSD, Windows, WASI and other platforms. This ensures, for example, |
| 34 | +that scripts can be easily transferred between platforms. |
| 35 | + |
| 36 | +## Requirements |
| 37 | + |
| 38 | +- Rust (`cargo`, `rustc`) |
| 39 | + |
| 40 | +### Rust Version |
| 41 | + |
| 42 | +uutils AWK follows Rust's release channels and is tested against stable, beta and |
| 43 | +nightly. The minimum supported Rust version at the moment is the previous stable |
| 44 | +version, that is, 1.95.0 at the time of writing. |
4 | 45 |
|
5 | 46 | ## State of the Repo |
6 | 47 |
|
7 | 48 | Check out https://github.com/uutils/awk/issues/16. |
8 | 49 |
|
9 | 50 | ## Contributing |
10 | 51 |
|
11 | | -See [this](https://github.com/uutils/coreutils/blob/main/CONTRIBUTING.md). |
| 52 | +To contribute to uutils AWK, please see [CONTRIBUTING](https://github.com/uutils/coreutils/blob/main/CONTRIBUTING.md). |
12 | 53 |
|
13 | 54 | ## License |
14 | 55 |
|
15 | | -This is licensed under either the MIT License or the Apache License v2.0. See the `LICENSE-MIT` and `LICENSE-APACHE` files for details. |
| 56 | +uutils AWK is licensed under either the MIT License or the Apache v2.0 License - see the `LICENSE-MIT`, `LICENSE-APACHE` files for details. |
| 57 | + |
| 58 | +GNU AWK is licensed under the GPL 3.0 or later. |
0 commit comments