summaryrefslogtreecommitdiff
path: root/CHANGELOG
blob: 05bb809c62931be75d69e68a4acb7cd1fb8421f6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
Current

1.30
2012/10/27

Added: JCommander#acceptUnknownOption and JCommander#getUnknownArgs
Added: JCommander#allowAbbreviatedOptions (default: false)
Added: JCommander#setCaseSensitiveOptions (default: true)
Added: Support for enums (Scott M Stark)
Fixed: Missing new lines in usage (styurin)
Fixed: The description of commands is now displayed on the next line and indented.

1.29
2012/07/28

Fixed: Empty string defaults now displayed as "<empty string>" in the usage
Fixed: Bugs with the PositiveInteger validator
Fixed: Parameters with a single double quote were not working properly

1.27
2012/07/05

Added: IValueValidator to validate parameter values (typed) as opposed to IParameterValidator which validates strings
Added: echoInput, used when password=true to echo the characters (Jason Wheeler)
Added: @Parameter(help = true)
Fixed: wasn't handling parameters that start with " but don't end with one correctly
Fixed: if using a different option prefix, unknown option are mistakenly reported as "no main parameter defined" (kurmasz)
Fixed: 113: getCommandDescription() returns the description of the main parameter instead of that of the command
Fixed: bug with several multiple arity parameters (VariableArityTest)
Fixed: variable arities not working when same parameter appears multiple times.

1.25
2012/04/26

Added: Default passwords are no longer displayed in the usage (Paul Mendelson)
Added: Variable arities now work magically, no need for IVariableArity any more
Fixed: Commands using @Parameters(resourceBundle) were not i18n'ed properly in the usage()
Fixed: StringIndexOutOfBoundsException if passing an empty parameter (bomanz)
Fixed: GITHUB-105: If no description is given for an enum, use that enum's value (Adrian Muraru)
Fixed: GITHUB-108: Dynamic parameters with "=" in them are not parsed correctly (szhem)
Fixed: Commands with same prefix as options were not working properly.
Fixed: GITHUB-97: Required password always complains that it is not specified (timoteoponce)

1.23
2012/01/12

Added: @DynamicParameter
Fixed: Use JDK 6 Console() when available to improve support of non ascii chars (Julien Henry)

1.20
2011/11/24

Added: Support for delegating parameter definitions to child classes (rodionmoiseev)
Added: @Parameter(commandNames) so that command names can be specified with annotations
Added: Support for enums (Adrian Muraru)
Fixed: Throw if an unknown option is found
Fixed: Main parameters are now validated as well (Connor Mullen)

1.19
2011/10/10

Added: commandDescriptionKey to @Parameters, to allow internationalized command descriptions
Added: JCommander#setParameterDescriptionComparator for better control over usage()
Fixed: Fields of type Set (HashSet and SortedSet) are now supported
Fixed: defaults for commands were not properly applied (Stevo Slavic)
Fixed: "-args=a=b,b=c" was not being parsed correctly (Michael Lancaster)
Fixed: GITHUB-73: descriptionKey was being ignored on main parameters

1.18
2011/07/20

Added: Default converter factories can be overridden (Scott Clasen)
Added: IParameterValidator
Added: Don't display "Options:" if none were defined
Added: Enforce that the type of the main parameter is a List
Added: usage() now displays the options for each command as well
Fixed: Default values with a validator were being validate at parse() time instead of creation time.
Fixed: Exception when using an @ file with empty lines between options
Fixed: OOM when parsing certain descriptions with long URL's in them

1.15
2011/01/24

Added: Added a constructor that takes a Bundle only, https://github.com/cbeust/jcommander/pull/47 (Russell Egan)
Fixed: NPE with calling getCommandDescription() of an unknown command

1.13
2010/12/15

Added: Boolean parameters with arity 0 (e.g. "foo -debug")
Fixed: JCommander would sometimes just print a stack trace and continue, now rethrowing.

1.7
2010/09/06

Added: Command usages are now shown in the order they were added to the JCommander object
Fixed: JCommander now compatible with Java 5
Fixed: Minor bug in the command display (Marc Ende)

1.6
2010/08/28

Added: @Parameters(commandDescription = "command description")
Added: now throwing an exception if required main parameters are not supplied
Fixed: usage() was changing default values after two runs (jstrachan)

1.5
2010/08/15

Added: overloaded versions of usage() with StringBuilders
Added: inheritance support (Guillaume Sauthier)
Added: support for commands (e.g. "main add --author=cbeust Foo.java")
Added: support for converters for main parameters (e.g. List<HostPort>).

1.4
2010/07/28

Added: string converter factories
Added: IDefaultProvider
Added: PropertyFileDefaultProvider
Added: Usage is now showing required parameters and default value
Added: Support for values that look like parameters ("-integer -3", "/file /tmp/a")
Added: @Parameters(optionPrefixes) to allow for different prefixes than "-"

1.2
2010/07/25

Usage is now aligned and alphabetically sorted
Added the hidden attribute
Added support for different separators than " " (e.g. "=").
Deprecated @ResourceBundle, replaced with @Parameters

1.1
2010/08/15

Better internationalization
Password support
Type converters