monitoring-plugins / monitoring-plugin-perl

Perl module Monitoring::Plugin - Nagios::Plugin
http://search.cpan.org/dist/Monitoring-Plugin/
42 stars 20 forks source link

GetOpt::Long optional arguments using a colon instead of an equal sign #2

Closed evgeni closed 9 years ago

evgeni commented 9 years ago

Instead of writing foo|f=s you can also write foo|f:s for a GetOpt::Long option spec [1], thus making the argument optional.

The current implementation of _spec_to_help will wrongly render this as two long options:

--dirport, --d:9030
   directory port

instead of a short and a long one:

-d, --dirport=INTEGER
   directory port

This commit fixes the the parsing of the spec, detection of the type and adds tests for a few common cases this could be used in.

[1] http://perldoc.perl.org/Getopt/Long.html#Summary-of-Option-Specifications

sni commented 9 years ago

thanks for you patch and sorry for the delay.