Clap 3 was released about a week ago. Let's stay up to date.
Some changes worth mentioning:
- AppSettings::VersionlessSubcommands is on by default and deleted
- AllowInvalidUtf8 moved from AppSettings to ArgSettings. I set it only on the global args (-R, --config, --cwd). The other commands don't actually support invalid UTF-8, despite the setting being on at the top level. I'll leave it to someone else to switch to value[s]_of_os() and enable AllowInvalidUtf8 on remaining arguments (where appropriate).
- Arg::short() now takes a single character (used to take a string). That makes the leading dashes we have on strings passed to Arg::long() stand out (to me at least). I'll leave it to someone else to drop them if they care.