locale_cmp evaluated `get_collating_locale().0 == DEFAULT_LOCALE` on every
call. DEFAULT_LOCALE is a const that materializes a fresh heap-backed Locale
each time, so the last-resort compare path allocated and dropped an ICU Locale
per comparison. Cache the decision in a OnceLock<bool> via
should_use_locale_collation() so the C/POSIX case falls straight through to
byte comparison, fixing the sort benchmark regression.
parse_timestamp would report the century/year-prefixed internal form
in the 'invalid date ts format' error instead of the user's original
input (e.g. '202026-04-10' for input '2026-04-10'). Reference the
original string so the message matches what was typed.
* docs: fix macOS tier 1 targets and platform compatibility table
- Add aarch64-apple-darwin to the tier 1 macOS target list.
- Use feat_os_unix for macOS in uudoc.rs, since feat_os_macos does not
exist and caused the compatibility table to show almost no macOS
support.
* uudoc: remove unnecessary comment about macOS feature
* uudoc: drop macos feature entry and use unix for macOS
`kill -l`, `kill -l <sig>`, `kill --list`, and `kill --table` printed their
output with `println!`, whose internal `io::stdout().write_fmt().unwrap()`
aborts the process (SIGABRT, exit 134) when the stdout write fails — e.g.
`kill -l TERM > /dev/full`.
Write the signal listing to a buffered stdout and propagate the `io::Error`
via `?`, so a failed write reports `kill: write error: <reason>` and exits 1,
matching procps-ng `kill` (GNU coreutils ships no standalone `kill`). Add a
`kill-error-write-error` locale key (en-US, fr-FR) and a regression test that
lists signals to `/dev/full`.