Skip to content

fix(deps): update rust crate uucore to 0.7.0#332

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

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

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Mar 9, 2026

ℹ️ Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Type Update Change
uucore (source) dependencies minor 0.6.00.7.0
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 these updates again.


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

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

@codecov
Copy link

codecov bot commented Mar 9, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 82.07%. Comparing base (a6d85d8) to head (a4991f4).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #332   +/-   ##
=======================================
  Coverage   82.07%   82.07%           
=======================================
  Files          13       13           
  Lines        5445     5445           
  Branches      293      293           
=======================================
  Hits         4469     4469           
  Misses        974      974           
  Partials        2        2           
Flag Coverage Δ
macos_latest 82.51% <ø> (ø)
ubuntu_latest 82.63% <ø> (ø)
windows_latest 0.00% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@renovate renovate bot force-pushed the renovate/uucore-0.x branch from 22a7645 to a4991f4 Compare March 10, 2026 06:27
@codspeed-hq
Copy link

codspeed-hq bot commented Mar 10, 2026

Merging this PR will degrade performance by 2.17%

❌ 1 regressed benchmark
✅ 10 untouched benchmarks

⚠️ Please fix the performance issues or acknowledge them on CodSpeed.

Performance Changes

Benchmark BASE HEAD Efficiency
number_fix 509.8 ms 521.1 ms -2.17%

Comparing renovate/uucore-0.x (a4991f4) with main (a6d85d8)

Open in CodSpeed

@cakebaker cakebaker merged commit 7f16a00 into main Mar 10, 2026
35 of 36 checks passed
@renovate renovate bot deleted the renovate/uucore-0.x branch March 10, 2026 06:50
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