Skip to content

Commit 6dd22b7

Browse files
committed
Release notes for CLI 1.2
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/cli/branches/cli-1.x@680886 13f79535-47bb-0310-9956-ffa450edef68
1 parent 65b8525 commit 6dd22b7

1 file changed

Lines changed: 55 additions & 43 deletions

File tree

RELEASE-NOTES.txt

Lines changed: 55 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -1,61 +1,73 @@
11
$Id$
22

33
Commons CLI Package
4-
Version 1.1
4+
Version 1.2
55
Release Notes
66

77

88
INTRODUCTION:
99

10-
This document contains the release notes for this version of the Commons CLI package. Commons CLI provides a simple API for working with the command line arguments and options.
10+
This document contains the release notes for this version of the Commons CLI
11+
package. Commons CLI provides a simple API for working with the command line
12+
arguments and options.
1113

12-
CLI 1.1 is a bugfix release of CLI. The following changes notable API changes were made:
14+
Commons CLI 1.2 is a bugfix release. The following notable changes were made:
1315

14-
* The Parser abstract class has two additional parse methods that take a Properties parameter.
15-
* The HelpFormatter class had publicly accessible fields. These should now be accessed via get/set methods and the public fields are deprecated.
16-
* The Option class addValue(String) method now throws UnsupportedOperationException.
17-
* OptionValidator is a newly added class.
18-
* Option's now have equals(Object) and hashCode() methods.
19-
* The Option class also received two new methods, setDescription(String) and hasValueSeparator();boolean.
16+
* A major regression introduced in CLI 1.1 that prevented the usage of repeated options has been fixed.
17+
* Several parser issues have been fixed, especially with the PosixParser.
18+
* HelpFormatter now wraps the lines properly
19+
* The ordering of the option in the help message can now be defined.
20+
* Various API enhancements (improved exceptions, serializable classes)
2021

21-
The jar should be API backwards compatible, though if you were calling addValue(String) then you won't be happy. Please let us know your use case if that is so.
22+
Commons CLI 1.2 is binary compatible with the previous versions, except for
23+
the OptionValidator class that is no longer public.
24+
25+
More information can be found on the project site at http://commons.apache.org/cli
2226

23-
For more information, read the documentation on the project site at http://commons.apache.org/cli/
2427

2528
NEW FEATURES:
2629

27-
CLI-78 - Setting description of a Option.
30+
* The method getOptionProperties() in the CommandLine class was added
31+
to retrieve easily the key/value pairs specified with options like
32+
-Dkey1=value1 -Dkey2=value2.
33+
34+
* GnuParser now supports long options with an '=' sign
35+
(ie. --foo=bar and -foo=bar) (CLI-157)
36+
37+
* The ordering of options can be defined in help messages. (CLI-155)
38+
2839

2940
BUG FIXES:
3041

31-
DEPRECATIONS:
32-
33-
CHANGES:
34-
35-
CLI-2 - Wrong usage summary.
36-
CLI-5 - Dependecy on commons-lang-2.0 but commons-lang-1.0 is obtained.
37-
CLI-8 - Line separator as first char for helpformatter (footer) throws exception.
38-
CLI-13 - CommandLine.getOptionValue() behaves contrary to docs.
39-
CLI-21 - clone method in Option should use super.clone().
40-
CLI-23 - Passing properties in Parser does not work for options with a single argument.
41-
CLI-26 - Only long options without short option seems to be noticed.
42-
CLI-28 - Infinite Loop in Command-Line processing.
43-
CLI-29 - Options should not be able to be added more than once.
44-
CLI-35 - HelpFormatter doesn't sort options properly.
45-
CLI-38 - HelpFormatter doesn't function correctly for options with only LongOpt.
46-
CLI-44 - Document enhancement.
47-
CLI-45 - Documentation errors.
48-
CLI-51 - Parameter value "-something" misinterpreted as a parameter.
49-
CLI-56 - clone() method doesn't fully clone contents.
50-
CLI-59 - No Javadoc for HelpFormatter!.
51-
CLI-65 - Parser breaks up command line parms into single characters.
52-
CLI-67 - Missing arguments in HelpFormatter.renderOptions(..).
53-
CLI-69 - Error parsing option arguments.
54-
CLI-71 - A weakness of parser.
55-
CLI-129 - CLI_1_BRANCH build.xml doesn't work.
56-
CLI-130 - Remove the Commons Lang dependency.
57-
CLI-131 - Options class returns options in random order.
58-
CLI-132 - MissingOptionException should contain a useful error message.
59-
CLI-133 - NullPointerException in Util.stripLeadingHyphens when passed a null argument.
60-
CLI-134 - 1.1 is not backwards compatible because it adds methods to the CommandLineParser interface.
61-
CLI-135 - Backwards compatibility between 1.1 and 1.0 broken due to Option.addValue removal.
42+
* The number of arguments defined for an option specifies the arguments
43+
per occurence of the option and not for all occurences. (CLI-137)
44+
45+
* PosixParser no longer ignores unrecognized short options. (CLI-164)
46+
47+
* PosixParser no longer stops the bursting process of a token if stopAtNonOption
48+
is enabled and a non option character is encountered. (CLI-163)
49+
50+
* PosixParser no longer keeps processing the tokens after an unrecognized
51+
long option when stopAtNonOption is enabled. (CLI-165)
52+
53+
* Required options are properly checked if an Options instance is used twice
54+
to parse a command line. (CLI-156)
55+
56+
* The line wrapping in HelpFormatter now works properly. (CLI-151)
57+
58+
59+
CHANGES:
60+
61+
* The message of MissingOptionException has been improved. (CLI-149)
62+
63+
* The exceptions have been enhanced with methods to retrieve easily
64+
the related options. (CLI-86)
65+
66+
* Option.toString() now reports arguments properly. (CLI-141)
67+
68+
* The Parser class has been changed to be more easily extendable. (CLI-142)
69+
70+
* The following classes are now serializable: Option, OptionGroup,
71+
CommandLine and Options. (CLI-140)
72+
73+
* OptionValidator is no longer public, its methods were all private.

0 commit comments

Comments
 (0)