The release of uutils 0.3, a Rust version of GNU Coreutils.

The release of the uutils coreutils 0.3.0 project (Rust Coreutils) has been published, developing an alternative to the GNU Coreutils package, written in Rust. The coreutils package includes over a hundred utilities, including sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln, and ls. The goal of the project is to create a cross-platform alternative implementation of Coreutils, capable among other things of running on Windows, Redox, and Fuchsia.

Rust Coreutils is utilized by default in the Ubuntu 25.10 release and is applied in the AerynOS (Serpent OS) and Apertis (developed by Collabora) distributions. Unlike GNU Coreutils, the Rust implementation is distributed under the permissive MIT license, instead of the copyleft GPL license. Additionally, the same team of developers is working on Rust-based analogs of the util-linux, diffutils, findutils, and procps utility sets, as well as the sed and login programs.

In the new version of Rust Coreutils:

  • The performance of some utilities has significantly increased; for example, compared to GNU Coreutils, the sort utility is now 3.72 times faster for regular sorting and 1.46 times faster for sorting numbers, base64 is 1.2 times faster, expand is 1.8 times faster, unexpand is 1.5 times faster, nl is 1.57 times faster, fold is 1.19 times faster, and 'uniq -c' is 1.13 times faster.
  • An infrastructure for performance tracking has been created based on the CodSpeed toolkit. The continuous integration system ensures the detection of performance regressions. Performance tests have been added for 15 utilities, including sort, ls, uniq, du, and base64.
  • Safe operation with relative directory paths has been implemented for the rm, du, chmod, and chgrp utilities, based on the use of the openat and unlinkat functions.
  • Security has been enhanced through the use of the crate package nix instead of unsafe libc calls.
  • Error handling has been improved and is now closer to that of GNU Coreutils in many utilities.
  • Compatibility with Coreutils has been enhanced when working with file paths containing and not containing UTF8 characters.
  • Compatibility with the reference test suite of GNU Coreutils has been improved, with 532 tests successfully passing (down from 538 in the previous version), 68 (52) tests failing, and 33 (27) tests skipped. A compatibility level of 83.91% is claimed (down from 87.06%). The decrease in compatibility level is explained by the addition of 16 new tests to the test suite.
  • The date utility has implemented the option '--reference=file' to show the modification time of a file. Due to the absence of this option in Ubuntu, the automatic update checking script stopped working. The date also consolidates the logic for parsing time, enhances compatibility with GNU date in the implementation of the '-d' option, and adds the flag '--resolution' for outputting data on time accuracy.
  • The following options have been implemented: 'basenc --base58', 'id -a', 'ls -f', 'pinky --lookup', 'realpath -E', 'rm --progress'.
  • Extended features, resolved issues, and added missing options for utilities such as base64, basenc, chgrp, chmod, cksum, cp, csplit, date, df, dirname, du, expand, expr, fold, hashsum, hostname, id, install, ln, ls, mv, nl, nohup, numfmt, od, pinky, ptx, realpath, rm, seq, sort, stat, stdbuf, stty, tail, timeout, touch, tsort, unexpand, uniq, uname, wc, who, and uucore.

Source: opennet.ru

Buy reliable website hosting with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster