v1.3.0 - The Fall 2021 release 🍁
Completion fixes & enhancements 💇🏼
In v1.2.0
, we introduced a new model for completions. Thanks to everyone for trying it, giving feedback, and providing numerous fixes! Continue to work with the new model as the old one (as noted in code comments) will be deprecated in a coming release.
DisableFlagParsing
now triggers custom completions for flag names #1161- Fixed unbound variables in bash completions causing edge case errors #1321
help
completion formatting improvements & fixes #1444- All completions now follow the
help
example: short desc are now capitalized and removes extra spacing from long description #1455 - Typo fixes in bash & zsh completions #1459
- Fixed mixed tab/spaces indentation in completion scripts. Now just 4 spaces #1473
- Support for different bash completion options. Bash completions v2 supports descriptions and requires descriptions to be removed for
menu-complete
,menu-complete-backward
andinsert-completions
. These descriptions are now purposefully removed in support of this model. #1509 - Fix for invalid shell completions when using
~/.cobra.yaml
. Log messageUsing config file: ~/.cobra.yaml
now printed to stderr #1510 - Removes unnecessary trailing spaces from completion command descriptions #1520
- Option to hid default
completion
command #1541 - Remove
__complete
command for programs without subcommands #1563
Generator changes ⚙️
Thanks to @spf13 for providing a number of changes to the Cobra generator tool, streamlining it for new users!
- The Cobra generator now won't automatically include Viper and cleans up a number of unused imports when not using Viper.
- The Cobra generator's default license is now
none
- The Cobra generator now works with Go modules
- Documentation to reflect these changes
New Features ⭐
- License can be specified by their SPDX identifiers #1159
MatchAll
allows combining several PositionalArgs to work in concert. This now allows for enabling composingPositionalArgs
#896
Bug Fixes 🐛
Testing 👀
- Now testing golang 1.16.x and 1.17.x in CI #1425
- Fix for running diff test to ignore CR for windows #949
- Added helper functions and reduced code reproduction in
args_test
#1426 - Now using official
golangci-lint
github action #1477
Security 🔏
- Added GitHub dependabot #1427
- Now using Viper
v1.10.0
- There is a known CVE in an indirect dependency from
viper
: #1538. This will be patched in a future release
- There is a known CVE in an indirect dependency from
Documentation 📝
- Multiple projects added to the
projects_using_cobra.md
file: #1377 #1501 #1454 - Removed ToC from main readme file as it is now automagically displayed by GitHub #1429
- Documentation correct for when the
--author
flag is specified #1009 shell_completions.md
has an easier to use snippet for copying and pasting shell completions #1372
Other 💭
- Bump version of
cpuguy83/go-md2man
to v2.0.1 #1460 - Removed
lesser
typo from the GPL-2.0 license #880 - Fixed spelling errors #1514
Thank you to all our amazing contributors ⭐🐍🚀