Commit Graph

1585 Commits

Author SHA1 Message Date
Antonio Fdez
b5d06bd2a9 allow to load YAML configuration files on Windows
The funtion `loadDataFrom` does not take care of Windows users since any of the conditions met and it returns an error.

The change looks for the runtime where it's running and then if the filePath contains a `\`
2016-11-17 16:58:46 +01:00
Joshua Rubin
3272baf434
add a test for shell completion using incomplete flags 2016-11-14 10:10:51 -07:00
Joshua Rubin
8dd1962f7b
change "complete" to "shellComplete" 2016-11-14 09:35:22 -07:00
Jesse Szwedko
b4f4786f37 Merge pull request #529 from urfave/prepare-v1.19.0
Prepare v1.19.0 release
2016-11-13 15:35:18 -08:00
Jesse Szwedko
dcdea39be2 Add additional entries to changelog for v.19.0 release 2016-11-13 15:04:31 -08:00
Jesse Szwedko
fa7ccb1447 Update changelog 2016-11-13 15:01:04 -08:00
Jesse Szwedko
4c2360f975 Prepare CHANGELOG for v1.19.0 2016-11-13 15:01:04 -08:00
Jesse Szwedko
de551c4450 Backport removal of deprecation warnings
#508
2016-11-13 15:01:04 -08:00
Jesse Szwedko
31b79c9a33 Merge pull request #530 from urfave/consider-empty-env-vars
Consider empty environment variables as set
2016-11-13 15:00:04 -08:00
Jesse Szwedko
b4a64dc08d Add windows implementation of Clearenv for tests
Apparently `Clearenv` in Windows just sets the variables to ""
2016-11-13 14:59:35 -08: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
a00c3f5872 Consider empty environment variables as set
When assigning values to flags (also when interogatting via
`context.(Global)IsSet`.

For boolean flags, consider empty as `false`.

Using `syscall.Getenv` rather than `os.LookupEnv` in order to support
older Golang versions.
2016-11-13 14:59:27 -08:00
Jesse Szwedko
7a5dacbc41 Merge pull request #560 from mh-cbon/master
Close #558: detect FormattedError and print their stack trace
2016-11-13 13:44:15 -08:00
mh-cbon
b0a8f25773 558: handle multi formatter errors 2016-11-13 22:34:31 +01:00
Jesse Szwedko
af372e8e2a Merge branch 'master' into master 2016-11-12 14:32:21 -08:00
Jesse Szwedko
88ae7af8d4 Merge pull request #563 from urfave/print-help-if-no-action
If no action is specified on the command or app, print the help documentation
2016-11-12 13:49:46 -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
Jesse Szwedko
36053a9dfd Merge branch 'master' into fix/handle-multierror 2016-11-12 12:46:57 -08:00
HIROSE Masaaki
6c50b15a27 Exit with the code of ExitCoder if exists 2016-11-11 13:11:50 +09:00
mh-cbon
79591889a9 Close #558: detect FormattedError and print their stack trace 2016-11-05 10:36:23 +01:00
Joshua Rubin
ea3df26e64
make shell autocomplete more robust 2016-11-04 14:56:28 -06:00
d86a009f5e Merge pull request #556 from urfave/use-assertions-over-reflection
Use type assertions rather than reflection to determine how to call the `Action`
2016-11-02 09:18:01 -04: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
3eb41f1bb1 Merge pull request #547 from urfave/default-writer
Default app.Writer to os.Stdout
2016-10-29 18:45:05 -07:00
Jesse Szwedko
61db37e7ae Merge branch 'master' into default-writer 2016-10-29 18:36:19 -07:00
Jesse Szwedko
e485446237 Merge pull request #555 from urfave/v2-merge
Merge origin/master into v2
2016-10-29 15:39:47 -07:00
Jesse Szwedko
03f77c6e74 Fix new example for v2 branch 2016-10-29 14:33:41 -07:00
Jesse Szwedko
83497d2cda Merge remote-tracking branch 'origin/master' into v2-merge 2016-10-29 14:13:18 -07:00
Jesse Szwedko
76d8eaf9fe Merge pull request #490 from nlewo/v2-completion
Generate completion code
2016-10-25 21:55:42 -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
Jesse Szwedko
b803494208 Merge pull request #542 from mhmxs/patch-1
Display error instead of just say command is incorrect
2016-10-25 21:52:14 -07:00
Richard Kovacs
668cf38bbe Merge branch 'master' into patch-1 2016-10-24 09:45:24 +02:00
W. Trevor King
3c2bce5807 help: Cleanup AppHelpTemplate trailing whitespace
Most of the changes here remove trailing whitespace, but I also add
code to select "AUTHOR" or "AUTHORS" as appropriate instead of the
previous "AUTHOR(S)".  The template for listing with an entry per line
is:

   {{range $index, $entry := pipeline}}{{if $index}}
   {{end}}{{$entry}}{{end}}

That range syntax is discussed in [1].

Also add a unit test, which tests both these whitespace changes and
also the earlier App.Description addition.

[1]: https://golang.org/pkg/text/template/#hdr-Variables
2016-10-22 16:02:21 -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
Jesse Szwedko
6f2647a880 Merge pull request #544 from runcom/sort-flags
flags: sort flags
2016-10-22 10:29:59 -07:00
Jesse Szwedko
64fcd51526 Merge branch 'master' into sort-flags 2016-10-22 10:22:16 -07:00
Jesse Szwedko
3f4989051e Merge pull request #550 from runcom/test-go-1-7
.travis.yml: add go 1.7.x
2016-10-22 09:40:07 -07:00
Antonio Murdaca
d913b71c72
.travis.yml: add go 1.7.x
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2016-10-21 10:46:51 +02:00
Antonio Murdaca
c516bce8f1
flags: provide a type to sort flags
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2016-10-21 10:37:18 +02: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
55f715e28c Merge pull request #541 from dotCipher/patch-1
Typo in comments
2016-10-05 20:53:53 -07:00
Cody Moore
6c2c80959b Typo in comments
Typo changing `implents` to `implements`
2016-10-05 11:17:03 -07:00
HIROSE Masaaki
ce42837702 Call HandleExitCoder for all members of MultiError.Errors 2016-09-30 19:23:44 +09:00
Jesse Szwedko
d53eb99165 Merge pull request #531 from keloyang/SkipFlagParsing-SkipArgReorder-bugfix
bug fix when SkipFlagParsing is false and SkipArgReorder is true
2016-09-17 14:38:06 -07:00
Shukui Yang
5d108a4435 bug fix when SkipFlagParsing is false and SkipArgReorder is true
Signed-off-by: Shukui Yang <yangshukui@huawei.com>
2016-09-12 21:30:33 +08:00
Jesse Szwedko
61f519fe5e Merge pull request #528 from urfave/backport-no-arg-reordering
Backport no argument reordering as an option
2016-09-11 20:00:11 -07:00
Frances Bar
3df4b71842 Backport no argument reordering as an option
In the unreleased version 2, the argument reordering has been removed
(in f585ec7cb8) since it only worked if
all of the arguments appeared before all of the flags, but not if they
were intermixed which was of limited utility and caused some confusion.
This commit allows enabling of this future behavior via SkipArgReorder.

Ideally we'd support complete intermingling of flags and arguments, but
this is unlikely to happen until we switch flag parsers.

Fixes #515
2016-09-11 12:04:35 -07:00
86b8c43eaf Merge pull request #521 from urfave/update-wording-around-gopkgin
Update wording around gopkg.in pinning to be more accurate
2016-09-11 14:27:17 -04:00