ChangeLog of optparse.rb

Revision 0.23

Revision 0.22

Revision 0.21

Revision 0.20

Revision 0.19

Revision 0.18

Revision 0.17.7.1

Revision 0.17.6.1

Revision 0.17

Revision 0.16.7.2

Revision 0.16.7.1

Revision 0.16.6.1

Revision 0.16

Revision 0.15

Revision 0.14

Revision 0.13

Revision 0.12

Revision 0.11

0.8.6

Revision 0.10.1.2

Revision 0.10.1.1

Revision 0.10

Revision 0.9

Revision 0.8.4.0

Revision 0.8.3.1

Revision 0.8.3.0

Revision 0.8.2.2

Revision 0.8.2.1

Revision 0.8.2.0

Revision 0.8.1.2

Revision 0.8.1.1

Revision 0.8.1.0

Revision 0.8.0.2

Revision 0.8.0.1

Revision 0.8

Revision 0.7.10.0

Revision 0.7.9.4

Revision 0.7.9.3

Revision 0.7.9.2

Revision 0.7.9.1

Revision 0.7.9.0

Revision 0.7.8.8

Revision 0.7.8.7

Revision 0.7.8.6

Revision 0.7.8.5

Revision 0.7.8.4

Revision 0.7.8.3

Revision 0.7.8.2

Revision 0.7.8.1

Revision 0.7.8.0

0.7.8 release

Revision 0.7.7.3

Revision 0.7.7.2

Revision 0.7.7.1

Revision 0.7.7.0

Revision 0.7.6.2

Revision 0.7.6.1

Revision 0.7.6.0

0.7.6 release.

Revision 0.7.5.4

Revision 0.7.5.3

Revision 0.7.5.2

Revision 0.7.5.1

Revision 0.7.5.0

0.7.5 release.

Revision 0.7.4.1

Revision 0.7.4.0

Revision 0.7.3.4

Revision 0.7.3.3

Revision 0.7.3.2

Revision 0.7.3.1

Revision 0.7.3.0

Renamed safe_call to OptionParser.yieldproc.

Revision 0.7.2.3

Fixed arity problem(I hope!!).

Revision 0.7.2.2

Revision 0.7.2.1

Revision 0.7.2.0

Revision 0.7.1.8

Fixed Proc#call arity problem.

Revision 0.7.1.7

Passes an array to proc directly, without * expansion.

Revision 0.7.1.6

Modified rest array argument passing.

Revision 0.7.1.5

Revision 0.7.1.4

Revision 0.7.1.3

Merged methods match and complete of OptionParser::List.

Methods complete of OptionParser and OptionParser::List take arguments that specifys which table used, and optional arguments for completion.

Character class options regexp was wrong.

Revision 0.7.1.2

Added character class short option.

Revision 0.7.1.1

When no matched options found, OptionParser::AmbiguousOption raised instead of OptionParser::InvalidOption.

Revision 0.7.1.0

Indented *list under :list.

Added a few documents.

Categorized initialize methods to class methods in documents.

Revision 0.7.0.4

Revision 0.7.0.3

Revision 0.7.0.2

Revision 0.7.0.1

Revision 0.7

Removed change log.

Revision 0.6.6.2

Revision 0.6.6.1

Fixed default pattern.

Revision 0.6.6.0

Defaulted short style argument classes to Object or TrueClass according to argument specification.

Revision 0.6.5.5

OptionParser::Arguable
OptionParser::ParseError

Revision 0.6.5.4

Long style options without argument may be boolean flag.

Revision 0.6.5.3

Revision 0.6.5.2

Avoiding return from proc-closure bug.

Revision 0.6.5.1

Visitor pattern for OptionParser::List.

Revision 0.6.5.0

Revision 0.6.4.0

Fixed document indentation. Thanks to Tosh.

Revision 0.6.3.20

Defaulted banner message.

Revision 0.6.3.19

Added document Switch classes.

Revision 0.6.3.18

Revision 0.6.3.17

Bug fix when no arguments given to switch using converter.

Revision 0.6.3.16

Modifying argv in option handers is safe even while parsing crunched short options.

Revision 0.6.3.15

Fixed exception when short option cannot be completed.

Revision 0.6.3.14

When called as iterator, OptionParser::Arguable#options rescues OptionParser::ParseError and returns nil with printing the error message to STDERR.

Revision 0.6.3.13

If no short options match, try completion with long options.

Revision 0.6.3.12

When no arguments is passed, OptionParser::Switch::OptionalArgument misparsed and resulted true, where it must be nil.

Revision 0.6.3.11

Forgotten changing guess_style to style.

Revision 0.6.3.10

Added OptionParser::ParseError#inspect returns inspection string in format same as older versions.

Revision 0.6.3.9

removed OptionParser::guess_style to OptionParser::Switch.guess.

Revision 0.6.3.8

Short style options ignored after - or +, but now ignore themselves.

And boolean switches can take argument - and + as false and true respectively.

