252 lines
9.7 KiB
Plaintext
Executable File
252 lines
9.7 KiB
Plaintext
Executable File
Apache Commons CLI
|
|
Version 1.4
|
|
Release Notes
|
|
|
|
|
|
INTRODUCTION:
|
|
|
|
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.
|
|
|
|
Commons CLI 1.4 is a feature release and binary compatible with the
|
|
previous versions, except for the OptionValidator class that is no longer public
|
|
(change introduced in v1.2). Commons CLI 1.4 at least requires Java 5.0.
|
|
|
|
More information can be found on the project site at
|
|
http://commons.apache.org/cli.
|
|
|
|
|
|
NEW FEATURES
|
|
============
|
|
|
|
o CLI-269: Introduce CommandLine.Builder
|
|
o CLI-267: Add an addRequiredOption method to Options.
|
|
Thanks to Ricardo Ribeiro.
|
|
|
|
|
|
BUG FIXES
|
|
=========
|
|
|
|
o CLI-265: Optional argument picking up next regular option as its argument.
|
|
Thanks to Martin Sandiford.
|
|
o CLI-266: HelpFormatter.setOptionComparator(null) doesn't display the values
|
|
in inserted order. Thanks to Ravi Teja.
|
|
|
|
|
|
Release Notes for version 1.3.1
|
|
|
|
BUG FIXES
|
|
=========
|
|
|
|
o CLI-252: LongOpt falsely detected as ambiguous. Thanks to Simon Harrer.
|
|
|
|
|
|
Release Notes for version 1.3
|
|
|
|
NOTES
|
|
=====
|
|
|
|
A new parser is available: DefaultParser. It combines the features of the
|
|
GnuParser and the PosixParser. It also provides additional features like
|
|
partial matching for the long options, and long options without
|
|
separator (i.e like the JVM memory settings: -Xmx512m). This new parser
|
|
deprecates the previous ones.
|
|
|
|
DEPRECATIONS
|
|
============
|
|
|
|
o org.apache.commons.cli.BasicParser
|
|
replaced by org.apache.commons.cli.DefaultParser
|
|
|
|
o org.apache.commons.cli.GnuParser
|
|
replaced by org.apache.commons.cli.DefaultParser
|
|
|
|
o org.apache.commons.cli.OptionBuilder
|
|
replaced by org.apache.commons.cli.Option.builder()
|
|
org.apache.commons.cli.Option.builder(String)
|
|
org.apache.commons.cli.Option.Builder
|
|
|
|
o org.apache.commons.cli.Parser
|
|
replaced by org.apache.commons.cli.DefaultParser
|
|
|
|
o org.apache.commons.cli.PosixParser
|
|
replaced by org.apache.commons.cli.DefaultParser
|
|
|
|
|
|
NEW FEATURES
|
|
============
|
|
|
|
o CLI-161: PosixParser doesn't stop the parsing on "--" tokens following an
|
|
option with an argument
|
|
o CLI-167: Support options like Java memory settings (-Xmx512M)
|
|
o CLI-181: Unified Parser
|
|
o CLI-224: Added new fluent API to create Option instances via builder class
|
|
Option.Builder. This replaces the now deprecated OptionBuilder.
|
|
Thanks to Duncan Jones, Brian Blount.
|
|
o CLI-160: PosixParser now supports partial long options (--ver instead of
|
|
--version).
|
|
o CLI-169: HelpFormatter now supports setting the displayed separator of long
|
|
options. Thanks to J. Lewis Muir.
|
|
o CLI-214: Added new method Options.addOption(String, String). Thanks to
|
|
Alexandru Mocanu.
|
|
|
|
|
|
BUG FIXES
|
|
=========
|
|
|
|
o CLI-248: Dead links on doc page.
|
|
o CLI-234: Fixed code example in javadoc of
|
|
"Option#Builder#valueSeparator(char)". Thanks to Greg Thomas.
|
|
o CLI-241: Clarified behavior of "OptionValidator#validateOption(String)"
|
|
in case of null input. Thanks to Beluga Behr.
|
|
o CLI-202: Default options will now work correctly with required options that
|
|
are missing.
|
|
o CLI-203: Default options will now work correctly together with option groups.
|
|
o CLI-205: HelpFormatter.setArgName(String) now correctly sets the argument
|
|
name.
|
|
o CLI-204: Passing default values for not defined options to a parser will now
|
|
trigger a ParseException instead of a NullPointerException.
|
|
o CLI-201: Default properties provided as input to the Parser.parse() methods
|
|
are now correctly processed.
|
|
o CLI-215: CommandLine.getParsedOptionValue() now returns a String object if no
|
|
option type has been explicitly set. Thanks to Manuel Müller.
|
|
o CLI-212: HelpFormatter now prints command-line options in the same order as
|
|
they have been added. Thanks to Per Cederberg.
|
|
o CLI-186: Standard help text now shows mandatory arguments also for the first
|
|
option. Thanks to Kristoff Kiefer.
|
|
o CLI-207: HelpFormatter does not strip anymore leading whitespace in the
|
|
footer text. Thanks to Uri Moszkowicz.
|
|
o CLI-185: Strip quotes contained in argument values only if there is exactly
|
|
one at the beginning and one at the end. Thanks to
|
|
Einar M. R. Rosenvinge.
|
|
o CLI-184: Negative numerical arguments take precedence over numerical options.
|
|
o CLI-193: Fix possible StringIndexOutOfBoundsException in HelpFormatter.
|
|
Thanks to Travis McLeskey.
|
|
o CLI-183: OptionGroups no longer throw an AlreadySelectedException when reused
|
|
for several parsings.
|
|
o CLI-182: OptionGroup now selects properly an option with no short name.
|
|
|
|
|
|
CHANGES
|
|
=======
|
|
|
|
o CLI-240: Small cleanup of Option class. Thanks to Beluga Behr.
|
|
o CLI-230: Options.getRequiredOptions() now returns an unmodifiable list.
|
|
o CLI-218: Clarify javadoc for CommandLine.getOptionValue() that the first
|
|
specified argument will be returned. Thanks to Sven.
|
|
o CLI-227: Changed unit tests to junit 4 annotation style. Thanks to
|
|
Duncan Jones.
|
|
o CLI-209: The javadoc of OptionBuilder now states that the class is not
|
|
thread-safe. Thanks to Thomas Herre.
|
|
o CLI-200: Fixed typo in javadoc of class CommandLine. Thanks to
|
|
Gerard Weatherby.
|
|
o CLI-223: Source code now uses generic types instead of raw types where
|
|
possible. Thanks to Gerard Weatherby.
|
|
o CLI-220 Corrected javadoc for return type of
|
|
MissingOptionException.getMissingOptions(). Thanks to Joe Casadonte.
|
|
o CLI-197: Improve description of parameter "stopAtNonOption" in method
|
|
CommandLine.parse(Options, String[], boolean). Thanks to
|
|
Anders Larsson.
|
|
o CLI-231: Removed DoubleCheckedLocking test from checkstyle configuration.
|
|
Thanks to Duncan Jones.
|
|
|
|
|
|
Release Notes for version 1.2
|
|
|
|
NEW FEATURES
|
|
============
|
|
|
|
o -- : The method getOptionProperties() in the CommandLine class was added
|
|
to retrieve easily the key/value pairs specified with options like
|
|
-Dkey1=value1 -Dkey2=value2.
|
|
o CLI-157: GnuParser now supports long options with an '=' sign
|
|
(ie. --foo=bar and -foo=bar)
|
|
o CLI-155: The ordering of options can be defined in help messages.
|
|
|
|
|
|
BUG FIXES
|
|
=========
|
|
|
|
o CLI-137: The number of arguments defined for an option specifies the
|
|
arguments per occurence of the option and not for all occurences.
|
|
o CLI-164: PosixParser no longer ignores unrecognized short options.
|
|
o CLI-163: PosixParser no longer stops the bursting process of a token if
|
|
stopAtNonOption is enabled and a non option character is
|
|
encountered.
|
|
o CLI-165: PosixParser no longer keeps processing the tokens after an
|
|
unrecognized long option when stopAtNonOption is enabled.
|
|
o CLI-156: Required options are properly checked if an Options instance is used
|
|
twice to parse a command line.
|
|
o CLI-151: The line wrapping in HelpFormatter now works properly.
|
|
|
|
|
|
CHANGES
|
|
=======
|
|
|
|
o CLI-149: The message of MissingOptionException has been improved.
|
|
o CLI-86: The exceptions have been enhanced with methods to retrieve easily
|
|
the related options.
|
|
o CLI-141: Option.toString() now reports arguments properly.
|
|
o CLI-142: The Parser class has been changed to be more easily extendable.
|
|
o CLI-140: The following classes are now serializable: Option, OptionGroup,
|
|
CommandLine and Options.
|
|
o -- : OptionValidator is no longer public, its methods were all private.
|
|
|
|
|
|
Release Notes for version 1.1
|
|
|
|
NEW FEATURES
|
|
============
|
|
|
|
o CLI-78: Setting description of a Option.
|
|
|
|
CHANGES
|
|
=======
|
|
|
|
o CLI-2: Wrong usage summary.
|
|
o CLI-5: Dependecy on commons-lang-2.0 but commons-lang-1.0 is obtained.
|
|
o CLI-8: Line separator as first char for helpformatter (footer) throws
|
|
exception.
|
|
o CLI-13: CommandLine.getOptionValue() behaves contrary to docs.
|
|
o CLI-21: clone method in Option should use super.clone().
|
|
o CLI-23: Passing properties in Parser does not work for options with a single
|
|
argument.
|
|
o CLI-26: Only long options without short option seems to be noticed.
|
|
o CLI-28: Infinite Loop in Command-Line processing.
|
|
o CLI-29: Options should not be able to be added more than once.
|
|
o CLI-35: HelpFormatter doesn't sort options properly.
|
|
o CLI-38: HelpFormatter doesn't function correctly for options with only
|
|
LongOpt.
|
|
o CLI-44: Document enhancement.
|
|
o CLI-45: Documentation errors.
|
|
o CLI-51: Parameter value "-something" misinterpreted as a parameter.
|
|
o CLI-56: clone() method doesn't fully clone contents.
|
|
o CLI-59: No Javadoc for HelpFormatter!.
|
|
o CLI-65: Parser breaks up command line parms into single characters.
|
|
o CLI-67: Missing arguments in HelpFormatter.renderOptions(..).
|
|
o CLI-69: Error parsing option arguments.
|
|
o CLI-71: A weakness of parser.
|
|
o CLI-129: CLI_1_BRANCH build.xml doesn't work.
|
|
o CLI-130: Remove the Commons Lang dependency.
|
|
o CLI-131: Options class returns options in random order.
|
|
o CLI-132: MissingOptionException should contain a useful error message.
|
|
o CLI-133: NullPointerException in Util.stripLeadingHyphens when passed a null
|
|
argument.
|
|
o CLI-134: 1.1 is not backwards compatible because it adds methods to the
|
|
CommandLineParser interface.
|
|
o CLI-135: Backwards compatibility between 1.1 and 1.0 broken due to
|
|
Option.addValue removal.
|
|
|
|
|
|
Historical list of changes: http://commons.apache.org/cli/changes-report.html
|
|
|
|
For complete information on Commons CLI, including instructions on how to
|
|
submit bug reports, patches, or suggestions for improvement, see the
|
|
Apache Commons CLI website:
|
|
|
|
http://commons.apache.org/cli/
|
|
|
|
Have fun!
|
|
-Apache Commons CLI team
|