Revision history for Getopt-Euclid

0.4.5  2014-03-21
  - Fixed bug when parsing arguments with missing variable (reported by Torbjørn

0.4.4  2013-08-21
  - Fixed bug with Bleadperl v5.19.2-257-gc30fc27 (bug #87804, reported by
    Andreas Koenig, patch by Dave Mitchell)
  - New process_pod() method to specify arbitrary list of POD files to parse
    (bug #87592, requested by zdm)
  - More optional default checks

0.4.3  2013-07-22
  - Added a check for .default and .opt_default references in argument description
  - Speed optimizations

0.4.2  2013-07-17
  - Ignore POD from .pod files generated by earlier versions of Getopt::Euclid

0.4.1  2013-07-17
  - Support for default values defined based on variables

0.4.0  2013-02-08
  - Fixed issue with option values that are substrings of others (bug #76728, 
    reported by Igor Kleshchevich, patch by James F Hester)
  - Update of META.yml (bug #83221)

0.3.9  2012-12-12
  - Fixed issues in mutually exclusive arguments that have default values (RT
    bug #81630 again)

0.3.8  2012-12-03
  - Messages respect order of user options (fixes RT bug #81630)
  - Show --man and --usage in help message
  - Prevent a trailing whitespace in --help usage string

0.3.7  2012-08-08
  - Fixed too enthusiastic variable interpolation in Euclid specs (RT bug #78854)
  - Fixed bug tracker URL (credits to Kent Fredric)

0.3.6  2012-07-31
  - Fixed occasional non-minimized entry when using :minimal_keys specifier

0.3.5  2012-02-20
  - Removed extraneous \E (patch by Todd Rinaldo)
  - Better handling of quoted arguments (RT bug #49525, reported by Ken Galinsky)

0.3.4  2012-02-12
  - New standard argument --podfile to write the manual in a .pod file
  - Fixed issue where the NAME and VERSION sections appeared as a verbatim
    section (which podchecker complains about)
  - Always convert POD to text when calling help() and man()
  - help() is now paged if IO::Pager::Page is installed
  - Dependency changes:
      Pod::Simple::Text replaces Pod::Text
      Pod::Simple::Text is required instead of recommended,
      IO::Pager::Page is recommended

0.3.3  2012-01-06
  - Attempt to extract POD even from files that look binary (might be packaged
    with pp, perlapp or similar program)

0.3.2  2011-10-28
  - Another attempt to make the CPAN indexer happy

0.3.1  2011-10-27
  - Changed $VERSION to make the CPAN indexer happy
  - Export repeatable options with multiple placeholders as an empty arrayref,
    not as an empty hashref (RT bug #71165, reported by Bill Levering)

0.3.0  2011-09-13
  - Reverted feature to match POD head section =head2, =head3 and =head4 because
    of backward compatibility issue (RT bug #70942)

0.2.9  2011-09-03
  - This command does not generate warnings anymore:
    perl -e 'use Getopt::Euclid; print $Getopt::Euclid::VERSION;'
  - Required and optional arguments can now be put in a POD head section =head2,
    =head3 and =head4 for more flexibility

0.2.8  2011-09-02
  - Support for optional defaults (RT bug #61438, patch from Paolo Medeo)
  - Extended the grammar of recognized POD headers for required and optional arguments:
  - Usage error message now mentions the --man option in addition to --help

0.2.7  2011-07-12
  - Updated dependencies in Build.PL module

0.2.6  2011-07-11
  - Bugfix: corrected a .pod file finding issue

0.2.5  2011-07-10
  - Bugfix for #69324: more efficient and accurate POD extraction using Perl::Tidy
  - Bugfix for #29301: automatically looking for POD located into .pod files
  - Bugfix for #69105: file META.yml states which license the module uses
  - Bugfix for #34200: variables in constraint specifications are read as
    originating from the 'main' package namespace
  - Little internal modification to prevent identical placeholders that are
    present multiple times in the specification to be processed multiple times.
  - Error messages for arguments that do not validate against the constraints
    now display the value of variables instead of their name.

0.2.4  2011-06-23
  - Default values can now be specified in the POD and displayed in the program
  - Support for more integer arguments, e.g. scientific notation like 1E8
  - Support for arguments that cannot coexist using the 'exclude' keyword
  - New specifier to defer processing of @ARGV arguments: :defer
  - New method to pass an arbitrary array of arguments to parsing: process_args
  - New methods to access the program usage, version, manual and help messages
  - When a version number is missing from the POD or $main::VERSION, the file
    time and date are used as version number
  - The help message now includes --version and is more consistent with the
    usage message
  - Bugfix: the options in the help message are no longer randomly sorted
  - Bugfix: the man page is now properly formed when .pm files that have no POD
    are use'd
  - Bugfix: when the --man flag was passed and the script name was, e.g. 'myprog'
    instead of 'myprog - short description', an undef warning was issued
  - Bugfix: when the --help flag was passed and either no required arguments or
    no optional arguments were specified in the POD, an undef warning was issued
  - Bugfix: the POD parsing mechanism now removes rogue PODs hidden inside
    variables and other Perl-quoted strings
  - Bugfix for #34195: addresses compatibility with Perl compiling (syntax check)
  - Bugfix for #34207: .type.error is now taken into account properly
  - Bugfix for #38461: file path that uses the volume and dir
  - Bugfix for #34199: new subroutine _check_name() verifies that argument name
    specifications are well-balanced with <> brackets

0.2.3  Tue Sep 14 2010
  - #61321 - made tests that require writeable files set own properties to 644

0.2.2  Thu Sep  9 19:30:55 2010
  - #28474 - fixed the way name was being parsed
  - #35895 - line delimiters converted to newlines
  - #49524 - fixed way POD parsed so that headers after a =cut get parsed
  - #55259 - created $SCRIPT_VERSION variable containing parsed version
  - #61039 - don't insert default value for options with optional placeholders
             where the flag is given but a value for the placeholder is not

0.2.1  Sun May 31 12:57:07 2009
  - Removed BEGIN blocks and simply brought the defined variables to the top
    of the module (thanks Todd)
  - Update POD to make sure people don't "use Getopt::Euclid ();"
  - Removed debugger break point (thanks Diab)
  - Removed no bugs claim in POD

0.2.0  Sat Aug  4 17:22:31 2007
  - Added fallback to $main::VERSION if version not specified in Pod
    (thanks Todd and Thomas)
  - Added non-zero exit value on bad arg list (thanks Toby)
  - Changed module behaviour: now removes identified arguments from @ARGV.
    on successful match (thanks Aran and Tim)
  - Allowed alternations everywhere (i.e. outside optionals too)
  - Allowed E<lt> and E<gt> in option specifiers (thanks Wes)

0.1.0  Thu Nov  2 19:47:05 2006
  - Fixed failure to recognize +integer and 0+integer type specification
    (thanks Ron)
  - Added quotemeta'ing of regexically special characters 
    (thanks Ron)
  - Repatched :vars<opt_> mode to really export all args
    (thanks again Tim!)

0.0.9  Thu Oct 26 21:18:46 2006
  - Patched :vars<opt_> mode to export all args (thanks Tim!)

0.0.8  Sun Oct  8 12:45:17 2006
  - Remove spurious smart comments
  - Added missing documentation for placeholder misspecification diagnostic
  - Made contents of validator subs fallback to main::
  - Allowed false: flags to be regexes
  - Fixed readable/writable test for '-' (thanks Thomas)
  - Added regexes as valid placeholder type constraints

0.0.7  Tue Oct  3 03:54:01 2006
  - Added :vars<opt_> mode (thanks Tim!)
  - Fixed option names containing dashes. (thanks Tim!)
  - Fixed minimal matching mode to more accurately detect clashes (thanks
  - Added user-specified type.error messages (thanks Thomas)
  - Tightened up checking of placeholder type constraints (thanks Tim)

0.0.6  Sun Sep 17 02:48:04 2006
  - Removed spurious "compilation failed message" for interface errors
    (thanks David!)
  - Added 'repeatable' option (thanks Thomas)

0.0.5  Fri Feb 17 15:52:20 2006
  - Changed POD::Text to Pod::Text (curse you, case-independent MacOS X!! ;-)
  - Fixed erroneous bug report when only syntax checking with perl -c
  - Fixed bug in license defaults (thanks clpoda!)
  - Added :minimal_keys mode (thanks Thomas)

0.0.4  Thu Aug  4 18:03:28 2005
  - Fixed embarrassing encoding bug (thanks dakkar!)

0.0.3  Sun Jul 24 20:16:17 2005
  - Removed need for Smart::Comments

0.0.2  Sat Jul 23 04:37:18 2005
  No changes logged

0.0.1  Sun Jan 30 20:42:36 2005
  Initial release.