Skip to content

chore(deps): update rust crate uucore to 0.7.0#649

Merged
cakebaker merged 1 commit intomainfrom
renovate/uucore-0.x
Mar 10, 2026
Merged

chore(deps): update rust crate uucore to 0.7.0#649
cakebaker merged 1 commit intomainfrom
renovate/uucore-0.x

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Mar 10, 2026

ℹ️ Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Type Update Change
uucore (source) workspace.dependencies minor 0.6.00.7.0

Release Notes

uutils/coreutils (uucore)

v0.7.0

Compare Source

Rust Coreutils 0.7.0 Release:

We are excited to announce the release of Rust Coreutils 0.7.0 — a performance-focused release with major optimizations across dozens of utilities, continued safety improvements replacing unsafe code with safe abstractions, and a comprehensive campaign to eliminate panics on write errors. We also contributed many patches upstream to GNU coreutils, and welcomed their feedbacks and supports, strengthening both projects!


GNU Test Suite Compatibility:
Result 0.6.0 0.7.0 Change 0.6.0 to 0.7.0 % Total 0.6.0 % Total 0.7.0 % Change 0.6.0 to 0.7.0
Pass 622 629 +7 96.28% 94.59% -1.69%
Skip 7 13 +6 1.08% 1.95% +0.87%
Fail 16 23 +7 2.48% 3.46% +0.98%
Error 1 0 -1 0.15% 0% -0.15%
Total 646 665 +19 (new tests)

Note: The GNU test reference was updated from 9.9 to 9.10, adding 19 new tests. While the pass percentage decreased due to these newly added tests, the absolute number of passing tests increased by 7 and errors were eliminated entirely. Work is ongoing to address the new test failures.


GNU testsuite evolution


Highlights:
  • GNU Compatibility & Upstream Contributions

    • 629 passing tests (+7 from 0.6.0), with 19 new tests added from the GNU 9.10 update
    • Updated GNU test reference from 9.9 to 9.10
    • Contributed numerous patches upstream to GNU coreutils, benefiting both projects
    • New GNU compatibility fixes across date, fmt, kill, ptx, numfmt, cksum, and more
    • Took over maintenance of num-prime, the primality testing library used by factor
  • Performance Overhaul

    • Faster hash maps: rustc-hash in ls, du, tsort, shuf, mv; foldhash in sort
    • unexpand/expand: ASCII fast-path, buffered reads — 14%+ gain in unexpand
    • shuf, split, sort, du: Reduced malloc allocations (+3–6% in du, +4% in shuf)
    • nl: Optimized with itoa and direct writing
    • true/false: Removed clap dependency, smaller binary, faster startup
    • uucore: Disabled signal setup in simple utilities for binary size and startup speed
  • Robustness: Eliminated /dev/full Panics

    • Fixed panics when stderr is /dev/full across 20+ utilities (echo, date, sort, expr, hostname, id, comm, pr, dircolors, and more)
    • Generic fix ensuring unrecognized options with 2>/dev/full do not abort
  • Safety & Code Quality

    • Replaced unsafe libc calls with safe nix crate wrappers in uucore (umask, mkdirat, and more) and mknod
    • Eliminated TOCTOU races in ln, tac, and install -D
    • rm: --preserve-root now works correctly on symlinks
    • MSRV updated to 1.88
  • Notable Bug Fixes

    • date: Extensive fixes — -u/-s/-d flags, timezone abbreviation lookup and DST, RFC-822 format, %+/%_ modifiers, --debug, locale date_fmt
    • cp: Readonly directories, -a/-z flags, special files, non-UTF-8 directory names
    • mv: Preserve symlinks during cross-device moves, handle FIFOs in directories
    • ls: Hyperlink OSC 8 format, dired reports, fd leak on deep recursion, invalid UTF-8 hidden files
    • sort: Collator panic in worker threads, scientific notation parsing
    • paste: Multi-byte delimiters, GNU escape sequences, bounded buffering
    • printf: %q shell quoting with control chars and quotes
    • ptx: -t/--typeset-mode, multibyte Unicode panic, GNU default behavior
    • numfmt: --debug flag, empty delimiter, null byte handling, error message formatting
    • cksum: SHAKE algorithms, --binary/--text/--tag errors
    • cut, tac, tail, tr, uniq, od, chroot, stat, mktemp, pr, readlink, ln, kill, nproc, rm, env, sync, fmt, factor, wc: Various GNU compatibility and correctness fixes
  • Platform Support

    • NetBSD and PowerPC build fixes
    • Windows: tac stdin piping, test -r/-w/-x, publish static *.exe binaries
    • WebAssembly: Publish *.wasm artifacts
    • stdbuf: Support libstdbuf in same directory as binary
    • NixOS test compatibility fix; added security audit workflow
  • Contributions: This release was made possible by 23 new contributors joining our community


Call to Action:

Help us translate - Contribute translations at Weblate
Sponsor us on GitHub to accelerate development: github.com/sponsors/uutils

What's Changed

cat

cksum

chroot

comm

coreutils

cp

csplit

cut

date

dd

df

dircolors

du

echo

env

expand

expr

  • expr --version >/dev/full panics & --help > /dev/full should fail by @​oech3 in #​10854

factor

false

fmt

fold

hostname

id

install

kill

ln

ls

mktemp

mknod

mv

nl

nproc

numfmt

od

paste

pr

printf

ptx

readlink

rm

shuf

sort

split

stat

stdbuf

stty

sync

tac

tail

test

tr

true

tsort

unexpand

uniq

uptime

vdir

wc

whoami

uucore

CI & Build

Documentation

Code Quality & Cleanup

Dependency Updates


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot force-pushed the renovate/uucore-0.x branch from ad7f5d9 to 112582b Compare March 10, 2026 13:10
@cakebaker cakebaker merged commit c5a928e into main Mar 10, 2026
37 of 40 checks passed
@renovate renovate bot deleted the renovate/uucore-0.x branch March 10, 2026 17:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant