Skip to content

build(deps): bump uucore from 0.2.2 to 0.10.0 - #590

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/cargo/uucore-0.9.0
Open

build(deps): bump uucore from 0.2.2 to 0.10.0#590
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/cargo/uucore-0.9.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jul 10, 2026

Copy link
Copy Markdown
Contributor

Bumps uucore from 0.2.2 to 0.10.0.

Release notes

Sourced from uucore's releases.

0.10.0

Rust Coreutils 0.10.0 Release:

We are happy to announce the release of Rust Coreutils 0.10.0 - a release focused on GNU compatibility and robustness. The GNU test suite results improved sharply this cycle (645 passing, 29 failing, down from 56), we landed a second wave of security hardening (TOCTOU races, safe recursive descent, SELinux labeling at creation, backup guards), and we ran a broad anti-panic campaign across the utilities. On top of that: new features (mv --exchange, install --reflink, an OpenSSL backend for the checksum utilities), more zero-copy/read-ahead performance work, and wasm32-wasip2 support.


GNU Test Suite Compatibility:

Result 0.9.0 0.10.0 Change 0.9.0 to 0.10.0 % Total 0.9.0 % Total 0.10.0 % Change 0.9.0 to 0.10.0
Pass 625 645 +20 90.58% 93.48% +2.90%
Skip 8 15 +7 1.16% 2.17% +1.01%
Fail 56 29 -27 8.12% 4.20% -3.92%
Error 1 1 0 0.14% 0.14% 0%
Total 690 690 0

Note: 0.9.0 bumped the GNU reference to 9.11, which added 25 new tests and temporarily pushed the failure count up. This cycle absorbed most of that debt: failures dropped from 56 to 29 and passes reached an all-time high of 645. As we contributed many tests to the GNU implementation, we are also the source of some of these regressions!


GNU testsuite evolution


Highlights:

  • GNU Compatibility

    • 645 passing GNU tests (+20) and 27 fewer failures, the largest single-cycle drop we have had
    • Dozens of behavior alignments: pr (-w/-W/-l/-e/-o, merge mode, page ranges), nproc (cgroups v2 quota, affinity mask, offline cores, OMP_* handling), date (out-of-range years, -d -, O modifier, timezone strings), numfmt, ls, du, install, od, truncate, fold, head/tail, sum, stat
    • Many error messages now carry the file name and the real OS error instead of a vague or stripped message
  • Security Hardening

    • Continued the TOCTOU work started in 0.9.0: touch no longer uses O_TRUNC on create, mkfifo drops the path-based chmod, head checks the open fd instead of the path, split hardens the output-open path, chcon anchors recursive relabeling to the traversal dirfd
    • Safe recursive descent fixes for chmod/chown (symlink cycles, --preserve-root re-checked during the descent), and cp no longer descends into a destination subdirectory that is a symlink
    • SELinux labels are now applied at creation in mkdir, mkfifo and mknod instead of being applied afterwards
    • mv fails closed when recreating a cross-device directory destination, compares file identity in the --backup=simple guard, and strips setuid/setgid when a cross-device copy cannot preserve ownership
    • chroot chroots exactly the path --skip-chdir validated; stdbuf refuses a libstdbuf path that cannot be represented in LD_PRELOAD; install finalizes ownership before mode
    • Added SECURITY.md documenting our threat model, scope and reporting process
  • Robustness: Anti-Panic Campaign

    • Removed panics and aborts across a long list of utilities: shuf, printf, numfmt, fmt, pr, chroot, dircolors, install, ln, touch, stat, split, expand, more, kill, cp, du, rm, runcon, sort, chown/chgrp, dirname, expr, cksum, dd, truncate, hashsum
    • Recurring classes fixed: write failures on /dev/full, char-boundary panics on multibyte input, integer overflow on extreme widths/precisions/sizes, and unbounded allocations for huge arguments
    • expr now uses an iterative parser, so deeply nested expressions no longer overflow the stack
  • New Features

    • mv --exchange to atomically swap two paths
    • install --reflink support, and install -C now works with --preserve-timestamps
    • OpenSSL backend for the faster checksum utilities

... (truncated)

Commits
  • 28b6856 cut: use then_some instead of then
  • 6ab8da7 cut: rename function & vars
  • bd7d896 cut: simplify match
  • 813dc15 cut: move code to new get_selected_mode_arg fn
  • cfbfccb cut: return early if invalid arg combinations
  • 9bbb13d cut: return early if incorrect number of mode args
  • e7906a0 cp: simplify loop by while let
  • 0b214cc paste: simplify 2 loop by while
  • 61cac11 od: remove enum var not used at production
  • a0e62f4 du: Refactor loop into while let
  • Additional commits viewable in compare view

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file rust Pull requests that update rust code labels Jul 10, 2026
Bumps [uucore](https://github.com/uutils/coreutils) from 0.2.2 to 0.10.0.
- [Release notes](https://github.com/uutils/coreutils/releases)
- [Commits](uutils/coreutils@0.2.2...0.10.0)

---
updated-dependencies:
- dependency-name: uucore
  dependency-version: 0.9.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot changed the title build(deps): bump uucore from 0.2.2 to 0.9.0 build(deps): bump uucore from 0.2.2 to 0.10.0 Aug 6, 2026
@dependabot
dependabot Bot force-pushed the dependabot/cargo/uucore-0.9.0 branch from 82ddb82 to 180732f Compare August 6, 2026 06:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file rust Pull requests that update rust code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants