Rust Coreutils 0.11.0 Release:
We are happy to announce the release of Rust Coreutils 0.11.0 - a release focused on error messages, performance and GNU compatibility.
The big change is a new diagnostic engine built on ariadne. When a chmod mode, a cut list, a sort key or a tr set fails to parse, we now echo the arguments back with a caret under the character at fault, like a compiler does. See our blog post for more information: https://uutils.org/blog/2026-08-error-diagnostics/
Example with cut:
or test:
PGO release builds are enabled for Linux, macOS and Windows (up to 31% faster), and a lot of per-utility optimization work landed on top of that. We also now treat a utility being significantly slower than GNU as a bug.
We continued to improve the GNU compatibility and we are now at 653 passing, 22 failing, 0 errors.
GNU Test Suite Compatibility:
| Result | 0.10.0 | 0.11.0 | Change 0.10.0 to 0.11.0 | % Total 0.10.0 | % Total 0.11.0 | % Change 0.10.0 to 0.11.0 |
|---|---|---|---|---|---|---|
| Pass | 645 | 653 | +8 | 94.44% | 95.33% | +0.89% |
| Skip | 9 | 10 | +1 | 1.32% | 1.46% | +0.14% |
| Fail | 28 | 22 | -6 | 4.10% | 3.21% | -0.89% |
| Error | 1 | 0 | -1 | 0.15% | 0% | -0.15% |
| Total | 683 | 685 | +2 (new tests) |
Note: 653 passing and 23 failing are both records for us, and this is the first release with no erroring test. Note that the suite grew by 2 tests this cycle (local backport). We also list the tests excluded from the pass/fail percentages now.
Highlights:
- Modern Error Diagnostics (new)
- A new diagnostic engine based on ariadne. When stderr is a terminal, a parse error is printed as a report: the arguments are echoed back as a source line, a caret marks the culprit and a help line explains the syntax. See the blog post for before/after examples
- Carets landed in
chmod,mkdir,mkfifo,mknod,install,tr,expr,sort,numfmt,cut,env,head,tail,truncate,split,shred,stdbuf,od,seq,dd,stat,join,csplit,ls,dfanddu - A caret can point inside a quoted argument and at a single character. The reports are localized (format, checksum and advice strings) and still print the usual
Try '... --help'hint. A label is only added when it says something useful UUTILS_DIAGcontrols the behavior, and the caret rendering can be compiled out for size-constrained builds-
Diagnostics are written in a single
stderrcall, so concurrent writers cannot interleave them -
Performance
- PGO (profile-guided optimization) release builds: up to 31% faster - now enabled for the published Linux, macOS and Windows artifacts too.
cp: opens the file only once (+32.93%) and reuses the already-open destination fd when a reflink clone falls backjoin: 1.37x faster on paired input, 2.5x faster than GNU, by skipping the locale comparison when it cannot change the resultod --skip-bytesusessplice(2)on non-seekable input;tacusesfast_copy;ddno longer faults in the whole copy buffer before reading and page-aligns its read buffer- Fewer allocations and syscalls in
ptx(+4% via fxhash, plus fewer per-word allocations),nl(hoisted per-line prefix),tail(no double allocation per reverse chunk, nostat),expand/unexpand(nostat/is_dir),numfmtandsort - New benchmarks for
ptx,basencand thenumfmtstdin path -
A utility being significantly slower than GNU is now considered a bug - please report it as one
-
GNU Compatibility
- 653 passing GNU tests (+8), 23 failures (-6) and no erroring test
- New GNU-matching options:
uname -A/--all-labeled,cut -Fand--whitespace-delimited,pr --columns/--join-lines/-falias and an optional argument for-n - Behavior fixes in
pr(page length of exactly 10, columns that do not divide evenly,-eat the end of a cluster),numfmt(leading+, scientific notation),uniq/truncate/paste(a repeated option overrides the earlier one),join -oaccumulating fields,idgroup ordering,unexpand/expandtab-list separators,mkdirEEXIST,more -f/-l,foldwidths,sort -t=,statnanosecond timestamps andBlock size,od16 significant digits,datetrailing timezones - A new
gnu/usage_vs_refs.shcheck verifies that every option we document also appears in GNU's texi docs -
More error messages carry the real OS text instead of a stripped or made up one (
rm,env,od,chroot,stdbuf,tee,cut,date,tsort,pathchk,sort) -
Security Hardening
mv/cp: xattr TOCTOU fixed by moving to file-descriptor-based operationsrm: no longer follows a symlink swapped in at the-roperandchmod: usesfchmodatfor recursive mode changes and no longer follows in-tree symlinks with-R --referencecp: does notchmodthrough the destination symlink;mvdoes not put a symlink in its target's hardlink group-
stdbuf: fixed a temporary-directory leak -
Robustness: Anti-Panic & Anti-Hang
- Hangs fixed:
splitendless loop,yesdeadlock,sortLinesfuse when a chunk boundary lands exactly at EOF - Panics and aborts fixed in
statandcspliton/dev/full,lswith an invalidQUOTING_STYLEon unwritable stderr,odon large ASCII dump widths,printfon large numeric and%s/%cfield widths,nlwith-w i32::MAX(rejection plus a 32-bit OOM fix),prandcsplitinteger overflow,ddu64wraparound,touchleap-second year overflow,tail -c +Npast the seek limit,tacSIGBUSon a truncated mmap,who -qstdout write errors -
uucore::parse_sizeno longer overflows on a large%size -
Cross-platform Reach
- Windows:
killanduptimeimplementations, andtest -ef,-t,-h/-L,-r,-w,-x - WASI:
touchtimestamps,cpsymlinks,expr, cleaned-up core platform abstractions andcatintegration coverage -
dfgot a fallbackstatfspath using the mount table;uptimedropped its/procdependency on more targets;sttyandchgrpare now gated by target support; better iOS and Fuchsia handling -
Dependency Diet
-
Dropped
byteorder,same-file,filetime,winapi-util,file_diff,mockstream,binary-heap-plus,compare,arrayref,exaclanddns-lookupin favor ofstd,rustixandwindows-sys -
Internationalization
- Symbolic mode parsing errors, the
chmod --verbosemessages and the new diagnostic strings are now translatable lssorts names using locale-aware collation,commcompares lines with the locale collation,nlsupports multibyte one-character section delimiters andcuthandles multibyte fields, bytes and delimiters correctly-
uucorerebuilds its embedded locales when the consumer's dependencies change -
Contributions: This release landed 358 pull requests from 26 new contributors. We also passed 1000 people having contributed to uutils coreutils. Per our activity tracking, August 2026 was our busiest month so far, with 476 commits from 57 authors
Call to Action:
Try it in your browser - Online Playground powered by WebAssembly Help us translate - Contribute to Rust Coreutils on Weblate Sponsor us on GitHub to accelerate development: github.com/sponsors/uutils
What's Changed
base32
- base32: simplify loop by @oech3 in https://github.com/uutils/coreutils/pull/13915
basename
- basename: simplify handling missing operand by @oech3 in https://github.com/uutils/coreutils/pull/14202
basenc
- basenc: add benchmark by @myunbin in https://github.com/uutils/coreutils/pull/14022
cat
- cat: remove unnecessary impl by @oech3 in https://github.com/uutils/coreutils/pull/13819
- cat: reduce nest & avoid accessing by index by @oech3 in https://github.com/uutils/coreutils/pull/13820
- cat: catch 2nd+ splice's error by @oech3 in https://github.com/uutils/coreutils/pull/13847
- cat: always exit with 1 on error by @mtvb in https://github.com/uutils/coreutils/pull/14216
chmod
- chmod: only report umask-curtailed modes for option-like operands by @dhruv-15-03 in https://github.com/uutils/coreutils/pull/13731
- chmod: don't follow in-tree symlinks with -R --reference by @Angadi56 in https://github.com/uutils/coreutils/pull/13842
- chmod: translate chmod-verbose-neither-changed much more by @oech3 in https://github.com/uutils/coreutils/pull/13872
- chmod: use the libc fchmodat symbol for recursive mode changes by @sylvestre in https://github.com/uutils/coreutils/pull/14121
- chmod: remove duplicate code handling symlinks by @cakebaker in https://github.com/uutils/coreutils/pull/13873
- chmod: simplify a nested match by @Devel08 in https://github.com/uutils/coreutils/pull/14234
chroot
- chroot: strip errno by @oech3 in https://github.com/uutils/coreutils/pull/14114
- chroot: extract proper error message from OS by @oech3 in https://github.com/uutils/coreutils/pull/13884
cksum
- cksum: do not guard openssl by unix for MinGW by @oech3 in https://github.com/uutils/coreutils/pull/13821
- cksum: fix typo in comment by @cakebaker in https://github.com/uutils/coreutils/pull/13871
comm
- test(comm): enable --check-order/--nocheck-order order-checking tests by @AH64-dll in https://github.com/uutils/coreutils/pull/13969
- comm: add missing error-write locale by @Devel08 in https://github.com/uutils/coreutils/pull/14140
- comm: compare lines with the locale collation by @luantaraschi in https://github.com/uutils/coreutils/pull/14047
cp
- cp: don't chmod through the destination symlink by @Angadi56 in https://github.com/uutils/coreutils/pull/13443
- cp: support symlinks on WASI by @DePasqualeOrg in https://github.com/uutils/coreutils/pull/13804
- cp: reject --attributes-only self-copies (#13161) by @alexchen-sys in https://github.com/uutils/coreutils/pull/13894
- cp: use default suffix when backup suffix is empty by @TheAdamWarlock in https://github.com/uutils/coreutils/pull/13966
- cp: honor --reflink=never on macOS by @nagendramohan in https://github.com/uutils/coreutils/pull/14076
- tests_cp.rs: replace filetime by std by @oech3 in https://github.com/uutils/coreutils/pull/14174
- cp: label the destination of -Z when it is named relatively by @sylvestre in https://github.com/uutils/coreutils/pull/14161
- cp: reuse the open dest fd when a reflink clone falls back by @sylvestre in https://github.com/uutils/coreutils/pull/14136
- tests_cp.rs: ensure error of ioctl is catched when --reflink=always by @oech3 in https://github.com/uutils/coreutils/pull/14270
- test_cp.rs: fix error message of ficlone on musl by @oech3 in https://github.com/uutils/coreutils/pull/14273
- cp: open file only once (+32.93%) + add tests for mv & cp by @sylvestre in https://github.com/uutils/coreutils/pull/14272
csplit
- csplit: avoid negate-with-overflow on an i32::MIN regex line offset by @leeewee in https://github.com/uutils/coreutils/pull/13753
- csplit: don't panic on /dev/full stdout by @Devel08 in https://github.com/uutils/coreutils/pull/14130
cut
- cut: match GNU diagnostics for invalid ranges and options by @sylvestre in https://github.com/uutils/coreutils/pull/13925
- cut: add -F option and --whitespace-delimited=trimmed, fix -s/-n edge cases by @sylvestre in https://github.com/uutils/coreutils/pull/13926
- cut: char-aware multibyte field, byte and delimiter handling by @sylvestre in https://github.com/uutils/coreutils/pull/13927
- cut: allow shortcuts for
--whitespace-delimitedby @cakebaker in https://github.com/uutils/coreutils/pull/13972 - cut, dd: use plain text help headings by @fly1d in https://github.com/uutils/coreutils/pull/13982
- cut: strip i/o errno by @Devel08 in https://github.com/uutils/coreutils/pull/14060
- cut: simplify by .map_err by @oech3 in https://github.com/uutils/coreutils/pull/14074
- cut: improve and shorten help text by @cakebaker in https://github.com/uutils/coreutils/pull/13985
- cut: rename const
NOTHINGtoNO_PARTIALby @cakebaker in https://github.com/uutils/coreutils/pull/14042
date
- date: strip errno when write to stdout fails by @Devel08 in https://github.com/uutils/coreutils/pull/14206
- date: update parse_datetime to 0.16.0 to accept \v and \f as whitespace by @wtcpython in https://github.com/uutils/coreutils/pull/14221
- date: reject a trailing timezone when the input already has one by @ARMeeru in https://github.com/uutils/coreutils/pull/14168
dd
- dd: give the delayed reader test more slack between writes by @sylvestre in https://github.com/uutils/coreutils/pull/13945
- dd: report transfer statistics when the copy fails by @sylvestre in https://github.com/uutils/coreutils/pull/13856
- dd: stop faulting in the whole copy buffer before reading by @luantaraschi in https://github.com/uutils/coreutils/pull/14044
- dd: page-align read buffer by @chrboe in https://github.com/uutils/coreutils/pull/12143
- dd: u64 wraparound fix by @mtvb in https://github.com/uutils/coreutils/pull/14200
df
- df: simplify fn find_mount_point by @oech3 in https://github.com/uutils/coreutils/pull/13916
- df: add a fallback path for statfs with a mount table by @Gelbpunkt in https://github.com/uutils/coreutils/pull/12072
- df: split platform specific code by @nikolalukovic in https://github.com/uutils/coreutils/pull/14080
dircolors
- dircolors: turn integration test into unit tests by @cakebaker in https://github.com/uutils/coreutils/pull/12507
dirname
- dirname: simplify handling missing operand by @oech3 in https://github.com/uutils/coreutils/pull/14203
env
- env: extract error message from OS instead of showing unknown error by @oech3 in https://github.com/uutils/coreutils/pull/13960
- env: avoid accessing by index & simplify loop by @oech3 in https://github.com/uutils/coreutils/pull/14107
expand
- expand: simplify match by @oech3 in https://github.com/uutils/coreutils/pull/14082
- expand: remove .is_dir() overhead by @oech3 in https://github.com/uutils/coreutils/pull/13203
- expand: accept tab as tab-list separator by @cakebaker in https://github.com/uutils/coreutils/pull/14204
expr
- expr: remove redundant about text from after-help by @alexchen-sys in https://github.com/uutils/coreutils/pull/13987
- expr: fix bug-prone index access pattern by @oech3 in https://github.com/uutils/coreutils/pull/13596
fmt
- fmt: remove condition that is always true by @cakebaker in https://github.com/uutils/coreutils/pull/13809
- fmt: simplify match by @oech3 in https://github.com/uutils/coreutils/pull/14093
fold
- fold: match GNU error messages for an invalid -w/--width value by @AlejandroCoronadoN in https://github.com/uutils/coreutils/pull/14056
- fold: do not fold a bytewise line that is exactly the width by @Socialpranker in https://github.com/uutils/coreutils/pull/14189
hashsum
- *sum: hide the legacy --text from document by @oech3 in https://github.com/uutils/coreutils/pull/14131
head
- head: fix flaky
test_zero_bytes_with_suffixby @cakebaker in https://github.com/uutils/coreutils/pull/13768 - head: propagate a write error from the -v filename header by @MsfPablo in https://github.com/uutils/coreutils/pull/13996
- head, tail: keep leading zeros in an invalid count message by @arbelonson-source in https://github.com/uutils/coreutils/pull/14249
hostname
- hostname: remove dns-lookup dependency by @xtqqczze in https://github.com/uutils/coreutils/pull/14198
id
- id: order groups= by effective gid and -G by real gid, like GNU by @sylvestre in https://github.com/uutils/coreutils/pull/14103
install
- install: allow non-directory special files as targets by @MsfPablo in https://github.com/uutils/coreutils/pull/13791
- install: strip "(os error N)" from --strip-program failure by @MsfPablo in https://github.com/uutils/coreutils/pull/13914
- install: remove filetime from dep by @oech3 in https://github.com/uutils/coreutils/pull/13947
- install, comm: remove file_diff in favor of uucore::fs::are_files_identical by @wtcpython in https://github.com/uutils/coreutils/pull/14113
- test_install.rs: test for ficlone (reflink) by @oech3 in https://github.com/uutils/coreutils/pull/13580
- install: reduce nest by if & match by @oech3 in https://github.com/uutils/coreutils/pull/13346
- install: remove a to_string_lossy by @oech3 in https://github.com/uutils/coreutils/pull/13338
- tests_install.rs: replace filetime by std by @oech3 in https://github.com/uutils/coreutils/pull/14172
join
- join: let -o accumulate fields across occurrences like GNU by @AlejandroCoronadoN in https://github.com/uutils/coreutils/pull/14070
- join: report the field number the user gave by @MsfPablo in https://github.com/uutils/coreutils/pull/13995
- join: 1.37x faster on paired input, 2.5x faster than GNU, by skipping the locale compare by @sylvestre in https://github.com/uutils/coreutils/pull/14213
- join, od: report a hyphen-leading value instead of rejecting it by @arbelonson-source in https://github.com/uutils/coreutils/pull/14257
kill
- kill: implementation for Windows by @nikolalukovic in https://github.com/uutils/coreutils/pull/13604
- kill: skip flaky realtime signal test on i686 by @sylvestre in https://github.com/uutils/coreutils/pull/13943
- kill: skip realtime signal tests when the signal is ignored by @sylvestre in https://github.com/uutils/coreutils/pull/13953
- kill: fix for accepted duplicate signal prefixes by @mtvb in https://github.com/uutils/coreutils/pull/14178
ln
- hard link creation failure has src and dst swapped in error message by @Devel08 in https://github.com/uutils/coreutils/pull/13745
- ln: swap dest & source in french locale by @Devel08 in https://github.com/uutils/coreutils/pull/13905
- ln: remove pub to improve the public API by @oech3 in https://github.com/uutils/coreutils/pull/14225
- ln: avoid accessing by index & simplify if by @oech3 in https://github.com/uutils/coreutils/pull/14197
- ln: clarify exclusive pattern by @oech3 in https://github.com/uutils/coreutils/pull/14266
ls
- ls: use locale-aware collation for name sort by @sylvestre in https://github.com/uutils/coreutils/pull/11841
- ls: only track listed directories when recursing by @sylvestre in https://github.com/uutils/coreutils/pull/13855
- ls: reduce cfg for fn symlink by @oech3 in https://github.com/uutils/coreutils/pull/13911
- ls: simplify long if block by unwrap_or by @oech3 in https://github.com/uutils/coreutils/pull/13917
- ls: exit with code 2 on write error by @Devel08 in https://github.com/uutils/coreutils/pull/14111
- ls: fix QUOTING_STYLE=invalid ls 2>/dev/full SIGABRT by @oech3 in https://github.com/uutils/coreutils/pull/13209
- ls: test that an invalid QUOTING_STYLE does not abort on unwritable stderr by @sylvestre in https://github.com/uutils/coreutils/pull/14138
mkdir
- mkdir: return a proper error mesage when dir is inexistent by @Devel08 in https://github.com/uutils/coreutils/pull/13836
- strip errno when argument is not a directory but an existing file by @Devel08 in https://github.com/uutils/coreutils/pull/13890
- mkdir: do not ignore EEXIST on non-recursive creation by @alexchen-sys in https://github.com/uutils/coreutils/pull/13986
mkfifo
- mkfifo: use std::io::Result, remove manual conversion by @oech3 in https://github.com/uutils/coreutils/pull/13777
- mkfifo: fix mismatched types error on freebsd by @xtqqczze in https://github.com/uutils/coreutils/pull/14259
mktemp
- mktemp: remove the temp file when its name cannot be printed by @sylvestre in https://github.com/uutils/coreutils/pull/13853
more
- more: swap -f and -l short flags to match GNU/util-linux by @c-tonneslan in https://github.com/uutils/coreutils/pull/12337
mv
- mv: use GNU default error when overwriting non-empty directory by @aaron-ang in https://github.com/uutils/coreutils/pull/10078
- tests_mv.rs: replace filetime by std by @oech3 in https://github.com/uutils/coreutils/pull/13948
- mv: don't put a symlink in its target's hardlink group by @sylvestre in https://github.com/uutils/coreutils/pull/14170
nl
- nl: continue processing files after error by @lauchimoon in https://github.com/uutils/coreutils/pull/13778
- nl: support multibyte one-char section delimiters by @cakebaker in https://github.com/uutils/coreutils/pull/13848
- nl: simplify match by @oech3 in https://github.com/uutils/coreutils/pull/13921
- nl: hoist the per-line blank-line prefix allocation by @haydonryan in https://github.com/uutils/coreutils/pull/13920
- nl: reject -w values > i32::MAX to avoid capacity-overflow panic by @koopatroopa787 in https://github.com/uutils/coreutils/pull/13348
- nl: avoid OOM on 32-bit when -w i32::MAX is used by @sylvestre in https://github.com/uutils/coreutils/pull/14078
- nl: drop unused translation by @oech3 in https://github.com/uutils/coreutils/pull/14072
numfmt
- numfmt: benchmark the stdin path, not only arguments by @sylvestre in https://github.com/uutils/coreutils/pull/13993
- numfmt: name the only conversion in a bad --format directive by @sylvestre in https://github.com/uutils/coreutils/pull/14001
- numfmt: improve performances by @sylvestre in https://github.com/uutils/coreutils/pull/14003
- numfmt: reject a leading + and scientific notation to match GNU by @AlejandroCoronadoN in https://github.com/uutils/coreutils/pull/13899
od
- od: avoid panic on large ASCII dump widths by @0Whisperos in https://github.com/uutils/coreutils/pull/13787
- od: replace hardcoded error massage by OS's message by @oech3 in https://github.com/uutils/coreutils/pull/13959
- od: improve perf for --skip-bytes non-seekable input by splice(2) by @oech3 in https://github.com/uutils/coreutils/pull/13748
- od: remove mockstream which is not used at production by @oech3 in https://github.com/uutils/coreutils/pull/13968
- od: match GNU's 16 significant digits for f64 output by @sylvestre in https://github.com/uutils/coreutils/pull/13965
- od: simplify a match in input_decoder.rs by @Devel08 in https://github.com/uutils/coreutils/pull/14006
- od: remove unused properties from
InputDecoderby @cakebaker in https://github.com/uutils/coreutils/pull/14023 - od, ls: simplify match by @oech3 in https://github.com/uutils/coreutils/pull/14100
- od: replace byteorder with std endian methods by @wtcpython in https://github.com/uutils/coreutils/pull/14094
pathchk
- pathchk: readable error message without scrolling terminal by @oech3 in https://github.com/uutils/coreutils/pull/13220
- pathchk: reject missing operand by clap by @oech3 in https://github.com/uutils/coreutils/pull/14147
- pathchk: prepend pathchk: to error message & improve error for long name by @oech3 in https://github.com/uutils/coreutils/pull/14146
pinky
- pinky: make tests resilient to the idle column changing between runs by @sylvestre in https://github.com/uutils/coreutils/pull/14155
pr
- pr: fix overflow issues by @MuntasirSZN in https://github.com/uutils/coreutils/pull/13770
- pr: accept -e at the end of a short flag cluster by @m0g3r in https://github.com/uutils/coreutils/pull/13949
- pr: treat a page length of exactly 10 as omitting the header by @luantaraschi in https://github.com/uutils/coreutils/pull/14045
- pr: stop dropping lines the columns do not divide evenly by @luantaraschi in https://github.com/uutils/coreutils/pull/14088
- pr: make -n/--number-lines argument optional to match GNU by @AlejandroCoronadoN in https://github.com/uutils/coreutils/pull/13900
- pr: rename
--columnto--columnsby @cakebaker in https://github.com/uutils/coreutils/pull/14133 - pr: add
--join-linesas long option for-Jby @cakebaker in https://github.com/uutils/coreutils/pull/14135 - pr: show alias
-fin help by @cakebaker in https://github.com/uutils/coreutils/pull/14132
printf
- printf: omit errno from write errors by @floze-the-genius in https://github.com/uutils/coreutils/pull/13852
- printf: diagnose a failed write of unterminated output by @sylvestre in https://github.com/uutils/coreutils/pull/13854
- fix(printf): compute asterisk width magnitude in unsigned arithmetic by @bolverk in https://github.com/uutils/coreutils/pull/13800
- printf: avoid panic on %s/%c field width above u16::MAX by @AlejandroCoronadoN in https://github.com/uutils/coreutils/pull/13883
- printf: use plain text help headings by @nagendramohan in https://github.com/uutils/coreutils/pull/14075
- printf: fix for \c inside %b by @mtvb in https://github.com/uutils/coreutils/pull/14165
- printf: avoid panic on large numeric field widths by @Air-crypto in https://github.com/uutils/coreutils/pull/13857
ptx
- ptx: handle -g by clap & reject 0 by @oech3 in https://github.com/uutils/coreutils/pull/13796
- ptx: add benchmark by @Aisha630 in https://github.com/uutils/coreutils/pull/13480
- ptx: refactor to avoid multiple string heap allocations by @haydonryan in https://github.com/uutils/coreutils/pull/13897
- ptx: perf +4% by fxhash by @oech3 in https://github.com/uutils/coreutils/pull/13946
- ptx: reduce per-word allocation overhead and speedup line scans by @Aisha630 in https://github.com/uutils/coreutils/pull/14021
- ptx: accept invalid UTF-8 input and trailing backslash regexps by @sylvestre in https://github.com/uutils/coreutils/pull/14032
readlink
- readlink: reject missing operand by clap by @oech3 in https://github.com/uutils/coreutils/pull/14151
rm
- rm: replace a hardcoded error message by @oech3 in https://github.com/uutils/coreutils/pull/13956
- rm: extract permission denied message from OS by @oech3 in https://github.com/uutils/coreutils/pull/13967
- rm: do not follow a symlink swapped in at the -r operand by @sylvestre in https://github.com/uutils/coreutils/pull/14122
sleep
- sleep: reject missing time by clap by @oech3 in https://github.com/uutils/coreutils/pull/14149
sort
- sort: avoid reopening non-seekable inputs by @wtcpython in https://github.com/uutils/coreutils/pull/13494
- sort: replace if block by .filter by @oech3 in https://github.com/uutils/coreutils/pull/13773
- sort: simplify loop & 2 if blocks by @oech3 in https://github.com/uutils/coreutils/pull/13909
- sort: reject --batch-size arguments above the fd soft limit by @sylvestre in https://github.com/uutils/coreutils/pull/14033
- sort: refuse a random source shorter than the salt by @luantaraschi in https://github.com/uutils/coreutils/pull/14067
- sort: replace binary-heap-plus and compare with std::collections::BinaryHeap by @wtcpython in https://github.com/uutils/coreutils/pull/14106
- sort: fix for Lines fuse if chunk boundary is exactly at EOF [#14126] by @mtvb in https://github.com/uutils/coreutils/pull/14127
- sort: report read failures with context by @arcusbuilds in https://github.com/uutils/coreutils/pull/14005
- sort: run read_error_message only on gnu glibc linux by @Devel08 in https://github.com/uutils/coreutils/pull/14141
- sort: support attached '-t=' to select '=' as field separator by @MadeNavaneeth in https://github.com/uutils/coreutils/pull/14144
- sort: accept musl's EIO text in read_error_message test by @sylvestre in https://github.com/uutils/coreutils/pull/14150
split
- split: restore --io-blocksize & remove io::copy by @oech3 in https://github.com/uutils/coreutils/pull/13643
- Split enters endless loop fix [#14118] by @mtvb in https://github.com/uutils/coreutils/pull/14123
stat
- stat . > /dev/full panics by @Devel08 in https://github.com/uutils/coreutils/pull/13401
- stat: don't depend on /dev/stdin for unmounted /dev by @oech3 in https://github.com/uutils/coreutils/pull/13810
- stat: truncate string precision on a byte boundary to avoid a panic by @leeewee in https://github.com/uutils/coreutils/pull/13752
- stat: fix "unnecessary qualification" clippy error by @cakebaker in https://github.com/uutils/coreutils/pull/13877
- stat: preserve nanosecond timestamp precision by @kevinburke in https://github.com/uutils/coreutils/pull/13976
- stat: print the format up to a bad directive by @sylvestre in https://github.com/uutils/coreutils/pull/14102
- stat: remove unnecessary
#[cfg(unix)]by @cakebaker in https://github.com/uutils/coreutils/pull/14109 - stat: reject missing operand by clap by @oech3 in https://github.com/uutils/coreutils/pull/14152
- stat: print "Block size" in file system mode by @Socialpranker in https://github.com/uutils/coreutils/pull/14188
stdbuf
- stdbuf: move LIBSTDBUF_DIR from config.toml for crate.io by @oech3 in https://github.com/uutils/coreutils/pull/13889
- stdbuf: extract error message from OS & strip errno by @oech3 in https://github.com/uutils/coreutils/pull/13955
- stdbuf: fix tmpdir leak by @Ecordonnier in https://github.com/uutils/coreutils/pull/14059
tac
- tac: read regular files instead of mmap to avoid SIGBUS on truncation by @DarthStrom in https://github.com/uutils/coreutils/pull/12971
- tac: replace io::copy with fast_copy by @oech3 in https://github.com/uutils/coreutils/pull/13837
- tac: simplify error propagation by @Devel08 in https://github.com/uutils/coreutils/pull/14083
tail
- tail: warn when --pid=0 is ignored by @wtcpython in https://github.com/uutils/coreutils/pull/13572
- tail: reduce a nest by @oech3 in https://github.com/uutils/coreutils/pull/13918
- tail: avoid a double allocation per reverse chunk by @haydonryan in https://github.com/uutils/coreutils/pull/13919
- tail: remove overhead by stat by @oech3 in https://github.com/uutils/coreutils/pull/14129
- tail: do not abort on -c +N when the start offset is past the seek limit by @SAY-5 in https://github.com/uutils/coreutils/pull/14091
- tail: replace same-file with rustix and drop the dependency by @wtcpython in https://github.com/uutils/coreutils/pull/14208
tee
- tee: show_err instead of writing directly in stderr and strip error by @Devel08 in https://github.com/uutils/coreutils/pull/14125
- tee: align error message with GNU by @oech3 in https://github.com/uutils/coreutils/pull/14134
test
- test: support -N, -G and -O on Windows by @sylvestre in https://github.com/uutils/coreutils/pull/13658
- test: implement -ef, -t, -h/-L, -r, -w and -x on Windows by @nikolalukovic in https://github.com/uutils/coreutils/pull/14030
touch
- touch: support timestamps on WASI by @DePasqualeOrg in https://github.com/uutils/coreutils/pull/13803
- touch: move platform-specific code into platform/ by @sylvestre in https://github.com/uutils/coreutils/pull/13906
- touch: Fix leap second year overflow by @mtvb in https://github.com/uutils/coreutils/pull/14214
tr
- tr: simplify handling missing operand by @oech3 in https://github.com/uutils/coreutils/pull/14267
true
- false, true: use show_err instead of writing to stderr by @Devel08 in https://github.com/uutils/coreutils/pull/14193
truncate
- truncate, paste, uniq: let a repeated option override the earlier one by @arbelonson-source in https://github.com/uutils/coreutils/pull/14258
tsort
- tsort: include filename in error message by @abhijeetvichare76 in https://github.com/uutils/coreutils/pull/14253
uname
- uname: add -A/--all-labeled, following GNU master by @sylvestre in https://github.com/uutils/coreutils/pull/13912
- uname: move label separators into locale strings for -A/--all-labeled by @sylvestre in https://github.com/uutils/coreutils/pull/13954
unexpand
- unexpand: simplify loop by while let by @oech3 in https://github.com/uutils/coreutils/pull/13876
- unexpand: remove overhead of stat call by @oech3 in https://github.com/uutils/coreutils/pull/14108
- unexpand: accept a blank as a tab-list separator like GNU by @AlejandroCoronadoN in https://github.com/uutils/coreutils/pull/14057
uniq
- uniq: simplify loop by while by @oech3 in https://github.com/uutils/coreutils/pull/13908
- uniq: accept a repeated -D/--all-repeated, last one wins by @AlejandroCoronadoN in https://github.com/uutils/coreutils/pull/13898
uptime
- uptime: remove /proc dependency from more targets by @oech3 in https://github.com/uutils/coreutils/pull/13293
- uptime: windows implementation by @nikolalukovic in https://github.com/uutils/coreutils/pull/13874
- uptime: follow up of [#13874] by @sylvestre in https://github.com/uutils/coreutils/pull/14024
- uptime: exclude Android from utmpx paths by @sylvestre in https://github.com/uutils/coreutils/pull/14081
- uptime: disable some tests on Android by @cakebaker in https://github.com/uutils/coreutils/pull/14097
- uptime: fix cfg for get_uptime by @xtqqczze in https://github.com/uutils/coreutils/pull/14201
who
- who: do not abort on a stdout write error with -q by @costajohnt in https://github.com/uutils/coreutils/pull/13952
yes
- yes: catch 2nd+ splice's error by @oech3 in https://github.com/uutils/coreutils/pull/13840
- yes: deadlock fix by @mtvb in https://github.com/uutils/coreutils/pull/14210
- yes: simplify if block by @oech3 in https://github.com/uutils/coreutils/pull/14218
Error Diagnostics
- uucore: translate symbolic mode parsing errors by @sylvestre in https://github.com/uutils/coreutils/pull/13789
- Introduce ariadne to provide better error messages + chmod support by @sylvestre in https://github.com/uutils/coreutils/pull/13785
- Refactor a bit uucore/diag by @sylvestre in https://github.com/uutils/coreutils/pull/13825
- mkdir: point at the failing part of an invalid mode by @sylvestre in https://github.com/uutils/coreutils/pull/13826
- mkfifo: point at the failing part of an invalid mode by @sylvestre in https://github.com/uutils/coreutils/pull/13827
- mknod: point at the failing part of an invalid mode by @sylvestre in https://github.com/uutils/coreutils/pull/13828
- install: point at the failing part of an invalid mode by @sylvestre in https://github.com/uutils/coreutils/pull/13829
- expr, tr, sort, numfmt: point a caret at the argument that is at fault by @sylvestre in https://github.com/uutils/coreutils/pull/13929
- uucore: locate diagnostic operands by argument, not by text by @sylvestre in https://github.com/uutils/coreutils/pull/13930
- diagnostics: label carets only when they add, and span format errors by @sylvestre in https://github.com/uutils/coreutils/pull/13931
- diagnostics: let the caret rendering be compiled out by @sylvestre in https://github.com/uutils/coreutils/pull/13932
- diagnostics: localize the format, checksum and advice-line strings by @sylvestre in https://github.com/uutils/coreutils/pull/13933
- diagnostics: point inside quoted arguments, share the locating by @sylvestre in https://github.com/uutils/coreutils/pull/13934
- env, cut, head, tail, truncate: point at the failing part of a value by @sylvestre in https://github.com/uutils/coreutils/pull/13935
- split: point the caret at the failing part of a SIZE by @sylvestre in https://github.com/uutils/coreutils/pull/14008
- shred: point the caret at the failing part of a SIZE by @sylvestre in https://github.com/uutils/coreutils/pull/14009
- stdbuf: point the caret at the failing part of a buffering mode by @sylvestre in https://github.com/uutils/coreutils/pull/14010
- sort: point the caret at the failing part of the -S size by @sylvestre in https://github.com/uutils/coreutils/pull/14011
- od: point the caret at the failing part of a SIZE by @sylvestre in https://github.com/uutils/coreutils/pull/14012
- seq: point the caret at the failing part of a format by @sylvestre in https://github.com/uutils/coreutils/pull/14013
- dd: point the caret at the failing part of an operand by @sylvestre in https://github.com/uutils/coreutils/pull/14014
- stat: point the caret at the failing directive of a format by @sylvestre in https://github.com/uutils/coreutils/pull/14015
- join: point the caret at the failing field of -o by @sylvestre in https://github.com/uutils/coreutils/pull/14016
- uucore: keep the usage hint when a caret replaced the message by @sylvestre in https://github.com/uutils/coreutils/pull/14017
- uucore: share the caret diagnostic plumbing across the utilities by @sylvestre in https://github.com/uutils/coreutils/pull/14068
- Improve the modern error message + add UUTILS_DIAG to control it by @sylvestre in https://github.com/uutils/coreutils/pull/14195
- csplit: use the modern error diag by @sylvestre in https://github.com/uutils/coreutils/pull/14236
- ls/df//du: use modern reporting too by @sylvestre in https://github.com/uutils/coreutils/pull/14237
- uucore: write each diagnostic in a single stderr call by @haydonryan in https://github.com/uutils/coreutils/pull/14220
Performance (PGO)
- perf: PGO release builds - up to 31% faster on Linux x86_64/aarch64 by @sylvestre in https://github.com/uutils/coreutils/pull/14235
- Enable PGO on Mac builds too by @sylvestre in https://github.com/uutils/coreutils/pull/14243
- build-pgo.sh: drop wrong comment by @oech3 in https://github.com/uutils/coreutils/pull/14268
- build-pgo.sh: instrument with the same LTO settings as the final build by @sylvestre in https://github.com/uutils/coreutils/pull/14279
- ci: build the published macOS and Windows artifacts with PGO by @sylvestre in https://github.com/uutils/coreutils/pull/14246
Security
- mv,cp: fix xattr TOCTOU by using file descriptor-based operations by @sylvestre in https://github.com/uutils/coreutils/pull/10545
uucore
- uucore: fix parse_size overflow on a large
%size by @MsfPablo in https://github.com/uutils/coreutils/pull/13742 - uucore: fix clippy::match_same_arms without => _, by @oech3 in https://github.com/uutils/coreutils/pull/13831
- uucore::pipes: simplify by @oech3 in https://github.com/uutils/coreutils/pull/13858
- uucore::pipes::drain_pipe: catch 2nd+ splice's error by @oech3 in https://github.com/uutils/coreutils/pull/13859
- encoding.rs: simplify many match by @oech3 in https://github.com/uutils/coreutils/pull/14096
- validate.rs: simplify errors by @oech3 in https://github.com/uutils/coreutils/pull/14099
- uucore, cat: remove winapi-util dependency in favor of windows-sys and std by @wtcpython in https://github.com/uutils/coreutils/pull/14110
- validate.rs: extract actual error message from OS by @oech3 in https://github.com/uutils/coreutils/pull/14098
- uucore: rebuild embedded locales when the consumer's dependencies change by @sylvestre in https://github.com/uutils/coreutils/pull/14233
- fsext: do not confuse f_bsize with f_frsize on Linux by @Socialpranker in https://github.com/uutils/coreutils/pull/14192
Testing
- uutests: add stderr_as_displayed to compare terminal output by @sylvestre in https://github.com/uutils/coreutils/pull/13843
- Bench drop runner sensitive benches by @sylvestre in https://github.com/uutils/coreutils/pull/13760
- tests: replace GNU-derived material with original coverage by @sylvestre in https://github.com/uutils/coreutils/pull/14004
- dd: move the test-only parse shim into the unit tests by @sylvestre in https://github.com/uutils/coreutils/pull/14039
- tests: use convenience functions to ensure empty output by @cakebaker in https://github.com/uutils/coreutils/pull/14115
- improve the env fuzzer by @sylvestre in https://github.com/uutils/coreutils/pull/14173
Code Quality & Cleanup
- coreutils: remove invalid fallback for symlinks from binary_path by @oech3 in https://github.com/uutils/coreutils/pull/13088
- simplify return None by @oech3 in https://github.com/uutils/coreutils/pull/13776
- simplify return None by @oech3 in https://github.com/uutils/coreutils/pull/13793
- use std::io::Result<> instead of Result<,std::io::Error> by @oech3 in https://github.com/uutils/coreutils/pull/13811
- fix unused_qualifications lint by @xtqqczze in https://github.com/uutils/coreutils/pull/13814
- uufuzz: simplify match by @oech3 in https://github.com/uutils/coreutils/pull/13907
- clippy: fix drain_collect lint by @xtqqczze in https://github.com/uutils/coreutils/pull/14048
- clippy: fix needless_late_init lint by @xtqqczze in https://github.com/uutils/coreutils/pull/14050
- clippy: fix chunks_exact_to_as_chunks lint by @xtqqczze in https://github.com/uutils/coreutils/pull/14046
- remove rust-version from fuzz by @oech3 in https://github.com/uutils/coreutils/pull/14095
- clippy: add deprecation comment for
from_iter_instead_of_collectlint by @cakebaker in https://github.com/uutils/coreutils/pull/14062 - clippy: add
renamed_and_removed_lintssetting by @cakebaker in https://github.com/uutils/coreutils/pull/14064 - remove unnecessary .as_fd() by @oech3 in https://github.com/uutils/coreutils/pull/14265
- drop unused code by @sylvestre in https://github.com/uutils/coreutils/pull/14269
- avoid unnecessary clone by @xtqqczze in https://github.com/uutils/coreutils/pull/14250
CI & Build
- publish.sh: adjust to the new API by @sylvestre in https://github.com/uutils/coreutils/pull/13761
- fetch-gnu.sh: remove unnecessary 2 spaces by @oech3 in https://github.com/uutils/coreutils/pull/13792
- ci: trust preinstalled Homebrew taps on macOS by @xtqqczze in https://github.com/uutils/coreutils/pull/13782
- uucore/Cargo.toml: don't guard openssl by unix by @oech3 in https://github.com/uutils/coreutils/pull/13824
- fix cspell by @oech3 in https://github.com/uutils/coreutils/pull/13861
- fetch-gnu.sh: remove incorrect exit 0 (pass tests/cat/splice) by @oech3 in https://github.com/uutils/coreutils/pull/13860
- Revert "ci: trust preinstalled Homebrew taps on macOS" by @xtqqczze in https://github.com/uutils/coreutils/pull/13875
- Update automake download URL and add checksum verification by @sylvestre in https://github.com/uutils/coreutils/pull/13922
- ci: add copilot-code-review.yml to declare a runner for Copilot code review by @sylvestre in https://github.com/uutils/coreutils/pull/13942
- gnu: list the tests excluded from the pass/fail percentages by @sylvestre in https://github.com/uutils/coreutils/pull/13891
- Add empty-backup-suffix.sh to backport list by @sylvestre in https://github.com/uutils/coreutils/pull/13973
- add misc/getopt_vs_usage.sh to the GNU unfixable tests by @sylvestre in https://github.com/uutils/coreutils/pull/13979
- wasm: add expr & test to feat_wasm by @sylvestre in https://github.com/uutils/coreutils/pull/13981
- gnu/usage_vs_refs.sh checks that all options appear in GNU's texi docs. by @sylvestre in https://github.com/uutils/coreutils/pull/13997
- Cargo.toml: move 3 utils to feat_Tier1 by @oech3 in https://github.com/uutils/coreutils/pull/14027
- GnuTests: remove LD_PRELOAD from dd/fail-ftruncate-fstat by @oech3 in https://github.com/uutils/coreutils/pull/14053
- CI: pin the GNU test comparison to the latest main reference run by @sylvestre in https://github.com/uutils/coreutils/pull/14112
- ci: add check for empty output assertions by @cakebaker in https://github.com/uutils/coreutils/pull/14116
- CI: don't use the lagging server-side status filter by @sylvestre in https://github.com/uutils/coreutils/pull/14137
- build cygwin cksum with openssl on the CI by @oech3 in https://github.com/uutils/coreutils/pull/14079
- CI: remove unnecessary rust-toolchain by @oech3 in https://github.com/uutils/coreutils/pull/14142
- ci: fix benchmarks workflow to only run on changed crates by @BipulLamsal in https://github.com/uutils/coreutils/pull/14124
- try to fix publishing tag/latest-commit by @oech3 in https://github.com/uutils/coreutils/pull/14143
- GnuTests: fix hardcoded pathes to GNU executables by @oech3 in https://github.com/uutils/coreutils/pull/14190
- build: use "selinux" instead of "feat_selinux" feature name by @xtqqczze in https://github.com/uutils/coreutils/pull/12431
Documentation
- Add AGENTS.md - not a statement for or against AI agents by @sylvestre in https://github.com/uutils/coreutils/pull/13790
- add the 0.10.0 release notes by @sylvestre in https://github.com/uutils/coreutils/pull/13762
- docs: recommend gh stack for large changes by @sylvestre in https://github.com/uutils/coreutils/pull/13835
- test: explain more typical errors by @sylvestre in https://github.com/uutils/coreutils/pull/13844
- docs: remove
-wflag ofcutfrom the extensions by @cakebaker in https://github.com/uutils/coreutils/pull/13962 - docs/extensions: list utils alphabetically by @cakebaker in https://github.com/uutils/coreutils/pull/13312
- man pages: fix typo, merged lists and wrong indentations by @matttbe in https://github.com/uutils/coreutils/pull/14038
- Document the PGO builds by @sylvestre in https://github.com/uutils/coreutils/pull/14277
Platform Support
- wasi: clean up core platform abstractions by @DePasqualeOrg in https://github.com/uutils/coreutils/pull/12503
- uucore: fix uptime build on Android and wasm32 by @sylvestre in https://github.com/uutils/coreutils/pull/14058
- tests: enable cat integration coverage on WASI by @DePasqualeOrg in https://github.com/uutils/coreutils/pull/13802
- simplify by cfg(windows) by @oech3 in https://github.com/uutils/coreutils/pull/14224
- prefer target_vendor apple to cover iOS by @oech3 in https://github.com/uutils/coreutils/pull/14226
- cfg out uucore::signals on fuchsia by @xtqqczze in https://github.com/uutils/coreutils/pull/14166
- order target_vendor before target_os in cfg by @xtqqczze in https://github.com/uutils/coreutils/pull/14230
- stty: gate by target support by @xtqqczze in https://github.com/uutils/coreutils/pull/14238
- order target_vendor before target_os in cfg by @xtqqczze in https://github.com/uutils/coreutils/pull/14240
- chgrp: gate by target support by @xtqqczze in https://github.com/uutils/coreutils/pull/14242
Dependency Updates
- chore(deps): update rust crate blake3 to v1.8.6 by @renovate[bot] in https://github.com/uutils/coreutils/pull/13765
- chore(deps): update rust crate clap_mangen to v0.3.1 by @renovate[bot] in https://github.com/uutils/coreutils/pull/13759
- build(deps): update rust crates by @xtqqczze in https://github.com/uutils/coreutils/pull/13763
- chore(deps): update rust crate clap_mangen to v0.3.2 by @renovate[bot] in https://github.com/uutils/coreutils/pull/13783
- chore(deps): update rust crate clap_complete to v4.6.9 by @renovate[bot] in https://github.com/uutils/coreutils/pull/13781
- chore(deps): update rust crate thiserror to v2.0.20 by @renovate[bot] in https://github.com/uutils/coreutils/pull/13807
- chore(deps): update endbug/add-and-commit action to v11 by @renovate[bot] in https://github.com/uutils/coreutils/pull/13817
- chore(deps): update rust crate ctor to v1.0.13 by @renovate[bot] in https://github.com/uutils/coreutils/pull/13838
- chore(deps): update rust crate bstr to v1.13.1 by @renovate[bot] in https://github.com/uutils/coreutils/pull/13846
- chore(deps): update rust crate clap_mangen to v0.3.3 by @renovate[bot] in https://github.com/uutils/coreutils/pull/13904
- chore(deps): update rust crate icu_datetime to v2.3.0 by @renovate[bot] in https://github.com/uutils/coreutils/pull/13940
- chore(deps): update rust crate icu_collator to v2.3.0 by @renovate[bot] in https://github.com/uutils/coreutils/pull/13944
- chore(deps): update dawidd6/action-download-artifact action to v22 by @renovate[bot] in https://github.com/uutils/coreutils/pull/13961
- chore(deps): update dawidd6/action-download-artifact action to v23 by @renovate[bot] in https://github.com/uutils/coreutils/pull/13963
- chore(deps): update rust crate cc to v1.4.3 by @xtqqczze in https://github.com/uutils/coreutils/pull/13971
- chore(deps): update rust crate similar to v3.2.0 by @renovate[bot] in https://github.com/uutils/coreutils/pull/13984
- chore(deps): update rust crate blake2b_simd to v1.0.5 by @renovate[bot] in https://github.com/uutils/coreutils/pull/14035
- chore(deps): update rust crate blake3 to v1.8.7 by @renovate[bot] in https://github.com/uutils/coreutils/pull/14036
- fix(deps): refactor RustCrypto crates package configuration by @xtqqczze in https://github.com/uutils/coreutils/pull/14037
- Cargo.lock: remove
arrayrefby @cakebaker in https://github.com/uutils/coreutils/pull/14041 - chore(deps): update rust crate icu_locale to v2.3.1 by @renovate[bot] in https://github.com/uutils/coreutils/pull/14055
- chore(deps): update rust crate icu_collator to v2.3.1 by @renovate[bot] in https://github.com/uutils/coreutils/pull/14054
- chore(deps): update rust crate icu_provider to v2.3.1 by @renovate[bot] in https://github.com/uutils/coreutils/pull/13941
- chore(deps): update dawidd6/action-download-artifact action to v24 by @renovate[bot] in https://github.com/uutils/coreutils/pull/14061
- Cargo.toml: remove unused exacl workspace dependency by @wtcpython in https://github.com/uutils/coreutils/pull/14089
- chore(deps): update rust crate dns-lookup to v4 by @renovate[bot] in https://github.com/uutils/coreutils/pull/14194
Version Management
- prepare release 0.11.0 by @sylvestre in https://github.com/uutils/coreutils/pull/14247
New Contributors
- @MsfPablo made their first contribution in https://github.com/uutils/coreutils/pull/13742
- @0Whisperos made their first contribution in https://github.com/uutils/coreutils/pull/13787
- @MuntasirSZN made their first contribution in https://github.com/uutils/coreutils/pull/13770
- @Angadi56 made their first contribution in https://github.com/uutils/coreutils/pull/13443
- @floze-the-genius made their first contribution in https://github.com/uutils/coreutils/pull/13852
- @Aisha630 made their first contribution in https://github.com/uutils/coreutils/pull/13480
- @haydonryan made their first contribution in https://github.com/uutils/coreutils/pull/13897
- @bolverk made their first contribution in https://github.com/uutils/coreutils/pull/13800
- @costajohnt made their first contribution in https://github.com/uutils/coreutils/pull/13952
- @AH64-dll made their first contribution in https://github.com/uutils/coreutils/pull/13969
- @m0g3r made their first contribution in https://github.com/uutils/coreutils/pull/13949
- @fly1d made their first contribution in https://github.com/uutils/coreutils/pull/13982
- @AlejandroCoronadoN made their first contribution in https://github.com/uutils/coreutils/pull/13898
- @myunbin made their first contribution in https://github.com/uutils/coreutils/pull/14022
- @luantaraschi made their first contribution in https://github.com/uutils/coreutils/pull/14045
- @Gelbpunkt made their first contribution in https://github.com/uutils/coreutils/pull/12072
- @mtvb made their first contribution in https://github.com/uutils/coreutils/pull/14123
- @nagendramohan made their first contribution in https://github.com/uutils/coreutils/pull/14076
- @chrboe made their first contribution in https://github.com/uutils/coreutils/pull/12143
- @arcusbuilds made their first contribution in https://github.com/uutils/coreutils/pull/14005
- @MadeNavaneeth made their first contribution in https://github.com/uutils/coreutils/pull/14144
- @Air-crypto made their first contribution in https://github.com/uutils/coreutils/pull/13857
- @Socialpranker made their first contribution in https://github.com/uutils/coreutils/pull/14189
- @arbelonson-source made their first contribution in https://github.com/uutils/coreutils/pull/14258
- @abhijeetvichare76 made their first contribution in https://github.com/uutils/coreutils/pull/14253
- @ARMeeru made their first contribution in https://github.com/uutils/coreutils/pull/14168
Full Changelog: https://github.com/uutils/coreutils/compare/0.10.0...0.11.0