Robert Liebowitz
06e3d38d88
Avoid panic for missing flag value
...
Currently, in cases where a flag value is required but not passed and
short-option handling is enabled, a panic will occur due to a nil
pointer dereference. This prevents that situation from occurring,
instead propagating the appropriate error.
2019-09-13 06:11:09 -04:00
Ajitem Sahasrabuddhe
aed704a9d0
Merge branch 'master' into lint-fixes
2019-08-08 14:44:02 +05:30
Ajitem Sahasrabuddhe
fdba7e0f8c
linter fixes
...
code cleanup
changing some test code to ensure uniformity
2019-08-07 20:14:50 +05:30
Robert Liebowitz
03153b9cf8
Allow combining short flags globally
2019-08-05 06:38:23 -04:00
Lynn Cyrin
38f9e1622d
add environment variable support 🎉
2019-08-01 22:52:21 -07:00
Lynn Cyrin
f21b22dd90
cleanup some issues with error display
2019-08-01 22:10:18 -07:00
Lynn Cyrin
714a73f028
remove unused thing
2019-08-01 19:57:14 -07:00
Lynn Cyrin
9438aba3b8
remove showFlagError, we can use the help printer assertion to accomplish the same goal
2019-08-01 19:54:57 -07:00
Lynn Cyrin
23f09ac1e8
cleanup tests, check required flags in more places
2019-07-28 22:19:35 -07:00
Lynn Cyrin
d8985dc6d5
reduce diff
2019-07-18 00:51:16 -07:00
Lynn Cyrin
19140e1fb5
show errors
2019-07-18 00:48:09 -07:00
Lynn Cyrin
2299852c3c
cleanup subcommand and specs
2019-07-18 00:47:18 -07:00
Lynn Cyrin
cf824804c2
update tests
2019-07-13 13:57:06 -07:00
Lynn Cyrin
746866c10d
add update integration with the help output
2019-07-13 03:44:39 -07:00
Lynn Cyrin
9c299e7e8a
reduce diff
2019-07-11 20:28:29 -07:00
Lynn Cyrin
30a71dc427
update Run command
2019-07-11 20:25:52 -07:00
Lynn Cyrin
138dbaafec
Merge branch 'master' into required_flags
2019-07-11 20:07:55 -07:00
Iskander (Alex) Sharipov
5b83c895a7
use type switch instead of if/else
...
This reduces the syntax noise of the code by
removing excessive type assertions.
Signed-off-by: Iskander Sharipov <quasilyte@gmail.com>
2019-01-29 22:51:02 +03:00
Gábor Lipták
c6eb2a0510
Correct go vet for Go tip
...
https://travis-ci.org/cloudflare/logshare/jobs/309796141#L646
2017-11-30 19:43:12 -05:00
Tyler Davis
40263f4d6a
Merge branch 'master' into master
2017-10-13 12:05:14 -07:00
Sebastian Sprenger
c202606a17
fix golint issues
2017-10-06 07:29:13 +02:00
Tyler Davis
172bb92059
fix named parameter issue
2017-06-28 10:07:25 -07:00
Tyler Davis
530df59178
Pass context into handleExitCoder
2017-06-28 09:52:12 -07:00
Tyler Davis
ceee6408d5
Revert "Fix how to do defaults in app.go"
...
This reverts commit 8906567dc2ad52fd31c50cf02fa606505a1323ba.
2017-06-28 09:38:48 -07:00
Tyler Davis
80b09a4d11
Fix how to do defaults in app.go
2017-06-28 09:38:48 -07:00
Tyler Davis
827da610b4
Add a bit more documentation
2017-06-28 09:38:48 -07:00
Tyler Davis
c48a829640
Allow custom exit err handlers
2017-06-28 09:38:48 -07:00
Jesse Szwedko
c64d74a5d9
Do not double print errors from Before()
...
They should be handled by HandleExitCoder() as `After()` errors are.
2017-06-24 19:57:19 -07:00
Harshavardhana
baa33cb888
Add support for ExtraInfo.
2017-05-08 09:53:53 -07:00
Harshavardhana
f7d6a07f2d
Add support for custom help templates.
2017-05-08 09:53:53 -07:00
Kasey Klipsch
8fa549846e
#556 broke the api for users who were using the ActionFunc
2016-11-21 09:47:23 -06:00
Joshua Rubin
2da42640ad
Merge remote-tracking branch 'origin/master' into completion_fix
2016-11-18 09:28:39 -07:00
Joshua Rubin
8dd1962f7b
change "complete" to "shellComplete"
2016-11-14 09:35:22 -07:00
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.
2016-11-13 14:59:35 -08:00
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
2016-11-12 13:37:07 -08:00
Joshua Rubin
ea3df26e64
make shell autocomplete more robust
2016-11-04 14:56:28 -06:00
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.
2016-11-01 20:33:12 -07:00
Jesse Szwedko
61db37e7ae
Merge branch 'master' into default-writer
2016-10-29 18:36:19 -07:00
Jesse Szwedko
f614c177b7
Merge pull request #543 from wking/app-description
...
app: Add App.Description
2016-10-25 21:54:02 -07:00
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.
2016-10-22 15:58:07 -07:00
Richard Kovacs
4cc2bad36e
Display error instead of just say command is incorrect
2016-10-19 13:31:05 +02:00
Jesse Szwedko
508a23430b
Default app.Writer to os.Stdout
...
As NewApp() does.
Fixes #545
2016-10-18 20:56:31 -07:00
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.
2016-10-12 08:06:41 -07:00
Jesse Szwedko
a5ca09a934
fixup! remove the possiblity of end-user's seeing deprecation warnings
2016-08-21 14:06:59 -07:00
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
2016-08-21 13:51:55 -07:00
Radek Simko
bef215fe3e
app: Allocate Metadata map automatically
2016-07-11 07:39:58 +01:00
Dan Buch
5c7afce5b8
Add help command before category scan/sort
2016-06-22 09:34:24 -04:00
Dan Buch
5a3515fdf8
Focus on catching fewer panics in HandleAction
...
so that "unknown" panics can still bubble up.
2016-06-09 17:32:00 -04:00
Jesse Szwedko
024b4c6240
Update references to codegangsta to urfave (new org name)
...
Also add notice to README
2016-05-22 14:42:23 -07:00
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.
2016-05-09 10:15:05 -04:00