1
Fork 0
mirror of https://github.com/RGBCube/uutils-coreutils synced 2025-07-29 20:17:45 +00:00

shuf: Use OS strings, don't split individual arguments, cleanup

- shuf now uses OS strings, so it can read from filenames that are
  invalid Unicode and it can shuffle arguments that are invalid
  Unicode. `uucore` now has an `OsWrite` trait to support this without
  platform-specific boilerplate.

- shuf no longer tries to split individual command line arguments,
  only bulk input from a file/stdin. (This matches GNU and busybox.)

- More values are parsed inside clap instead of manually, leading to
  better error messages and less code.

- Some code has been simplified or made more idiomatic.
This commit is contained in:
Jan Verbeek 2024-03-02 12:12:35 +01:00
parent 87ec8285c3
commit f562543b6c
6 changed files with 250 additions and 155 deletions

1
Cargo.lock generated
View file

@ -3184,7 +3184,6 @@ name = "uu_shuf"
version = "0.0.30"
dependencies = [
"clap",
"memchr",
"rand 0.9.0",
"rand_core 0.9.3",
"uucore",