* add -T option parsing
* add usage of tab_size in display_grid
* fix test_ls_columns with \t
since this behavior is on by default
* update test_tabsize_formatting
* use grid DEFAULT_SEPARATOR_SIZE
* update Tabs
* fix test with column width
* fix cspell
* fix linter warning on match bool
* add comment for 0 tab_size
* update tabsize test with -C
* update one of the tabs tests to use -x
* remove comment and split tests for both x/C args
uucore: parser: num_parser: Return error if no digit has been parsed
uucore: parser: num_parser: Ignore empty exponents
uucore: parser: num_parser: Parse "0x"/"0b" as PartialMatch
After the addition of utmpx, feat_os_unix_musl is now identical to feat_os_unix and is thus not needed any more.
Signed-off-by: Etienne Cordonnier <ecordonnier@snap.com>
bump libc to 0.2.172
musl provides stubs of utmpx functions, and those stubs are available in the
libc crate version 0.2.172. Thus let's enable the feature so that it can
compile with musl. Note that those stubs always return a success exit value,
and commands such as "users" will report an empty list of users, when calling
those stubs.
This is consistent with the behavior of GNU coreutils which does the same thing.
The coreutils utillities using utmpx are "pinky", "uptime", "users", "who".
This is the expected behavior when using those utilities compiled with those musl utmpx stubs:
```
root@qemuarm64:~# users
root@qemuarm64:~# echo $?
0
root@qemuarm64:~# pinky
Login Name TTY Idle When Where
root@qemuarm64:~# echo $?
0
root@qemuarm64:~# uptime
12:58:47 up 0 min, 0 users, load average: 0.07, 0.02, 0.00
root@qemuarm64:~# echo $?
0
root@qemuarm64:~# who
root@qemuarm64:~# echo $?
0
```
Closes#1361
Signed-off-by: Etienne Cordonnier <ecordonnier@snap.com>
* Disabled `avoid-breaking-exported-api` and sorted items in Clippy.toml
* Renamed `BSD` -> `Bsd`, `SYSV` -> `SysV`, and `CRC` -> `Crc` to match Rust naming rules
* Renamed items in `BackupMode` and `UpdateMode` because they repeated the same word in every item - making it redundant and harder to read
Running this command showed a list of all lints across all crates:
```shell
cargo clippy --all-targets --workspace --message-format=json --quiet | jq -r '.message.code.code | select(. != null and startswith("clippy::"))' | sort | uniq -c | sort -h -r
```
This resulted in a list that I added to the `[workspace.lints.clippy]` in the root Cargo.toml. Afterwards, I commented out a few simpler lints. Subsequentely, I will go through this list, trying to address items in smaller batches.