📦 Rust Coreutils 0.1.0 Release:
We are excited to announce the release of Rust Coreutils 0.1.0 — our first 0.1 milestone!
This release brings major performance gains, SELinux support, and expanded GNU compatibility.
Highlights:
-
SELinux Support
New SELinux integration in cp, ls, mkdir, mknod, mkfifo, install, and stat.
Plus, SELinux-aware CI testing is now live! -
Performance Improvements
Notable speedups in cat, ls, wc, tail, seq, and more — many now match or exceed GNU performance. -
Ubuntu Plans to Ship uutils
Ubuntu is beginning to integrate Rust Coreutils into its base system!
➤ Oxidizing Ubuntu -
Huge Contribution Wave
This release includes 843 commits from 60+ contributors, including 40 newcomers!
GNU Test Suite Compatibility:
Pass | 507 | 522 | +15 | 82.17% | 84.46% | +2.29% |
Skip | 41 | 31 | -10 | 6.65% | 5.02% | -1.63% |
Fail | 69 | 65 | -4 | 11.18% | 10.52% | -0.66% |
Total | 617 | 618 | +1 (new test) |
Call to Action:
🚀 Sponsor us on GitHub to help us grow faster: github.com/sponsors/uutils
🔗 Download the latest release & learn more: https://uutils.github.io
What's Changed
basenc
- base32/base64/basenc: add -D flag by @TerakomariGandesblood in #7479
cat
- cat: Improve performance of formatting. by @karlmcdowall in #7519
- cat: bugfix when running with -T option by @karlmcdowall in #7636
- cat: Formatting performance improvement by @karlmcdowall in #7642
- cat: Performance improvement when printing line numbers by @karlmcdowall in #7645
chmod
chroot
cksum
cp
- cp: Use FICLONE ioctl constant from linux-raw-sys by @dezgeg in #7439
- cp: fix update prompting by @hz2 in #7668
- cp -P hardlink-to-symlink hardlink-to-same-symlink should no-op by @dan-hipschman in #7753
- cp: refuse to copy symlink over itself by @dan-hipschman in #7729
- cp: use authors.workspace in Cargo.toml by @cakebaker in #7882
- cp: improve the selinux support by @sylvestre in #7878
- cp: context Disable a check in tests/cp/no-ctx.sh by @sylvestre in #7938
- cp: copy dir if source path ends with dot by @cakebaker in #7874
csplit
- csplit: removed unnecesary implementation of Fromio::Error by @lukasx999 in #7778
- csplit: don't add a newline if the file doesn't end with one by @Qelxiros in #7901
date
- date: allow negative date offsets by @lewisboon in #7548
- date: add tests for relative weekdays by @dan-hipschman in #7843
- date: move file header to top & merge some imports by @cakebaker in #7857
- refactor(tests): use absolute difference of dates to check if they are within a window by @lavafroth in #7755
dd
df
- refactor: Add thiserror to df by @kiran-4444 in #7545
- df: migrate OptionsError to thiserror by @lewisboon in #7673
- fix: df: filter filesystem types after mount point resolution by @SergeiPatiakin in #7452
du
- du: don't panic on block-size 0 by @BenWiederhake in #7742
- du: fix "function never used" warning in test by @cakebaker in #7943
echo
- echo: fixed double hyphen as argument by @cerdelen in #7581
- Remove clap for echo by @cerdelen in #7603
env
- env: ignore flags after the command or -- argument by @dan-hipschman in #7781
- docs: env doesn't handle the empty string as a variable name by @Qelxiros in #7956
expr
- expr: Refactor AST evaluation to avoid stack overflow by @LouisDISPA in #7388
- expr: Escape anchor characters within pattern by @frendsick in #7842
- expr: Fix regex anchor matching behavior with REGEX_OPTION_SINGLELINE by @frendsick in #7846
- expr: Fix parsing negated character classes "[^a]" by @frendsick in #7884
- expr: Fix parsing regex anchors '^' and '$' by @frendsick in #7953
false
- true,false: remove unnecessary newline from version string by @cakebaker in #7446
fmt
- chore: minor fmt match cleanup by @nyurik in #7722
- Run cargo fmt on missed files by @BenWiederhake in #7949
- ci: run cargo fmt --check in fuzz folder by @cakebaker in #7958
head
- head: rework handling of non-seekable files by @karlmcdowall in #7438
- head: fix overflow errors by @Qelxiros in #7721
hostid
- hostid: use gethostid from Rust libc by @cakebaker in #7571
hostname
- Bump hostname & remove windows-core from skip list by @cakebaker in #7713
id
- bug: fix id printing of egid by @nyurik in #7696
- id: Handle NULL pointer gracefully within cstr2cow macro by @frendsick in #7810
- id: adapt error message to match the one from GNU id by @cakebaker in #7836
- id: The --real flag should only affect -u, -g, and -G by @frendsick in #7796
- id: remove unnecessary to_string calls by @cakebaker in #7914
install
- install: friendly message install file to directory by @zhw2101024 in #7794
- install: fixes issue #7795 by @zcg00 in #7838
- Install implement the --no-target-directory option by @zhw2101024 in #7867
- install: remove todos by @cakebaker in #7872
- ci: install libselinux1-dev for coverage job by @cakebaker in #7959
- selinux: start the support of install by @sylvestre in #7908
ls
- ls: More performance optimizations by @drinkcat in #7813
- ls: add -T support and fix --classify output by @emar-kar in #7616
- ls: add selinux support by @sylvestre in #7768
- ls: Print optimizations by @drinkcat in #7801
- ls: update chrono crate version and switch to new_lenient use by @emar-kar in #7858
- ls: remove duplicate code by @cakebaker in #7932
- test_ls: Improve test_ls_perm_io_errors by @drinkcat in #7811
mkdir
- mkdir: add the selinux support by @sylvestre in #7635
mkfifo
- mkfifo: implement selinux support by @sylvestre in #7831
mknod
- mknod: remove windows-related code & flags by @cakebaker in #7821
- mknod: implement selinux support by @sylvestre in #7818
- mknod: rename function _mknod to mknod by @cakebaker in #7824
- mknod: refactor uumain by @cakebaker in #7825
- mknod: remove duplicate test by @cakebaker in #7828
mktemp
- mktemp: Prevent race condition when setting permissions for tempdir by @MidnightRocket in #7617
more
- more: keep only screen lines in mem by @aaron-ang in #7680
- more: constant memory initialization overhead by @aaron-ang in #7765
mv
- Implement Default for Options of mv and cp by @jmjoy in #7506
- mv: fix moving FIFO to a different filesystem by @jfinkels in #7241
- mv: use bool instead of Result as return type by @cakebaker in #7962
- mv: factor rename_with_fallback function into helpers by @jfinkels in #7774
numfmt
- numfmt: add --zero-terminated option by @dan-hipschman in #7686
od
- od: fix for issue #7666 by @karlmcdowall in #7776
pr
printf
- printf: fix octal escape parsing by @RenjiSann in #7431
- printf: trim leading whitespace when parsing numeric values by @dlrobertson in #7512
- printf: Consistently handle negative widths/precision by @sargas in #7620
- printf: make negative values wrap around with unsigned/hex format by @eduardorittner in #7656
- printf: Error handling with unicode parsing by @sargas in #7681
- fuzzing: add a summary and enable printf by @sylvestre in #7747
- printf: improve support of printing multi-byte values of characters by @jtracey in #7208
- printf: Add indexing to format strings by @sargas in #7837
- printf: use non-zero indexes by @jtracey in #7855
- Fix nan print, simplify negative number printing. by @drinkcat in #7413
- parser: Fix 3 corner cases by @drinkcat in #7694
ptx
- ptx: fixes by @usamoi in #7521
- ptx: use char count instead of byte index to handle utf-8 characters by @aaron-ang in #7897
rm
seq
- seq: fix default float precision (%f); fix 0 scientific printing by @drinkcat in #7384
- seq: Buffer writes to stdout by @drinkcat in #7485
- seq: Directly write separator string, instead of using format by @drinkcat in #7562
- seq: Do not allow -w and -f to be specified at the same time by @drinkcat in #7646
- seq: Trim whitespaces, then try to remove + by @drinkcat in #7650
- test_seq: Add a few more tests for corner cases by @drinkcat in #7527
shred
- shred: remove unwanted padding in verbose messages by @BenWiederhake in #7799
- shred: correctly print zero-byte pass in verbose mode by @BenWiederhake in #7800
- shred: fix random passes* by @Qelxiros in #7830
- shred: remove obsolete test by @cakebaker in #7833
- shred: document simplified (better?) number of random passes by @BenWiederhake in #7847
- shred: add 4K data alignment by @alexs-sh in #7915
- shred: minor improvements and tests by @alexs-sh in #7925
shuf
sleep
- sleep: remove unused fundu from Cargo.toml by @cakebaker in #7758
- util/build-gnu.sh: Accept hex float as sleep parameter by @drinkcat in #7761
sort
split
- split: fix a racing condition that causes issue #7869 by @yuankunzhang in #7877
- split: use delegation to avoid code duplication in test by @cakebaker in #7924
stat
- stat: Print what kind of "weird" mode it is, if it's "weird" by @drinkcat in #7587
- stat: add support for selinux by @sylvestre in #7752
- test_stat: Disable test_stdin_pipe_fifo1/2 on Mac OS X by @drinkcat in #7611
sum
- sum: Rework some error handling by @karlmcdowall in #7605
sync
- sync: move call to unsafe fn to unsafe block by @cakebaker in #7942
tail
- tail: Performance improvements by @karlmcdowall in #7643
- tail: Ignore a few tests on selinux by @sylvestre in #7756
- tail: fix issue with -v flag and stdin by @karlmcdowall in #7792
- tail hex parsing, remove fundu dependency by @Qelxiros in #7760
- Tail macos stdin ran from script fix by @hz2 in #7844
tee
- add tests/misc/tee.sh to the list of intermittent issues by @sylvestre in #7820
test
- CI: add a new job to test with Selinux by @sylvestre in #7440
- cp: create failing test for #7455 by @Carreau in #7457
- selinux: run the GNU test too by @sylvestre in #7448
- Add test to ensure arch output is not empty by @valerioedu in #7523
- ci: Enable cspell on test on dotfiles too by @drinkcat in #7582
- Test workspace CI on macos by @drinkcat in #7576
- env: Removed parse_errors to follow other commands standard with "thiserror" + added errors test case by @ValentinBoudevin in #7584
- Bump bigdecimal & fix failing test by @cakebaker in #7630
- test/cp: Fix "No such file or directory" error in test_acl_preserve by @shskwmt in #7677
- du: already passes GNU test in spirit, adjust test by @BenWiederhake in #7754
- Bump bincode & adapt test code to API changes by @cakebaker in #7767
- du: test existing correct behavior: warn about --inodes -b conflict by @BenWiederhake in #7764
- test_ls: Improve acl test by @drinkcat in #7816
- date: add %q test, support %#z properly by @drinkcat in #7854
- test_test: Simplify test_file_N by @drinkcat in #7579
timeout
- timeout: Use common parser to parse time duration by @drinkcat in #7648
- add tests against '0 in sleep/timeout durations by @Qelxiros in #7777
- timeout: add hex parsing test by @Qelxiros in #7940
touch
tsort
- tsort: remove duplicate sorting step by @anastygnome in #7965
uptime
- fix uptime on windows by @Bluemangoo in #7430
- uptime: fix "unused import" warning in test by @cakebaker in #7629
- uptime: fix "unused import" warnings with musl by @cakebaker in #7866
- uptime: fix typo (formated -> formatted) by @cakebaker in #7887
- uptime: some small refactorings by @cakebaker in #7891
- uptime: fix typo (Gnu -> GNU) by @fran-tor in #7896
- uptime: refactor uumain by @cakebaker in #7892
uucore
- Move ExtendedBigDecimal to uucore/format, make use of it in formatting functions by @drinkcat in #7458
- uucore: format: num_format: add fmt function tests, and workaround 0e10 printing. by @drinkcat in #7514
- uucore: format: num_parser: Use ExtendedBigDecimal by @drinkcat in #7556
- uucore: format: Collection of small parser fixes by @drinkcat in #7623
- seq: Move to uucore/format common number parsing code by @drinkcat in #7624
- uucore: Move extendedbigdecimal and parsers to 2 separate features by @drinkcat in #7647
- uucore: Minor fix to optional dependences by @RenjiSann in #7654
- uucore: format: Fix hexadecimal default format print by @drinkcat in #7631
- uucore: num_parser: Limit precision when computing 2**exp by @drinkcat in #7712
- uucore: add chrono to uptime feature by @cakebaker in #7719
- uucore/quoting_style: Add support for quoting/escaping empty strings by @sargas in #7693
- fix(sleep): use uucore's from_str to support parsing hex by @Qelxiros in #7675
- cp: factor make_fifo() function out to uucore::fs by @jfinkels in #7775
- uucore: num_parser: Operate on slices, instead of iterator by @drinkcat in #7790
- Move seq's fast_inc to uucore, use it in cat by @drinkcat in #7782
- Allow compiling uucore with wasm32-unknown-unknown by @cptpiepmatz in #7840
- uucore: add safe wrapper for getpgrp() by @eduardorittner in #7676
- uucore/echo:handle ControlFlow result by @alexs-sh in #7881
- selinux: use the uucore::selinux::is_selinux_enabled() function by @sylvestre in #7909
- uucore: add functions to manage translations by @sylvestre in #7955
wc
- wc: Perf gains with the bytecount crate. by @karlmcdowall in #7495
- wc: Speed optimization by @drinkcat in #7934
whoami
- whoami: remove unused libc dependency by @siddharthteli12 in #7786
yes
- yes: Remove usage of vmsplice by @karlmcdowall in #7770
Selinux
- selinux: get closer to the GNU error msgs by @sylvestre in #7898
- selinux: rename check_selinux_enabled() by @cakebaker in #7771
- set_selinux_security_context should return an Error, not String by @sylvestre in #7845
- Cargo.toml: remove exact version requirements for selinux by @cakebaker in #7883
Code quality
- all: add (uutils coreutils) to version string by @cakebaker in #7441
- Cargo.toml: use authors.workspace = true by @cakebaker in #7723
- utmpx.rs: use correct constant names for musl libc by @Ecordonnier in #7459
- fsext.rs: use type inference fsid_t / __fsid_t by @Ecordonnier in #7469
- .pre-commit-config.yaml: Also run cspell by @drinkcat in #7577
- Move our tests infra into a dedicated crate by @sylvestre in #7598
- Flush BufWriters, clean up error reporting by @blyxxyz in #7622
- Consolidate crate config in workspace by @nyurik in #7710
- chore: clean up a few code paths by @nyurik in #7725
- enable feature_require_crate_cpp for musl by @Ecordonnier in #7741
- enable utmpx feature for musl by @Ecordonnier in #7740
- update parse_datetime to 0.9.0 by @sylvestre in #7839
- Cargo.toml: Add profiling profile by @drinkcat in #7862
- Switched to SVG graphs by @tdulcet in #7888
- Move more programs to thiserror by @sylvestre in #7525
- Move more errors to thiserror by @sgvictorino in #7540
- chore: cleanup trailing commas before parens by @nyurik in #7691
- chore: use inline formatting by @nyurik in #7688
- chore: manual inline formatting - tests by @nyurik in #7690
- clippy: fix warnings from Rust 1.86 by @cakebaker in #7640
- chore: use assert_eq! and assert_ne! instead of assert! by @nyurik in #7698
- feat: minor linting by @nyurik in #7703
- Address new clippy lints by @nyurik in #7707
- Consolidate lint management with workspaces by @nyurik in #7709
- chore: remove unneeded parens by @nyurik in #7700
- Fuzzing: minor fixes by @drinkcat in #7717
- chore: manual inline formatting by @nyurik in #7689
- chore: simplify return in multi-branch by @nyurik in #7699
- chore: fix clippy::unnested_or_patterns by @nyurik in #7730
- chore: fix ref_option lint by @nyurik in #7724
- chore: remove trailing commas by @nyurik in #7746
- Fix the implementation of Display and TryFrom<&str> for Teletype by @evilpie in #7743
- Apply suggestions from clippy 0.1.87+nightly by @BenWiederhake in #7744
- Enable and fix unused_qualifications lint by @nyurik in #7715
- fix low-count lints in all crates by @nyurik in #7716
- chore: address a few clippy lints that break API by @nyurik in #7697
- feat: optimize iter matching by @nyurik in #7702
CI
- bump to Rust edition 2024 & min = 1.85 by @sylvestre in #7423
- CI: improve the intermittent ignore by @sylvestre in #7411
- Python: add ruff check and fix the code by @sylvestre in #7486
- python: fix formatting in compare_test_results.py by @cakebaker in #7493
- flake: drop flake-utils, refactor by @bloxx12 in #7368
- GNU CI: fix the intermittement management by @sylvestre in #7517
- remaining-gnu-error.py: Adjust to the new URL by @sylvestre in #7634
- github/action: on fork, run the CI for all the branches (currently: only main) by @sylvestre in #7604
- .github/workflows: Take care of both ./Cargo.lock and fuzz/Cargo.lock by @drinkcat in #7653
- Fix coverage files generation by @RenjiSann in #7401
- bump busybox & toybox reference code by @sylvestre in #7470
- tests: replace run() with succeeds() or fails() by @cakebaker in #7426
- github: fix the name - it is reference/aggregated-result.json/aggregated-result.json otherwise by @sylvestre in #7477
- why-skip: Improve the display by @sylvestre in #7437
- GNU/CI: use the aggregated-result.json files and move to python by @sylvestre in #7471
- Fix Android CI by @drinkcat in #7546
- ci: if FAIL => PASS but in the intermittent list, show the info by @sylvestre in #7524
- flake.nix: bump minimal rust version by @sylvestre in #7568
- deny.toml: remove two crates from skip list by @cakebaker in #7575
- Move clippy lints from CI to Cargo.toml by @cakebaker in #7748
- ci: lint with selinux by @cakebaker in #7779
- ci: fix unexpected input 'file' warning in coverage job by @cakebaker in #7960
- gnu: fix the build with selinux by @sylvestre in #7899
- .cargo/config.toml: set CFLAGS='-std=gnu17' by @cakebaker in #7944
- Revert #7944 by @cakebaker in #7963
- upgrade to GNU coreutils 9.7 as ref by @sylvestre in #7711
- CICD: Disable windows-latest/x86_64-pc-windows-gnu for now by @drinkcat in #7859
- clippy: set MSRV and fix warnings by @cakebaker in #7957
- Create an uufuzz crate for common functions and use it by @sylvestre in #7954
- prepare release 0.1.0 by @sylvestre in #7982
Documentation
- CONTRIBUTING: fix broken link to Apple's file_cmds by @ohno418 in #7460
- fixed link to repo on uutests docs by @hz2 in #7848
- README.md: Refer to macOS when talking about the OS, not Mac (hardware) by @C0rn3j in #7462
- uutests: add a doc by @sylvestre in #7607
- uudoc: Fix for edition 2024 by @drinkcat in #7573
- ci: Enable uudoc feature on x86-64 native builder by @drinkcat in #7574
- Document the release process by @sylvestre in #7419
- add fedora and RHEL installation docs by @benyaminl in #7453
- docs: fix url of file with coverage results by @cakebaker in #7528
- document how to do good performance work by @sylvestre in #7541
- doc: bump version of ubuntu badge by @lbellomo in #7553
- docs: replace AUR package in installation.md by @cakebaker in #7554
- doc: fix broken links on mdbook by @lbellomo in #7551
- Update installation.md by @AspadaX in #7557
- doc: escape RE with backticks (`) by @lbellomo in #7560
- performance.md: recommend to build with the right profile by @sylvestre in #7930
Dependency Updates
- Bump iana-time-zone & add windows-core to skip list by @cakebaker in #7628
- deny.toml: remove zerocopy from skip list by @cakebaker in #7773
- Bump libc & remove unnecessary unsafe blocks by @cakebaker in #7434
- Bump tempfile & fix deprecation warning by @cakebaker in #7922
- Bump markdownlint action & fix warnings by @cakebaker in #7939
- Bump nix & ctrlc, adapt code to API changes in nix by @cakebaker in #7971
- Bump fluent and fluent-bundle by @cakebaker in #7980
- chore(deps): update rust crate terminal_size to v0.4.2 by @renovate in #7425
- chore(deps): update rust crate serde to v1.0.219 by @renovate in #7428
- chore(deps): update rust crate clap to v4.5.32 by @renovate in #7432
- fix(deps): update rust crate quote to v1.0.40 by @renovate in #7436
- fix(deps): update rust crate tempfile to v3.19.0 by @renovate in #7444
- chore(deps): update rust crate half to v2.5.0 by @renovate in #7445
- chore(deps): update rust crate linux-raw-sys to v0.9.3 by @renovate in #7447
- chore(deps): update vmactions/freebsd-vm action to v1.1.9 by @renovate in #7456
- chore(deps): update rust crate zip to v2.3.0 by @renovate in #7467
- chore(deps): update rust crate zip to v2.4.1 by @renovate in #7476
- chore(deps): update rust crate time to v0.3.40 by @renovate in #7478
- chore(deps): update rust crate blake3 to v1.7.0 by @renovate in #7489
- chore(deps): update rust crate zip to v2.4.2 by @renovate in #7491
- chore(deps): update rust crate clap_complete to v4.5.47 by @renovate in #7499
- fix(deps): update rust crate tempfile to v3.19.1 by @renovate in #7500
- chore(deps): update rust crate chrono-tz to v0.10.2 by @renovate in #7543
- chore(deps): update rust crate time to v0.3.41 by @renovate in #7549
- chore(deps): update rust crate zip to v2.5.0 by @renovate in #7547
- chore(deps): update rust crate iana-time-zone to v0.1.62 by @renovate in #7555
- chore(deps): update rust crate chrono-tz to v0.10.3 by @renovate in #7561
- chore(deps): update rust crate hex-literal to v1 by @renovate in #7343
- chore(deps): update rust crate selinux-sys to v0.6.14 by @renovate in #7424
- chore(deps): update rust crate selinux to v0.5.1 by @renovate in #7421
- chore(deps): update rust crate fts-sys to v0.2.16 by @renovate in #7420
- chore(deps): update rust crate clap to v4.5.34 by @renovate in #7588
- chore(deps): update mozilla-actions/sccache-action action to v0.0.9 by @renovate in #7592
- fix(deps): update rust crate os_display to v0.1.4 by @renovate in #7599
- chore(deps): update reactivecircus/android-emulator-runner action to v2.34.0 by @renovate in #7602
- chore(deps): update rust crate blake3 to v1.8.0 by @renovate in #7621
- chore(deps): update rust crate clap to v4.5.35 by @renovate in #7633
- chore(deps): update rust crate blake3 to v1.8.1 by @renovate in #7639
- chore(deps): update rust crate zip to v2.6.0 by @renovate in #7644
- chore(deps): update rust crate ctrlc to v3.4.6 by @renovate in #7652
- chore(deps): update rust crate smallvec to v1.15.0 by @renovate in #7657
- chore(deps): update rust crate zip to v2.6.1 by @renovate in #7655
- chore(deps): update vmactions/freebsd-vm action to v1.2.0 by @renovate in #7672
- chore(deps): update rust crate crossterm to 0.29.0 by @renovate in #7667
- chore(deps): update mozilla-actions/sccache-action action to v0.0.9 by @renovate in #7682
- chore(deps): update codecov/codecov-action action to v5 by @renovate in #7683
- chore(deps): update rust crate half to v2.6.0 by @renovate in #7692
- chore(deps): update rust crate bstr to v1.12.0 by @renovate in #7701
- chore(deps): update rust crate linux-raw-sys to v0.9.4 by @renovate in #7714
- chore(deps): update rust crate uutils_term_grid to 0.7 by @renovate in #7720
- chore(deps): update rust crate self_cell to v1.2.0 by @renovate in #7727
- chore(deps): update rust crate clap to v4.5.36 by @renovate in #7731
- fix(deps): update rust crate data-encoding to v2.9.0 by @renovate in #7735
- fix(deps): update rust crate data-encoding-macro to v0.1.18 by @renovate in #7734
- fix(deps): update rust crate libc to v0.2.172 by @renovate in #7759
- fix(deps): update rust crate proc-macro2 to v1.0.95 by @renovate in #7766
- fix(deps): update rust crate rand to v0.9.1 by @renovate in #7772
- chore(deps): update rust crate clap to v4.5.37 by @renovate in #7783
- chore(deps): update rust crate blake3 to v1.8.2 by @renovate in #7807
- chore(deps): update rust crate ctor to v0.4.2 by @renovate in #7817
- chore(deps): update rust crate clap_complete to v4.5.48 by @renovate in #7856
- chore(deps): update rust crate sha2 to v0.10.9 by @renovate in #7864
- chore(deps): update rust crate clap_complete to v4.5.49 by @renovate in #7889
- chore(deps): update rust crate clap_complete to v4.5.50 by @renovate in #7893
- chore(deps): update rust crate signal-hook to v0.3.18 by @renovate in #7905
- chore(deps): update rust crate clap to v4.5.38 by @renovate in #7911
- chore(deps): update rust crate zip to v3 by @renovate in #7935
- chore(deps): update rust crate zip to v4 by @renovate in #7969
New Contributors
- @LouisDISPA made their first contribution in #7388
- @Carreau made their first contribution in #7378
- @ohno418 made their first contribution in #7460
- @benyaminl made their first contribution in #7453
- @C0rn3j made their first contribution in #7462
- @TerakomariGandesblood made their first contribution in #7479
- @bloxx12 made their first contribution in #7368
- @jmjoy made their first contribution in #7506
- @valerioedu made their first contribution in #7523
- @usamoi made their first contribution in #7521
- @lbellomo made their first contribution in #7553
- @AspadaX made their first contribution in #7557
- @dlrobertson made their first contribution in #7512
- @lewisboon made their first contribution in #7548
- @cerdelen made their first contribution in #7581
- @ValentinBoudevin made their first contribution in #7584
- @GTimothy made their first contribution in #7580
- @MoSal made their first contribution in #7567
- @kiran-4444 made their first contribution in #7545
- @shskwmt made their first contribution in #7677
- @CSRessel made their first contribution in #7618
- @nyurik made their first contribution in #7691
- @MidnightRocket made their first contribution in #7617
- @eduardorittner made their first contribution in #7656
- @dan-hipschman made their first contribution in #7686
- @hz2 made their first contribution in #7668
- @evilpie made their first contribution in #7743
- @lavafroth made their first contribution in #7755
- @emar-kar made their first contribution in #7616
- @SergeiPatiakin made their first contribution in #7452
- @aaron-ang made their first contribution in #7680
- @lukasx999 made their first contribution in #7778
- @siddharthteli12 made their first contribution in #7786
- @zhw2101024 made their first contribution in #7794
- @jplatte made their first contribution in #7803
- @frendsick made their first contribution in #7810
- @bitspill made their first contribution in #7492
- @cptpiepmatz made their first contribution in #7840
- @yuankunzhang made their first contribution in #7877
- @tdulcet made their first contribution in #7888
- @fran-tor made their first contribution in #7896
Full Changelog: 0.0.30...0.1.0