นี่คือเวอร์ชันเก่า เวอร์ชันล่าสุดคือ 0.12.0 coreutils 0.12.0 · วันที่เผยแพร่:
ไฟล์ตัวติดตั้ง 0.6.0
| สถาปัตยกรรม | ประเภท | ขอบเขต | ขนาดไฟล์ | ดาวน์โหลด | SHA256 |
|---|---|---|---|---|---|
| 64 บิต | ZIP → พกพา (Portable) | — | — | github.com | VirusTotal |
| ARM64 | ZIP → พกพา (Portable) | — | — | github.com | VirusTotal |
| 32 บิต | ZIP → พกพา (Portable) | — | — | github.com | VirusTotal |
ลิงก์และค่า SHA256 มาจากแมนิเฟสต์ชุมชนของ Windows Package Manager โปรดเทียบค่าแฮชของไฟล์ที่ดาวน์โหลดก่อนเปิดใช้งาน
บันทึกประจำรุ่น
Rust Coreutils 0.6.0 Release:
We are happy to announce the release of Rust Coreutils 0.6.0 — a major milestone achieving 96% GNU compatibility with significant safety improvements, enhanced locale support, and extensive bug fixes!
Highlights:
- Major GNU Compatibility Leap
- 622 passing tests (+56 from 0.5.0), achieving 96.28% compatibility
- Reduced failures from 55 to just 16 (-39) and skipped tests from 23 to 7 (-16)
- Extensive test suite improvements across sort, ls, date, cksum, tail, and many more
- Safety & Code Quality
- Removed unsafe code from date, sort, locale.rs, and other utilities
- Replaced raw libc calls with safe nix crate equivalents throughout
- Enhanced error handling to avoid panics on /dev/full writes across many utilities
- Locale & Internationalization
- Added ICU support for locale-aware day/month names in date
- Implemented locale-aware hour formatting and calendar support
- Added locale-aware numeric sorting with thousand separator support in sort
- Locale-aware collation support in join
- Performance Improvements
- base32/base64/basenc: Optimized with reduced memset operations
- shuf: Optimized numeric output and added --random-seed option
- date: Wrapped stdout in BufWriter for batch processing
- uniq: Optimized memory usage for ignore-case comparison
- tsort: Avoid reading entire input into memory, intern strings
- df: Performance improvements with better filesystem handling
- Platform Support Expansion
- Expanded safe directory traversal to all Unix platforms
- Enhanced Cygwin support across multiple utilities
- Added SMACK security module support for ls, id, mkdir, mkfifo, mknod
- Added RISC-V 64-bit musl target to CI
- Notable Utility Improvements
- cksum/hashsum: Merged common logic, removed deprecated hashsum binary
- tail: Added --debug flag, fixed -F symlink tracking, fixed --pid with FIFO
- timeout: Added comprehensive signal handling and --verbose improvements
- sort: Legacy +POS/-POS handling, locale-aware collation, debug key annotations
- pr: Multiple fixes for headers, form feeds, and pagination options
- chmod: Fixed recursive handling and --preserve-root option
- rm: Fixed error reporting and symlink handling
- Contributions: This release was made possible by 41 new contributors joining our community
GNU Test Suite Compatibility:
──────┬─────┬─────┬─────────────────────┬─────────────┬─────────────┬───────────────────────
Result│0.5.0│0.6.0│Change 0.5.0 to 0.6.0│% Total 0.5.0│% Total 0.6.0│% Change 0.5.0 to 0.6.0
──────┼─────┼─────┼─────────────────────┼─────────────┼─────────────┼───────────────────────
Pass │566 │622 │+56 │87.75% │96.28% │+8.53%
──────┼─────┼─────┼─────────────────────┼─────────────┼─────────────┼───────────────────────
Skip │23 │7 │-16 │3.57% │1.08% │-2.49%
──────┼─────┼─────┼─────────────────────┼─────────────┼─────────────┼───────────────────────
Fail │55 │16 │-39 │8.53% │2.48% │-6.05%
──────┼─────┼─────┼─────────────────────┼─────────────┼─────────────┼───────────────────────
Error │1 │1 │0 │0.16% │0.15% │~0%
──────┼─────┼─────┼─────────────────────┼─────────────┼─────────────┼───────────────────────
Total │645 │646 │+1 (new test) │ │ │
──────┴─────┴─────┴─────────────────────┴─────────────┴─────────────┴───────────────────────
GNU testsuite evolution
Call to Action:
Help us translate - Contribute translations at Weblate
Sponsor us on GitHub to accelerate development: github.com/sponsors/uutils
What's Changed
arch
- Avoid >/dev/full panic by @oech3 in #10516
base64
- base(nc|32|64): Optimize performances reduction memset by @mattsu2020 in #9632
- Improve read error message by @dezgeg in #10512
basename
- basename . >/dev/full panics by @oech3 in #10553
cat
- do not connect to unix domain socket and instead return an error by @asder8215 in #9755
- fix write error handling to propagate errors instead of panicking by @rynewang in #10038
- tests(cat,stdbuf): Add broken-pipe robustness tests (#4627) by @naoNao89 in #8798
chgrp
- correct exit code by @cerdelen in #10035
chmod
- fix error handling if multiple files are handled by @cerdelen in #9793
- recursive hyper nested dirs by @cerdelen in #9990
- preserve root by @cerdelen in #10033
chroot
- use execvp directly instead of process::Command by @mattsu2020 in #9013
cksum
- Checksum ignore binary by @RenjiSann in #9695
- Improve check-only flags handling by @RenjiSann in #9770
- Move --ckeck's deps to clap by @oech3 in #9996
- Move handle_tag_text_binary_flags to clap by @oech3 in #9999
- Simple default tag variable by @oech3 in #10057
- cksum,hashsum: Drop a message replaced by clap by @oech3 in #10055
- cksum/hashsum: Merge common logic under a common crate by @RenjiSann in #10142
- Revert recent checksum CLI changes by @RenjiSann in #10141
- Don't panic when checked file returned EIO by @oech3 in #10534
- --debug 2>/dev/full does not abort by @oech3 in #10589
- -c /dev/null 2>/dev/full should not abort by @oech3 in #10643
comm
- fix comparison when reading from pipes by @martinkunkel2 in #9545
- Fixes #10192 - fix(comm): improve stdout handling and add test for lossy UTF-8 output by @Paol0B in #10206
- Properly handle I/O errors when reading input by @dezgeg in #10567
cp
- fix preserve-gid when canonicalize fails due to inaccessible parent dirs by @ChrisDryden in #9803
- reduce memory usage for cp -al by skipping unnecessary tracking by @ChrisDryden in #9805
- set status code when encountering circular symbolic links by @Thanhphan1147 in #9757
- symlink flags fixing conflicting flag logic to use last flag by @Dylans123 in #9960
- Added test for permissions copying to an existing file by @max-amb in #10049
- use FileInformation without dereference for symlink destination check to match GNU behaviour for test/nfs-removal-race by @ChrisDryden in #10086
- Avoid other error at cp stream /dev/full by @oech3 in #10139
- Fixed posixly correct dangling symlink test by @max-amb in #10247
- cp/mv: suppress xattr ENOTSUP errors for optional preservation by @ChrisDryden in #10083
csplit
- detect and report write errors by @ChrisDryden in #9855
date
- remove unsafe by @xtqqczze in #9688
- fix inconsistent input parsing between -s and -d flags by @AnarchistHoneybun in #9690
- Implement locale-aware hour formatting for date command by @naoNao89 in #9654
- improve fuzzer and handle edge cases by @ChrisDryden in #9661
- fix hardcoded formats with nl_langinfo(D_T_FMT) by @naoNao89 in #9756
- Fix military date parsing not adjusting date by @cerdelen in #9785
- add benchmark by @CrazyRoka in #9911
- benchmark: keep only one value by @sylvestre in #9989
- avoid double parsing when resolving timezone abbreviations by @CrazyRoka in #9997
- perf(date): wrap stdout in BufWriter to improve batch processing by @CrazyRoka in #9994
- use PosixCustom formatting for GNU-compatible output by @ChrisDryden in #10245
- test: %x format specifier respects locale settings by @sylvestre in #10285
- handle parentheses as comments like GNU date by @sylvestre in #10133
- add ICU support for day/months names by @sylvestre in #10457
- add locale-aware calendar support for era years by @sylvestre in #10473
- use jiff-icu for locale calendar conversions by @ChrisDryden in #10499
- fuzz_date: skip combined short options like -Rf- that read from stdin by @ChrisDryden in #10547
- fix %% not being preserved in locale format strings by @ChrisDryden in #10577
dd
- should terminate with error if skip argument is too large by @ic3man5 in #7275
- use actual filename in nocache error messages by @ChrisDryden in #9820
- fix nocache flag handling at EOF by @ChrisDryden in #9818
- use ibs/obs-sized buffer for skip/seek on non-seekable files by @ChrisDryden in #9806
- use seek for stdin skip when possible by @ChrisDryden in #9821
- get rid of line buffered stdout by @svlv in #10235
- feat(dd): add first benchmark suite for performance validation by @naoNao89 in #9136
df
- add binfmt_misc to is_dummy_filesystem by @van-sprundel in #9975
- add benchmarks by @sylvestre in #10123
- improve perfs by @sylvestre in #10122
- add rootfs to is_dummy_filesystem by @ChrisDryden in #10159
- Sum scaled values to compute the totals by @3v1n0 in #10438
dir
- add "about" and "usage" instead of being "ls" by @w007878 in #10369
dirname
- refactor(dirname): implement pure string manipulation per POSIX by @naoNao89 in #8936
- use Cow::Borrowed to avoid unnecessary heap allocations by @sylvestre in #10294
- add fuzzer to test GNU compatibility by @sylvestre in #10289
du
- fix -l/--count-links option not counting hardlinks separately by @WaterWhisperer in #9884
- count links based on inode by @svlv in #10313
echo
- Reduce memory allocation by @AnuthaDev in #10090
env
- preserve non-UTF-8 environment variables and remove unwrap by @ChrisDryden in #9726
- Improve GNU coreutils Compatibility & Fix env-signal-handler.sh Test by @mattsu2020 in #9465
- env/printenv: dedup the code by @sylvestre in #9841
- dedup some code by @sylvestre in #9874
- --debug 2>/dev/full does not abort by @oech3 in #10594
expand
- address a cognitive_complexity warnings by @sylvestre in #9930
- expand, unexpand: Properly handle I/O errors by @dezgeg in #10510
expr
- fix regex matching on inputs containing newlines by @ChrisDryden in #10543
fmt
- handle invalid UTF-8 input by replacing malformed sequences by @mattsu2020 in #9329
fold
- fix gnu test fold-zero-width.sh by @mattsu2020 in #9274
- Add support for -c short option and fix character mode tab handling by @mattsu2020 in #10530
groups
- groups > /dev/full panics by @oech3 in #10523
hashsum
- Drop --no-names by @oech3 in #9762
- Drop non-GNU --bits flag by @RenjiSann in #9773
- Drop locales for --bits by @oech3 in #9811
- Drop benches as covered by cksum benches by @oech3 in #9842