The hardware and bandwidth for this mirror is donated by METANET, the Webhosting and Full Service-Cloud Provider.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]metanet.ch.
add_option() (and make_option()) now
support the following new actions (#22):
action = "append" which appends each occurrence’s value
to default.action = "append_const" which appends
const to default each time the flag is
seen.action = "count", which counts the number of times a
flag is seen and adds it to default (treated as
0L if not supplied). Returns NULL if the flag
is never seen and no default was supplied.action = "store_const" which stores const
when the flag is seen.add_option() (and make_option()) now
support a const parameter (intended for new actions
"append_const" and "store_const").
Several new classed errors are now thrown, mirroring Python’s
optparse exception hierarchy:
optparse_option_error: invalid option definition in
make_option() or add_option().
optparse_option_conflict_error: duplicate flag in
OptionParser() or add_option().optparse_parse_error: existing base class for all
parse-time errors from parse_args().
optparse_bad_option_error: unrecognized, misused, or
argument-requiring option.
optparse_ambiguous_option_error: ambiguous abbreviated
long flag.optparse_bad_positional_arguments_error: wrong number
of positional arguments supplied.optparse_missing_required_error: a required option was
not supplied.add_option() (and make_option()) now
allow non-letter characters in short flags (e.g., -1) and
at the beginning of long flags (e.g., --1flag), following
Python’s optparse convention. However long and short flags
may not contain = or whitespace (or begin with
hyphens).
add_option() (and make_option()) now
support a required argument. If TRUE,
parse_args() will throw an error if the option is not
provided on the command line (#17).
parse_args() (and parse_args2()) now
correctly handle a bare -- separator: all arguments after
-- are treated as positional arguments rather than
options.parse_args() (and parse_args2()) now
support abbreviated long flags (e.g. --verb matching
--verbose) when positional_arguments is not
FALSE. Previously abbreviations were only supported when
positional_arguments = FALSE.make_option() now throws a classed
optparse_option_error for invalid action or
type arguments instead of a confusing error later at parse
time.OptionParser() now also checks the
LITTLER_SCRIPT_PATH environment variable for the script
name when performing %prog on the usage
argument so it works when called from littler.default to
match that of its type argument when
action = "callback". Thanks husheng (@hs3434) for bug report (#47).DESCRIPTION to suppress new CRAN check NOTE (#43).The errors raised by parse_args() (and
parse_args2()) are now of class “optparse_parse_error”.
When interactive() is FALSE we now print
out a usage string followed by a (less verbose) error message.
Throws a more informative error message for unknown short flags
when positional_arguments=TRUE. Thanks Greg Minshall for
bug report (#42).
formatter argument to OptionParser()
for a function to format the usage message (#30). By default uses the
new function IndentedHelpFormatter().
{optparse} also provides the new function
TitledHelpFormatter(). Thanks Ni Huang for suggestion.positional_arguments=TRUE. Thanks Greg Minshall for bug
report (#34).callback parameter of add_option /
make_option is not NULL then the default of
action is now "callback". Thanks Greg Minshall
for suggestion (#35).action=="callback" in the man
page for add_option and make_option. Thanks
Greg Minshall for bug report (#35).action=="callback" when
metavar==NULL (#29). Thanks Ni Huang for bug report.action=="callback" and
positional_argument==TRUE (#28). Thanks Ni Huang for bug
report.interactive() == FALSE and
print_help_and_exit == TRUE then optparse will
now call quit(status=0) instead of
quit(status=1) after printing the help message (this
matches behaviour of the python package).add_help_option=FALSE when defining an -h or
--help flag. Thanks Jeff P. Bruce for bug report.getopt requirement so that empty strings are
parsed correctly. Thanks Matthew Flickinger for bug report.add_help_option in
OptionParser set to FALSE. Thanks to Jeff
Bruce for bug report.parse_args now supports
convert_hyphens_to_underscores argument which converts any
hyphens to underscores when returning the list of optionsparse_args2 which
wraps parse_args with positional_arguments set
to TRUE and convert_hyphens_to_underscores set
to TRUE.optparse should no longer give any warnings when
options(warnPartialMatchArgs=TRUE). Thanks Rich FitzJohn
for patch.print_help no longer throws an error if we have a
default argument of length zero. Thanks Benjamin Tyner for bug
report.OptionParser and OptionParserOption S4
classes are now exported. Thanks Peter Humburg for patch.positional_arguments of function
parse_args now accepts one or two numeric values that
denote the minimum and maximum number of supported positional arguments.
Thanks Kirill Müller for patch.interactive() == TRUE then parse_args
will no longer quit(status=1) after printing a help message
but will instead throw an error. optparse will continue to
quit(status=1) after printing a help message for
non-interactive Rscripts unless
print_help_and_exit == FALSE.make_option argument type="numeric"
automatically cast to double. Previously users might have
received an error passing negative numbers if they accidentally
specified “numeric” instead of “double”.parse_args when we have options with no
short flag and positional_arguments=TRUE. Thanks Miroslav Posta for bug
report.description and epilogue arguments
to OptionParser to allow users to add more information to
generated help messagesThese binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.