Bot releases are hidden (Show)
Thank you everyone who contributed to this release and all your hard work! Cobra and this community would never be possible without all of you!!!! ๐
Full Changelog: https://github.com/spf13/cobra/compare/v1.8.0...v1.8.1
Published by jpmcb 12 months ago
MarkFlagsOneRequired
API for flags which can be used to mark a flag group as required and cause command failure if one is not used when invoked.SetErrPrefix
and ErrPrefix
APIs on the Command
struct to allow for setting a custom prefix for errorsThank you everyone who contributed to this release and all your hard work! Cobra and this community would never be possible without all of you!!!! ๐
Full Changelog: https://github.com/spf13/cobra/compare/v1.7.0...v1.8.0
Published by jpmcb over 1 year ago
bash
, zsh
, pwsh
, & fish
: @h4ck3rk3y #1903template
import variable name: @yashLadha #1879stale.yaml
mispellings: @enrichman #1863Vitess
and Arewefastyet
to projects using cobra: @frouioui #1932MarkFlagsMutuallyExclusive
example in user guide: @janhn #1904shell_completions.md
: @gusega #1907This release contains several long running fixes, improvements to powershell completions, and further optimizations for completions.
Thank you everyone who contributed to this release and all your hard work! Cobra and this community would never be possible without all of you! ๐
Full changelog: https://github.com/spf13/cobra/compare/v1.6.1...v1.7.0
Published by jpmcb almost 2 years ago
AddGroup
isn't called before AddCommand(my-sub-command)
is executed. This can happen within more complex cobra file structures that have many different init
s to be executed. Now, the check for groups has been moved to ExecuteC
and provides more flexibility when working with grouped commands - @marckhouzam (and shout out to @aawsome, @andig and @KINGSABRI for a deep investigation into this! ๐๐ผ)Published by jpmcb about 2 years ago
Some exciting changes make their way to Cobra! Command completions continue to get better and better (including adding --help
and --version
automatic flags to the completions list). Grouping is now possible in your help output as well! And you can now use the OnFinalize
method to cleanup things when all "work" is done. Checkout the full changelog below:
ValidateRequiredFlags
and ValidateFlagGroups
: @skeetwu #1760--version
flag to help output: @fnickels #1707--help
and --version
flag in completions: @marckhouzam #1813OnFinalize
method: @yann-soubeyrand #1788InitDefaultcompletionCmd
public: @gssbzn #1467ExactValidArgs
is deprecated (but not being removed entirely). This is abit nuanced, so checkout #1643 for further information and the updated user_guide.md
on how this may affect you (and how you can take advantage of the correct behavior in the validators): @umarcor #1643activeHelp
length check syntax: @scop #1762see_also
for yaml documentation: @zregvart #1771gopkg.in/yaml.v3
: @tklauser #1766action/setup-go
cache: @umarcor #1783workflow_dispatch
to CI actions: @umarcor #1387SetContext
documentation: @katexochen #1748go install
for binary: @marckhouzam #1726exempt
yaml keys: @jpmcb #1800Note: Per #1804, we will be moving away from "seasonal" releases and doing more generic point release targets. Continue to track the milestones and issues in the spf13/cobra
GitHub repository for more information!
Great work everyone! Cobra would never be possible without your contributions! ๐
Full Changelog: https://github.com/spf13/cobra/compare/v1.5.0...v1.6.0
Published by jpmcb over 2 years ago
Hello everyone! Welcome to another release of cobra. Completions continue to get better and better. This release adds a few really cool new features. We also continue to patch versions of our dependencies as they become available via dependabot. Happy coding!
Shout out to @marckhouzam for a big value add: Active Help https://github.com/spf13/cobra/pull/1482. With active help, a program can provide some inline warnings or hints for users as they hit tab. Now, your CLIs can be even more intuitive to use!
Currently active help is only supported for bash V2 and zsh. Marc wrote a whole guide on how to do this, so make sure to give it a good read to learn how you can add this to your cobra code! https://github.com/spf13/cobra/blob/master/active_help.md
Cobra now has the ability to mark flags as required or exclusive as a group. Shout out to our newest maintainer @johnSchnake for this! https://github.com/spf13/cobra/pull/1654 Let's say you have a username
flag that MUST be partnered with a password
flag. Well, now, you can enforce those as being required together:
rootCmd.Flags().StringVarP(&u, "username", "u", "", "Username (required if password is set)")
rootCmd.Flags().StringVarP(&pw, "password", "p", "", "Password (required if username is set)")
rootCmd.MarkFlagsRequiredTogether("username", "password")
Flags may also be marked as "mutally exclusive" with the MarkFlagsMutuallyExclusive(string, string ... )
command API. Refer to our user guide documentation for further info!
CHANGELOG.md
as it isn't updated - @johnSchnake https://github.com/spf13/cobra/pull/1634
shell_completion.md
- @danieldn https://github.com/spf13/cobra/pull/1678
RICHGO_FORCE_COLOR
- @umarcor https://github.com/spf13/cobra/pull/1647
stale-bot
settings - @jpmcb https://github.com/spf13/cobra/pull/1609
errors.Is()
to check for errors - @Luap99 https://github.com/spf13/cobra/pull/1730
Shoutout to ALL our contributors (and all the new first time contributors!!) - great work everyone!! Cobra and it's huge impact wouldn't be possible without you ๐๐ผ ๐ ๐
Full Changelog: https://github.com/spf13/cobra/compare/v1.4.0...v1.5.0
Published by jpmcb over 2 years ago
Another season, another release!
The core Cobra library no longer requires Viper and all of its indirect dependencies. This means that Cobra's dependency tree has been drastically thinned! The Viper dependency was included because of the cobra
CLI generation tool. This tool has migrated to spf13/cobra-cli
.
It's pretty unlikely you were importing and using the bootstrapping CLI tool as part of your application (after all, it's just a tool to get going with core cobra
).
But if you were, replace occurrences of
"github.com/spf13/cobra/cobra"
with
"github.com/spf13/cobra-cli"
And in your go.mod
, you'll want to also include this dependency:
github.com/spf13/cobra-cli v1.3.0
Again, the maintainers do not anticipate this being a breaking change to users of the core cobra
library, so minimal work should be required for users to integrate with this new release. Moreover, this means the dependency tree for your application using Cobra should no longer require dependencies that were inherited from Viper. Huzzah! ๐ฅณ
If you'd like to read more
@latest
: https://github.com/spf13/cobra/pull/1576
Shoutout to our awesome contributors helping to make this cobra release possible!!
@spf13 @marckhouzam @johnSchnake @jpmcb @liggitt @umarcor @hiljusti @marians @shyim @htroisi
Published by jpmcb almost 3 years ago
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 #1161help
completion formatting improvements & fixes #1444help
example: short desc are now capitalized and removes extra spacing from long description #1455menu-complete
, menu-complete-backward
and insert-completions
. These descriptions are now purposefully removed in support of this model. #1509~/.cobra.yaml
. Log message Using config file: ~/.cobra.yaml
now printed to stderr #1510completion
command #1541__complete
command for programs without subcommands #1563Thanks to @spf13 for providing a number of changes to the Cobra generator tool, streamlining it for new users!
none
MatchAll
allows combining several PositionalArgs to work in concert. This now allows for enabling composing PositionalArgs
#896init
boilerplates #1463 #1552 #1557args_test
#1426golangci-lint
github action #1477v1.10.0
viper
: https://github.com/spf13/cobra/issues/1538. This will be patched in a future releaseprojects_using_cobra.md
file: #1377 #1501 #1454--author
flag is specified #1009shell_completions.md
has an easier to use snippet for copying and pasting shell completions #1372cpuguy83/go-md2man
to v2.0.1 #1460lesser
typo from the GPL-2.0 license #880Thank you to all our amazing contributors โญ๐๐
Published by jpmcb over 3 years ago
cmd.RegisterFlagCompletionFunc()
(and subsequent map) now works correctly and flag completions now work againPublished by jpmcb over 3 years ago
Welcome to v1.2.0 of Cobra! This release focuses on code completions, several critical bug fixes, some documentation updates, and security bumps. Upgrading should be simple but please take note of the introduction of bash completions V2 and their default use. The v1 completions library is still available, but will be deprecated in the future. Please open an issue with any problems!
completion
command for shell completions. If a completion
command is already provided, uses that instead. This will automatically provide shell completions for bash, zsh, fish, and PowerShell https://github.com/spf13/cobra/pull/1192
--no-descriptions
flag for "always on" completion descriptionsmitchellh/go-homedir
in favor of core Go os.UserHomeDir()
- https://github.com/spf13/cobra/commit/8eaca5f0f49ad747a0722d39dca7a75c34abd21a
ShellDirectiveCompletionNoSpace
and file completion all the time - https://github.com/spf13/cobra/pull/1213
RegisterFlagCompletionFunc
as a global var not working in multi-threaded programs: https://github.com/spf13/cobra/pull/1423
Thank you to all our amazing contributors ๐๐
Published by anthonyfok over 3 years ago
release-branch.cobra1.1
only: Revert "Deprecate Go < 1.14" to maintain backward compatibilityPublished by anthonyfok over 3 years ago
Published by jpmcb almost 4 years ago
Published by jharshman about 4 years ago
cmd.DisableAutoGenTag = true
(#1104)Published by jharshman over 4 years ago
Announcing v1.0.0 of Cobra. ๐
Published by jharshman over 4 years ago
Bug fix to restore previous exit behavior when a command is not runnable.
Issue Ref: #1056
Bug Introduced: #922
Affected Releases: 0.0.6
Published by broady over 5 years ago
As requested in #259 and #857.
Changes:
https://github.com/spf13/cobra/compare/v0.0.3...v0.0.4
Published by eparis over 6 years ago
Tagged release for package managers, as requested in #693.