Current

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