Revision 0.6.3.7

OptionParser::ParseError changed to:

Revision 0.6.3.6

multiple argument style values.

Revision 0.6.3.5

OptionParser#new takes block or return self.

Revision 0.6.3.4

Revision 0.6.3.3

Revision 0.6.3.2

comments feedback from japanese document.

Revision 0.6.3.1

Revision 0.6.3.0

Directly specified matchable object is prior to accepted classes in OptionParser::switch.

Revision 0.6.2.1

In OptionParser::Switch#parse_arg, relaxed matched result.

Revision 0.6.2.0

Now uses method index, and added some documents.

Revision 0.6.1.2

Revision 0.6.1.1

Now OptionParser::Switch#pattern is anything can match to String, not only Regexp.

Revision 0.6.1.0

New release.

Revision 0.6.0.4

Added OptionParser.with that behaves like as older new.

Revision 0.6.0.3

No use of dying.rb.

Revision 0.6.0.2

Added OptionParser::Acceptables.

Revision 0.6.0.1

OptionParser.switch accepts also Method as handler, not only Proc.

Revision 0.6.0.0

Fixed doc of OptionParser#new as 0.6.

Revision 0.6

OptionParser#new no longer evaluates block in its context, just yields itself.

Revision 0.5.2.0

Made OptionParser#switch(was register public, and added OptionParser::List#append and OptionParser::List#prepend.

Revision 0.5.1.1

OptionParser#on accepts separated option argument description, like as "=ARGUMENT".

Revision 0.5.1.0

Removed exit methods to dying.rb.

Revision 0.5

Added OptionParser::Arguable.

Revision 0.4.7.1

Accepts comma separated list arguments.Array

Revision 0.4.7.0

Not use return value from String#sub!.

Revision 0.4.6.1

Used empty string for optional argument when absent.(Revision 0.4.5.1)

Revision 0.4.6.0

OptionParser#on can take just messages.

Revision 0.4.5.1

Bug fix of boolean switch.

OptionParser::List#atype now holds pattern and converter pairs. pattern and conv no longer exist.

Revision 0.4.5.0

Passes matched substrings instead of $~, to converters.

Added OptionParser#banner, and now OptionParser#new takes summary formatting parameters.

When an empty string given as optional argument to short style, OptionParser::ParseError explicits empty argument not but missing argument.

Added FalseClass, opposite of TrueClass.

Revision 0.4.4.1

Passes matched substrings instead of $~, to converters.

Added OptionParser#banner, and now OptionParser#new takes summary formatting parameters.

When an empty string given as optional argument to short style, OptionParser::ParseError explicits empty argument not but missing argument.

Added FalseClass, opposite of TrueClass.

Revision 0.4.4.0

Modified for 1.5.2

Revision 0.4.3.1

Failed long style completion for deferred switches.

Revision 0.4.3.0

Changed default options list to singleton of OptionParser::List instead class itself. There was no reasons that it's must be.

Revision 0.4.2.1

Added OptionParser#summary_width and OptionParser#summary_indent.

Revision 0.4.2.0

Removed OptionParser::List::on back to OptionParser again, and searches pattern and converter in the stack.

Revision 0.4.1.0

OptionParser::Switch#parse no longer uses yielded return value.

Short style options support =argument.

OptionParser#on ignored argument class.

All OptionParser::ParseError holds erred option, and able to retry.

Added optparse/time.rb into MANIFEST.

Revision 0.4

Now OptionParser has stack structure. New option list is created with OptionParser#new, and removed with OptionParser#remove.

OptionParser#summarize accepts formatting parameters.

When OptionParser::InvalidOption raises, $!.message holds whole erred option, including argument if present. So it's possible to retry with unshifting it.

Revision 0.3.1.4

Simplified OptionParser#order, OptionParser#permute and OptionParser#parse. Now they're just front-ends for !-ed versions.

Revision 0.3.1.3

Added MANIFEST.

Revision 0.3.1.2

Made Example a link rather than included.

Revision 0.3.1.1

Rewrote TrueClass description in Acceptable argument classes.

Revision 0.3.1.0

OptionParser#on_head added

Multiple long-style option in one summary line.

Relaxed check for ambiguous, but actually one option.

Bug-fixes

Revision 0.3

Rewrote RD.

Added some methods:

Revision 0.2

Added OptionParser.accept, OptionParser.reject, OptionParser#accept, OptionParser#reject

Revision 0.1.1.1

Prefixed instance variables of OptionParser with '_' to prevent interferences from attributes defined with OptionParser#variable.

Now OptionParser#variable returns attributes list.

Revision 0.1.1.0

Adding boolean flag switch.

Revision 0.1

Added default stringize method OptionParser::ParseError#to_str.

Missing argument for short option caused no failure and ignored silently.

OptionParser#permute ignored arguments after --.

Refined example code.

Revision 0.0.1.0

Adding boolean flag switch.

Revision 0.0

Initial revision.


*1might not conflict