Kasey Klipsch
8fa549846e
#556 broke the api for users who were using the ActionFunc
8 years ago
Joshua Rubin
2da42640ad
Merge remote-tracking branch 'origin/master' into completion_fix
8 years ago
Joshua Rubin
8dd1962f7b
change "complete" to "shellComplete"
8 years ago
Jesse Szwedko
e367fafa3d
Return an error when parsing environment variables for values fails
...
Currently cli silently (aside from IntSlice and Int64Slice which oddly
printed directly to the error stream) ignores failures that occur when
parsing environment variables for their value for flags that define
environment variables. Instead, we should propogate up the error to the
user.
This is accomplished in a backwards compatible manner by adding a new,
internal, interface which defines an applyWithError function that all
flags here define. In v2, when we can modify the interface, we can drop
this secondary interface and modify `Apply` to return an error.
8 years ago
Jesse Szwedko
0113f56d10
If no action is specified on the command or app, print the help documentation
...
Rather than panic'ing or displaying an opaque error message about the
signature which is more confusing to the end user.
Fixes #562
8 years ago
Joshua Rubin
ea3df26e64
make shell autocomplete more robust
8 years ago
Jesse Szwedko
b377b5d9e9
Use type assertions rather than reflection to determine how to call the `Action`
...
This has some benefits, but results in possibly less informative error
messaging; however, given that there are only two accepted types,
I think the error messaging is sufficient.
8 years ago
Jesse Szwedko
61db37e7ae
Merge branch 'master' into default-writer
8 years ago
Jesse Szwedko
83497d2cda
Merge remote-tracking branch 'origin/master' into v2-merge
8 years ago
Jesse Szwedko
f614c177b7
Merge pull request #543 from wking/app-description
...
app: Add App.Description
8 years ago
W. Trevor King
0c143a2a26
app: Fix trailing space for Author.String()
...
This code initially landed with lots of space:
'{name} <{email}> '
or:
'{name} '
in 3d718330
(app, help: add support for multiple authors, 2015-01-31).
The doubled space between the name and email was removed in c6592bb4
(app, help: add backwards compatibility for Authors, 2015-02-21), but
a trailing space remained in both the email and email-less cases.
This commit removes that trailing space.
8 years ago
Richard Kovacs
4cc2bad36e
Display error instead of just say command is incorrect
8 years ago
Jesse Szwedko
508a23430b
Default app.Writer to os.Stdout
...
As NewApp() does.
Fixes #545
8 years ago
W. Trevor King
c4a46a7df2
app: Add App.Description
...
So you can describe what the application is for without requiring
users to drill down into a particular command.
8 years ago
Jesse Szwedko
a5ca09a934
fixup! remove the possiblity of end-user's seeing deprecation warnings
8 years ago
Jesse Szwedko
8e6aa34a12
remove the possiblity of end-user's seeing deprecation warnings
...
Instead use deprecation pattern described in
https://blog.golang.org/godoc-documenting-go-code .
Fixes #507
8 years ago
Antoine Eiche
94bc26fd1c
Refactoring names from bash to shell
...
The refactoring is required since completion is also supported for zsh
shell.
Refactoring details:
- flag generate-bash-completion -> generate-completion
- var EnableBashCompletion -> EnableShellCompletion
- var BashComplete -> ShellComplete
- var BashCompletionFlag -> GenerateCompletionFlag
- type BashCompleteFunc -> ShellCompleteFunc
8 years ago
Antoine Eiche
7640bef0eb
Add --init-completion flag to print completion code
...
This flag takes as input 'bash' or 'zsh' and generates the completion
code for the specified shell.
8 years ago
Dan Buch
f7b2b93ffa
Merge remote-tracking branch 'origin/v1' into merging-from-v1
8 years ago
Radek Simko
bef215fe3e
app: Allocate Metadata map automatically
8 years ago
Dan Buch
99621d571e
Merge remote-tracking branch 'origin/v2' into declarativeness
8 years ago
Dan Buch
df685fbacc
Remove `NewApp` initializer
...
and move defaulting to `App.Setup`
8 years ago
Dan Buch
0f135b318e
Merge remote-tracking branch 'origin/v1' into merging-from-v1
8 years ago
Dan Buch
5c7afce5b8
Add help command before category scan/sort
8 years ago
Dan Buch
5a3515fdf8
Focus on catching fewer panics in HandleAction
...
so that "unknown" panics can still bubble up.
8 years ago
Dan Buch
3d75e9e711
Go with interfaces + private opaque types
...
rather than public types that wrap slices
8 years ago
Dan Buch
c70993dbc5
Merge branch 'v2' into minimize-struct-copying
8 years ago
Dan Buch
8f25dbb615
Ensure all flag aliases are set when Destination given
...
and extend "Incorrect Usage" message to show the error.
Closes #430
8 years ago
Dan Buch
61710ff108
Make slice wrapping pattern more consistent
...
and move *Args out into its own file
8 years ago
Jesse Szwedko
024b4c6240
Update references to codegangsta to urfave (new org name)
...
Also add notice to README
8 years ago
Dan Buch
cd10b49473
Minimize struct copying
...
by using pointer func receivers and slices of struct pointers where possible.
8 years ago
Dan Buch
81fcf706ea
Replace all "stringly typed" fields with slice equivalents
...
and alter the Flag interface accordingly
Closes #415
8 years ago
Dan Buch
c19dbaf230
Remove deprecated things and supporting code
8 years ago
Matt Farina
07ce8bf79c
Cleaned up else per golint
...
When an if ends in a return the else is not required. golint
detects these conditions and found these.
8 years ago
Matt Farina
2f110bd745
Cleaned up exported func comments per golint
8 years ago
Matt Farina
2f4ec31264
Fixed spelling and gofmt issues
8 years ago
Dan Buch
97d2df6dd7
Merge remote-tracking branch 'origin/master' into psmit-hidden_command
8 years ago
Matt Farina
6f0b442222
Update to ErrWriter and make available on app
9 years ago
Matt Farina
2a256d4c53
Provide a variable for writing output with a default of os.Stderr
9 years ago
Dan Buch
cc481d6b0e
Adjust command hiding to use similar convention as hidden flags
...
plus breaking out "setup" portion of `App.Run` into its own method, cleaning up
some bits of the help templates, and allowing for runtime opt-in of displaying
template errors to stderr.
9 years ago
Dan Buch
4b4c07bd4f
Ensure HandleAction/HandleExitCoder work correctly with *ExitError
...
Closes #376
9 years ago
Gert-Jan Timmer
a90e2e4ff1
Fix #376 NewExitError not working, reflect vals[0] cast to Interface() was missing
9 years ago
Dan Buch
e0d7cbbe2c
Merge pull request #372 from codegangsta/deprecation-cleanups
...
Cleaning up the recently-introduced deprecations
9 years ago
Dan Buch
007295e509
Cleaning up the recently-introduced deprecations
...
to ensure the intent, responsibility, and migration path are all more clear.
9 years ago
Dan Buch
fed78b8bab
Rework of hidden flag impl plus some Action func corrections
9 years ago
Dan Buch
e671f0b23b
Merge pull request #339 from jack230230/master
...
Add App.Metadata
9 years ago
王振威
f72d405107
Change Extras to Metadata
9 years ago
Dan Buch
06c01a4bba
A few tweaks based on feedback in #361
9 years ago
Dan Buch
4cae17cfe1
Ensure MultiError returned when both Before and After funcs given
9 years ago
Dan Buch
b453bf5940
Clarifying errors returned from HandleAction + tests
9 years ago
Dan Buch
271b56c71b
Cleanups based on feedback in #361
9 years ago
Dan Buch
7371138edb
Add back App.RunAndExitOnError with deprecation message
9 years ago
Dan Buch
02924293ff
Removing unused vars
9 years ago
Dan Buch
d45f7c1fe2
Allow for legacy and newer Action func signatures
9 years ago
Dan Buch
f688d47415
Encapsulate ExitCoder check into a lil func
9 years ago
Dan Buch
b7329f4968
Switch from multi-return with exit codes to ExitCoder check
9 years ago
Dan Buch
a17c8cf1d8
Rename func type suffixes `Fn`->`Func` and add `OnUsageErrorFunc`
9 years ago
Dan Buch
10c8309d84
Merge branch 'develop' of https://github.com/txgruppi/cli into txgruppi-develop
9 years ago
Felamande
3fb51f15e8
use filepath.Base instead of path.Base in Name & HelpName as default values.
9 years ago
Jesse Szwedko
bc465beccc
Merge pull request #346 from codegangsta/category_sort_2
...
Add option to make categories with command, to display a more structured help
9 years ago
Radek Simko
d21170f0e3
Never show version if HideVersion=true
9 years ago
Jesse Szwedko
042842b819
Remove CategorizedHelp from App and allow subcommands to have categories
...
Just place all subcommands in categories, the default category will be
"" which will properly format the output (and group commands that have
no category).
Also allow subcommands to have categories.
Lastly, augment the test to check the output.
9 years ago
Soulou
d0997e8f99
Set Categories as a read-only method and fix tests
9 years ago
Soulou
994a7028e2
Categories as slice, not a map anymore, order is always preserved
9 years ago
Soulou
a0801792cc
Allow to sort commands by category
9 years ago
王振威
88ea7cbec8
Add App extras info
9 years ago
adamclerk
cde8418658
Fixes spelling issues and import alphabetical issues
...
Using goreportcard.com I noticed a few spelling errors. I really love codegangsta/cli
and wanted to help improve it.
9 years ago
Jesse Szwedko
d5f087da9d
Merge pull request #289 from KSubedi/master
...
Added command to have a custom text on the USAGE section of help
9 years ago
Gregor Noczinski
66c1742012
* Fixed typos
9 years ago
Gregor Noczinski
c462071a52
* Added ability to customize usage error messages
9 years ago
leonardyp
6f6e8caf6c
Repeat context statement because of a is a pointer
...
performance optimization
gofmt code
9 years ago
Gregor Noczinski
f3c8e07836
Also show help if App/Command Before produces error.
9 years ago
Yagnesh Mistry
b0b9bd5dac
use path.Base in Name & HelpName as default values
9 years ago
Jacopo
4a8406ac89
Run check completion before error checking
...
Running check completion before error checking allows for completion of flags when no character has been typed yet
9 years ago
Kaushal Subedi
c70ad9b688
fixed tests
9 years ago
Ryan Graham
732e97aee8
only display app version and help message once
...
When processing the flags for -h/--help and -v/--version, only check
the flags in checkVersion() and checkHelp() instead of also printing
the associated message.
This fixes the problem of `app -h` and `app -v` printing their output
twice. The doubling was caused by printing the message once for each
registred alias for the given flags (-h/--help and -v/--version).
Resolves #285
9 years ago
Jesse Szwedko
9039757268
Merge pull request #267 from tristanz/master
...
Add ArgsUsage field to document the use of arguments
9 years ago
Nodir Turakulov
c80fcac42b
Honor HideHelp and HideVersion
...
App.Run does not check a.Hide{Help,Version} before checking it,
as a result customers cannot define their own -v flag (e.g. for verbose)
9 years ago
Tristan Zajonc
c7aac252f1
add tests
9 years ago
Tristan Zajonc
cc46ca1020
allow overriding help name
9 years ago
Tristan Zajonc
aced6e8739
fix tests
9 years ago
Tristan Zajonc
ef65245544
add ArgsUsage to App and Command
9 years ago
Tarcísio Gruppi
49c1229409
Added exit code support
...
Now the exit code can be returned by BeforeFn, ActionFn and AfterFn.
The `os.Exit` function is not called by this packaged
This closes #66 and closes #164
9 years ago
Tarcísio Gruppi
9c0db3f4ac
Created types for functions
...
The function used by BashComplete, Before, After, Action and
CommandNotFound have their won type.
This makes easier to change/update the API
9 years ago
Martin Falatic
ee2cde7a77
Print blank lines in help and error outputs more consistently.
9 years ago
Jesse Szwedko
7ad88c2740
Merge pull request #238 from polds/copyright
...
Add the ability to add a copyright
9 years ago
Mawueli Kofi Adzoe
c7be972e81
Fix tiny typo.
9 years ago
Peter Olds
2726643347
Add the ability to add a copyright
...
Signed-off-by: Peter Olds <polds@kyanicorp.com>
9 years ago
Jesse Szwedko
55b8924c2b
Merge pull request #230 from codegangsta/do-not-swallow-after-error
...
Aggregate errors from Before/After
9 years ago
Jesse Szwedko
7ed7a51f86
Aggregate errors from Before/After
...
Previously `After` would overwrite any error from `Before`.
9 years ago
Fabian Ruff
65d50017d4
search context hierachy for global flags
9 years ago
jszwedko
e842547421
Readd printHelp function back
...
But update signature to take a writer. This is a backwards incompatible
change for those overriding the HelpPrinter, but the hope is that this
feature is largely unused and the usage is easily updated.
10 years ago
Dan Buch
2bcd11f863
Merge pull request #193 from codegangsta/add-aliases
...
Add `Command.Aliases` and deprecate `Command.ShortName`
10 years ago
jszwedko
b95607c608
Use named struct fields
10 years ago
jszwedko
7beac44ab1
Don't default authors
10 years ago
jszwedko
5f95a9e88b
Fix support for deprecated author fields
...
Should add an author if either name or email is specified.
10 years ago
jszwedko
bf65971a6a
Add `Command.Aliases` and deprecate `Command.ShortName`
...
`Aliases` will be more flexible while still allowing "ShortName"
behaviour via `Aliases`.
10 years ago
jszwedko
01cdaa065a
Merge remote-tracking branch 'origin/master' into add-multi-author-support
...
Conflicts:
app.go
10 years ago
jhowarth
a6482d2687
Merge remote-tracking branch 'upstream/master'
...
Conflicts:
app.go
command.go
flag.go
10 years ago
jhowarth
6023f370c1
dry error messages
10 years ago