Index: devel/rubygem-clamp/Makefile =================================================================== --- devel/rubygem-clamp/Makefile +++ devel/rubygem-clamp/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= clamp -PORTVERSION= 0.6.5 +PORTVERSION= 1.0.0 CATEGORIES= devel ruby MASTER_SITES= RG @@ -10,7 +10,9 @@ COMMENT= Command-line utility framework for Ruby LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE +NO_ARCH= yes USE_RUBY= yes USE_RUBYGEMS= yes RUBYGEM_AUTOPLIST= yes Index: devel/rubygem-clamp/distinfo =================================================================== --- devel/rubygem-clamp/distinfo +++ devel/rubygem-clamp/distinfo @@ -1,2 +1,2 @@ -SHA256 (rubygem/clamp-0.6.5.gem) = 384b6c144171d00afd1d588bca37ddb26efdfd7e6534ec6a47f9bef0b64cffbe -SIZE (rubygem/clamp-0.6.5.gem) = 24576 +SHA256 (rubygem/clamp-1.0.0.gem) = 1c16a29eac75477176a0f94d7558612ed2cc79031f0cf5e95798209a3e7cc66f +SIZE (rubygem/clamp-1.0.0.gem) = 26112 Index: devel/rubygem-clamp/files/patch-i18n =================================================================== --- devel/rubygem-clamp/files/patch-i18n +++ /dev/null @@ -1,215 +0,0 @@ ---- clamp.gemspec.orig 2015-02-28 19:33:22.833353000 +0000 -+++ clamp.gemspec 2015-02-28 19:33:51.000931000 +0000 -@@ -11,7 +11,7 @@ - s.date = "2015-05-02" - s.description = "Clamp provides an object-model for command-line utilities.\nIt handles parsing of command-line options, and generation of usage help.\n" - s.email = "mdub@dogbiscuit.org" -- s.files = [".autotest", ".gitignore", ".rspec", ".travis.yml", "CHANGES.md", "Gemfile", "LICENSE", "README.md", "Rakefile", "clamp.gemspec", "examples/admin", "examples/flipflop", "examples/fubar", "examples/gitdown", "examples/scoop", "examples/speak", "lib/clamp.rb", "lib/clamp/attribute/declaration.rb", "lib/clamp/attribute/definition.rb", "lib/clamp/attribute/instance.rb", "lib/clamp/command.rb", "lib/clamp/errors.rb", "lib/clamp/help.rb", "lib/clamp/option/declaration.rb", "lib/clamp/option/definition.rb", "lib/clamp/option/parsing.rb", "lib/clamp/parameter/declaration.rb", "lib/clamp/parameter/definition.rb", "lib/clamp/parameter/parsing.rb", "lib/clamp/subcommand/declaration.rb", "lib/clamp/subcommand/definition.rb", "lib/clamp/subcommand/execution.rb", "lib/clamp/subcommand/parsing.rb", "lib/clamp/truthy.rb", "lib/clamp/version.rb", "spec/clamp/command_group_spec.rb", "spec/clamp/command_spec.rb", "spec/clamp/option/definition_spec.rb", "spec/clamp/option_module_spec.rb", "spec/clamp/parameter/definition_spec.rb", "spec/spec_helper.rb"] -+ s.files = [".autotest", ".gitignore", ".rspec", ".travis.yml", "CHANGES.md", "Gemfile", "LICENSE", "README.md", "Rakefile", "clamp.gemspec", "examples/admin", "examples/flipflop", "examples/fubar", "examples/gitdown", "examples/scoop", "examples/speak", "lib/clamp.rb", "lib/clamp/attribute/declaration.rb", "lib/clamp/attribute/definition.rb", "lib/clamp/attribute/instance.rb", "lib/clamp/command.rb", "lib/clamp/errors.rb", "lib/clamp/help.rb", "lib/clamp/messages.rb", "lib/clamp/option/declaration.rb", "lib/clamp/option/definition.rb", "lib/clamp/option/parsing.rb", "lib/clamp/parameter/declaration.rb", "lib/clamp/parameter/definition.rb", "lib/clamp/parameter/parsing.rb", "lib/clamp/subcommand/declaration.rb", "lib/clamp/subcommand/definition.rb", "lib/clamp/subcommand/execution.rb", "lib/clamp/subcommand/parsing.rb", "lib/clamp/truthy.rb", "lib/clamp/version.rb", "spec/clamp/command_group_spec.rb", "spec/clamp/command_spec.rb", "spec/clamp/option/definition_spec.rb", "spec/clamp/option_module_spec.rb", "spec/clamp/parameter/definition_spec.rb", "spec/spec_helper.rb"] - s.homepage = "http://github.com/mdub/clamp" - s.licenses = ["MIT"] - s.rubygems_version = "2.4.6" -diff --git a/lib/clamp/attribute/instance.rb b/lib/clamp/attribute/instance.rb -index 8f51cc3..acab485 100644 ---- lib/clamp/attribute/instance.rb -+++ lib/clamp/attribute/instance.rb -@@ -69,7 +69,7 @@ def default_from_environment - begin - take(value) - rescue ArgumentError => e -- command.send(:signal_usage_error, "$#{attribute.environment_variable}: #{e.message}") -+ command.send(:signal_usage_error, Clamp.message(:env_argument_error, :env => attribute.environment_variable, :message => e.message)) - end - end - -diff --git a/lib/clamp/command.rb b/lib/clamp/command.rb -index c6c50f4..52187ab 100644 ---- lib/clamp/command.rb -+++ lib/clamp/command.rb -@@ -1,3 +1,4 @@ -+require 'clamp/messages' - require 'clamp/errors' - require 'clamp/help' - require 'clamp/option/declaration' -@@ -91,7 +92,7 @@ def help - - def handle_remaining_arguments - unless remaining_arguments.empty? -- signal_usage_error "too many arguments" -+ signal_usage_error Clamp.message(:too_many_arguments) - end - end - -diff --git a/lib/clamp/help.rb b/lib/clamp/help.rb -index e09731a..1e57530 100644 ---- lib/clamp/help.rb -+++ lib/clamp/help.rb -@@ -1,4 +1,5 @@ - require 'stringio' -+require 'clamp/messages' - - module Clamp - -@@ -41,12 +42,12 @@ def help(invocation_path, builder = Builder.new) - help.add_usage(invocation_path, usage_descriptions) - help.add_description(description) - if has_parameters? -- help.add_list("Parameters", parameters) -+ help.add_list(Clamp.message(:parameters_heading), parameters) - end - if has_subcommands? -- help.add_list("Subcommands", recognised_subcommands) -+ help.add_list(Clamp.message(:subcommands_heading), recognised_subcommands) - end -- help.add_list("Options", recognised_options) -+ help.add_list(Clamp.message(:options_heading), recognised_options) - help.string - end - -@@ -61,7 +62,7 @@ def string - end - - def add_usage(invocation_path, usage_descriptions) -- puts "Usage:" -+ puts usage_heading - usage_descriptions.each do |usage| - puts " #{invocation_path} #{usage}".rstrip - end -@@ -87,6 +88,12 @@ def add_list(heading, items) - end - end - -+ protected -+ -+ def usage_heading -+ Clamp.message(:usage_heading) + ":" -+ end -+ - private - - def puts(*args) -diff --git a/lib/clamp/messages.rb b/lib/clamp/messages.rb -new file mode 100644 -index 0000000..61cce94 ---- /dev/null -+++ lib/clamp/messages.rb -@@ -0,0 +1,43 @@ -+module Clamp -+ -+ def self.messages=(messages) -+ @user_defined_messages = messages -+ end -+ -+ def self.message(key, options={}) -+ @user_defined_messages ||= {} -+ msg = @user_defined_messages[key] || messages[key] -+ format_string(msg, options) -+ end -+ -+ def self.messages -+ { -+ :too_many_arguments => "too many arguments", -+ :option_required => "option '%