* main: (39 commits)
Add '--version' flag to Help output (#1707)
Expose ValidateRequiredFlags and ValidateFlagGroups (#1760)
Document option to hide the default completion cmd (#1779)
ci: add workflow_dispatch (#1387)
add missing license headers (#1809)
ci: use action/setup-go's cache (#1783)
Adjustments to documentation (#1656)
Rename Powershell completion tests (#1803)
Support for case-insensitive command names (#1802)
Deprecate ExactValidArgs() and test combinations of args validators (#1643)
Use correct stale action `exempt-` yaml keys (#1800)
With go 1.18, we must use go install for a binary (#1726)
Clarify SetContext documentation (#1748)
ci: test on Golang 1.19 (#1782)
fix: show flags that shadow parent persistent flag in child help (#1776)
Update gopkg.in/yaml.v2 to gopkg.in/yaml.v3 (#1766)
fix(bash-v2): activeHelp length check syntax (#1762)
fix: correct command path in see_also for YAML doc (#1771)
build(deps): bump github.com/inconshreveable/mousetrap (#1774)
docs: add zitadel to the list (#1772)
...
The `see_also` section for child commands would include only the name of
the commands. This adds the whole path, similar to how it's done for the
other documentation formats.
full diff: https://github.com/cpuguy83/go-md2man/compare/v2.0.0...v2.0.1
- Fix handling multiple definition descriptions
- Fix inline markup causing table cells to split
- Remove escaping tilde character (prevents tildes (`~`) from disappearing).
- Do not escape dash, underscore, and ampersand (prevents ampersands (`&`) from disappearing).
- Ignore unknown HTML tags to prevent noisy warnings
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
This patch modifies the GenMarkdownCustom to skip writing a Synopsis
header with the `cmd.Short` duplicated both before and after the header.
Instead, it only writes the `### Synopsis` header and the paragraph when
a `cmd.Long` has some kind of content in it.
Adds `TestGenMdDocWithNoLongOrSynopsis` as the test case.
Signed-off-by: Marc Lopez <marc5.12@outlook.com>
Previously if a cobra user didn't specify an explicit .Date header, the
current time would be included in all of the generated man pages each
time they were built. This causes an issue for reproducible builds,
since each re-build of a package that includes the man pages will have
different times listed in the man pages.
To fix this, add support for SOURCE_DATE_EPOCH (which is a standardised
packaging environment variable, designed to be used specifically for
this purpose[1]).
[1]: https://reproducible-builds.org/specs/source-date-epoch/
Signed-off-by: Aleksa Sarai <asarai@suse.de>
benchmark old ns/op new ns/op delta
BenchmarkGenYamlToFile-4 62488 61622 -1.39%
benchmark old allocs new allocs delta
BenchmarkGenYamlToFile-4 121 120 -0.83%
benchmark old bytes new bytes delta
BenchmarkGenYamlToFile-4 26706 26280 -1.60%
The default pflag error is to only print the bad flag. This enables an application
to include a usage message or other details about the error.
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
* Moving final return outside of if-else
* Removing type declarations that Go can infer from values
* Cleaning up some existing comments
* Changing snake_case variables to camelCase