Alex Flint
ea0f540c40
update to latest go-scalar, add test for hex, oct, and binary integer literals
2022-10-02 13:05:04 -07:00
Sebastiaan Pasterkamp
a87d80089a
Add 'IgnoreDefault' option
2022-01-02 15:17:09 +01:00
Alex Flint
b47d6e3da6
put name of environment variable in error message
2021-10-01 04:35:15 -07:00
Alex Flint
3d59e5e89e
bump go-scalar to v1.1 and add documentation about supported types
2021-08-20 19:52:48 -07:00
Alex Flint
fa12c02e81
recurse into unexported embedded structs
2021-05-24 21:45:11 -07:00
Alex Flint
2e81334206
fix case where an environment variable containing an empty string is parsed into a slice or map
2021-04-20 19:09:47 -07:00
Alex Flint
01a9fab8d7
clean up environment variable tests
2021-04-19 21:22:12 -07:00
Alex Flint
fe4a138ac8
test coverage 100% !!
2021-04-19 21:03:43 -07:00
Alex Flint
bb4e7fd4b0
add unittests for maps as environment variables with the separate flag
2021-04-19 13:33:31 -07:00
Alex Flint
9949860eb3
change "kind" to "cardinality", add support for maps to parser
2021-04-19 13:21:04 -07:00
Alex Flint
23b96d7aac
refactor canParse into kindOf
2021-04-19 12:49:49 -07:00
Alex Flint
2a91531140
Merge remote-tracking branch 'origin/master' into optional-long
2021-01-31 19:20:28 -08:00
Alex Flint
aa6cb95149
skip unexported fields
2021-01-31 18:29:22 -08:00
Andrew Morozko
faebd3e0f2
Optional long arguments
2020-12-20 02:54:03 +03:00
Alex Flint
17bbf2e7ef
add Config.IgnoreEnv to ignore environment variables
2020-03-01 16:32:59 -06:00
Alex Flint
cb4e079d13
add a further test
2020-01-24 14:42:49 -08:00
Alex Flint
711618869d
fix issue with duplicate fields in embedded structs
2020-01-24 14:30:29 -08:00
Andrew Morozko
c3a019cdb8
Various changes
2019-11-30 00:22:21 +03:00
Alex Flint
cc768447a7
store default values during NewParser
2019-10-19 23:23:32 -07:00
Alex Flint
0c95297990
add support for default values in struct tags
2019-10-08 16:39:00 -07:00
Alex Flint
233d378a50
fix issue 89 (multiple args terminated by "--")
2019-10-04 13:18:17 -07:00
Alex Flint
fcdfbc090b
fix comment
2019-08-06 16:00:13 -07:00
Alex Flint
990e87d80d
no need to initialize nil structs during path traversal
2019-05-03 16:32:16 -07:00
Alex Flint
bd97edec87
add Parser.Subcommand and Parser.SubcommandNames
2019-05-03 16:08:29 -07:00
Alex Flint
a68d6000b6
test use of --version
2019-05-02 09:47:39 -07:00
Alex Flint
93fcb0e87d
use backticks rather than backslashes in string literal
2019-05-02 09:46:11 -07:00
Alex Flint
c8c61cf8bb
add test for case where environment var is not present
2019-05-02 09:44:48 -07:00
Alex Flint
f2f7bdbbd7
add test case for missing value in middle of argument string
2019-05-02 09:39:12 -07:00
Alex Flint
4e977796af
add recursive expansion of subcommands
2019-04-30 12:54:28 -07:00
Alex Flint
7df132abe8
check error in test
2019-04-30 11:16:10 -07:00
Alex Flint
b8678d4045
refactor validation
2019-04-14 18:00:40 -07:00
Alex Flint
6b4ab7355c
add golangci badge, and fix some lint issues found by the tool
2019-04-04 09:10:24 -07:00
Pavel Borzenkov
f1aabd5026
parse_test: add tests covering new TextUnamarshaler value support
...
Signed-off-by: Pavel Borzenkov <pavel.borzenkov@gmail.com>
2018-11-20 12:29:36 +03:00
Pavel Borzenkov
96b097bef3
parse_test: fix formatting
...
Signed-off-by: Pavel Borzenkov <pavel.borzenkov@gmail.com>
2018-11-20 12:29:15 +03:00
Illia Volochii
89714b6f48
Fix the problem with errors
2018-05-14 22:18:05 +03:00
Illia Volochii
fa5fe315f8
Change format from JSON to CSV
2018-05-01 12:02:44 +03:00
Illia Volochii
488fd7e82a
Add one more test
2018-04-26 21:39:48 +03:00
Illia Volochii
75bf1a1525
Fix providing multiple values via environment variables
2018-04-26 21:10:44 +03:00
Alex Flint
4d71204936
add positional test
2018-04-18 21:54:27 -07:00
Alex Flint
6f2f3b4bf6
drop setScalar
2018-04-18 21:23:08 -07:00
Alex Flint
a0df5f3391
handle negative values
2018-01-13 14:20:00 -08:00
Rick
d7961941f0
Altered help tag parsing to reduce the constraints on help text content; old behaviour is retained for backward compatibility
2017-10-02 14:18:41 +01:00
Rick
fb97335a13
Allow spaces after each comma in tags
2017-09-16 12:05:53 +01:00
Mario Hros
992acaf408
tests
2017-03-30 20:47:59 +02:00
Kenneth Shaw
d4c2b35b2e
Adding separate tag option
...
As outlined in #49 , there is a need to mimic the behavior of other
applications by interweaving positional and non-positional parameters.
This change adds the 'separate' option that will force a arg of type
[]string to only read the next supplied value.
For example, when dealing with the following arg type:
var MyArgs struct {
Pos []string `arg:"positional"`
Separate []string `arg:"-s,separate"`
}
This commit will parse the following command line:
./app pos1 pos2 -s=separate1 -s=separate2 pos3 -s=separate3 pos4
Such that MyArgs.Pos will be [pos1 pos2 pos3 pos4] and MyArgs.Separate
will be [separate1 separate2 separate3].
Unit tests for the above have also been written and are included in this
commit, as well as the addition of a section to README.md and an example
func in example_test.go.
Fixes #49
2017-03-04 09:13:12 +07:00
Alex Flint
c4c162448c
deal with "-" as option value
2017-02-21 09:08:08 -08:00
Alex Flint
44a8b85d82
deal with booleans correctly
2017-02-15 18:37:19 -08:00
Alex Flint
ec576f9765
fix case where os.Args is empty
2017-02-09 15:12:33 -08:00
Alex Flint
12fa37d10d
add support for embedded structs
2016-10-10 10:48:28 +10:30
Alex Flint
5800b89ce9
fix example function names
2016-07-31 09:14:44 -07:00