Hello community, here is the log from the commit of package rubygem-r10k for openSUSE:Factory checked in at 2015-02-16 21:47:23 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/rubygem-r10k (Old) and /work/SRC/openSUSE:Factory/.rubygem-r10k.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "rubygem-r10k" Changes: -------- --- /work/SRC/openSUSE:Factory/rubygem-r10k/rubygem-r10k.changes 2015-01-09 20:50:03.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.rubygem-r10k.new/rubygem-r10k.changes 2015-02-16 21:47:31.000000000 +0100 @@ -1,0 +2,30 @@ +Sat Jan 17 21:44:14 UTC 2015 - [email protected] + +- Version bump 1.4.1: + * (GH-254) Puppetfile subcommands use non-zero exit codes on errors. + The Puppetfile install and purge commands would always exit with an exit + code of 0, regardless of if any errors occurred or if there was no + Puppetfile available. This has been now corrected so that runtime errors + cause r10k to exit with a non-zero exit code. + * (GH-260) Normalize deployed environment names on the command line. + Version 1.4.0 removed the environment name normalization needed to deploy + environments that had their directory names normalized; this has been + remedied so that environment names on the command line are also normalized + to match the corrections that r10k will make to the environment names. + * (GH-269) Improved error messages when trying to use non-existent Git refs. + If a Git module tried to use a Git ref that did not exist, it would output + a particularly unhelpful error message that didn't indicate what actually + failed. This has been fixed so that if an invalid ref is used, r10k will + actually report that the ref could not be used. What a brave new world we + inhabit! + * (GH-271)/(GH-275) Report the name of invalid module names. + The fix for GH-92 released in 1.4.0 added better handling and parsing of + module names, but also added stricter parsing of module names and disallowed + invalid characters that Puppet itself could not use. However when r10k + encountered such an invalid module name, it would not report the module + with the invalid name, making debugging harder than needed. In 1.4.1 r10k + when r10k encounters an invalid module name it reports the invalid module + name in the error message. +- Add requirement to puppet-master, as it doesn't make much sense without it. + +------------------------------------------------------------------- Old: ---- r10k-1.4.0.gem New: ---- r10k-1.4.1.gem ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ rubygem-r10k.spec ++++++ --- /var/tmp/diff_new_pack.kCn13W/_old 2015-02-16 21:47:32.000000000 +0100 +++ /var/tmp/diff_new_pack.kCn13W/_new 2015-02-16 21:47:32.000000000 +0100 @@ -1,7 +1,7 @@ # # spec file for package rubygem-r10k # -# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2015 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -24,7 +24,7 @@ # Name: rubygem-r10k -Version: 1.4.0 +Version: 1.4.1 Release: 0 %define mod_name r10k %define mod_full_name %{mod_name}-%{version} ++++++ gem2rpm.yml ++++++ --- /var/tmp/diff_new_pack.kCn13W/_old 2015-02-16 21:47:32.000000000 +0100 +++ /var/tmp/diff_new_pack.kCn13W/_new 2015-02-16 21:47:32.000000000 +0100 @@ -4,8 +4,8 @@ 'gemspec.patch': -p0 :main: :preamble: |- + Requires: rubygem-puppet-master Recommends: git - Recommends: rubygem(puppet) Recommends: rubygem(%{rb_default_ruby_abi}:%{mod_name}) Provides: %{mod_name} = %{version}-%{release} Suggests: subversion ++++++ gemspec.patch ++++++ --- /var/tmp/diff_new_pack.kCn13W/_old 2015-02-16 21:47:32.000000000 +0100 +++ /var/tmp/diff_new_pack.kCn13W/_new 2015-02-16 21:47:32.000000000 +0100 @@ -1,5 +1,5 @@ ---- r10k-1.4.0.gemspec.orig 2014-12-09 01:10:26.487418397 +0200 -+++ r10k-1.4.0.gemspec 2014-12-09 01:24:26.840361686 +0200 +--- r10k-1.4.1.gemspec.orig 2014-12-09 01:10:26.487418397 +0200 ++++ r10k-1.4.1.gemspec 2014-12-09 01:24:26.840361686 +0200 @@ -25,11 +25,11 @@ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then s.add_runtime_dependency(%q<colored>, ["= 1.2"]) ++++++ r10k-1.4.0.gem -> r10k-1.4.1.gem ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/CHANGELOG.mkd new/CHANGELOG.mkd --- old/CHANGELOG.mkd 2014-12-03 02:46:39.000000000 +0100 +++ new/CHANGELOG.mkd 2015-01-10 01:16:15.000000000 +0100 @@ -1,6 +1,59 @@ CHANGELOG ========= +1.4.1 +----- + +2015/01/09 + +### User notes + +(GH-254) Puppetfile subcommands use non-zero exit codes on errors. + +The Puppetfile `install` and `purge` commands would always exit with an exit +code of 0, regardless of if any errors occurred or if there was no Puppetfile +available. This has been now corrected so that runtime errors cause r10k to exit +with a non-zero exit code. + +(GH-260) Normalize deployed environment names on the command line. + +Version 1.4.0 removed the environment name normalization needed to deploy +environments that had their directory names normalized; this has been remedied +so that environment names on the command line are also normalized to match the +corrections that r10k will make to the environment names. + +(GH-269) Improved error messages when trying to use non-existent Git refs. + +If a Git module tried to use a Git ref that did not exist, it would output a +particularly unhelpful error message that didn't indicate what actually failed. +This has been fixed so that if an invalid ref is used, r10k will actually report +that the ref could not be used. What a brave new world we inhabit! + +(GH-271)/(GH-275) Report the name of invalid module names. + +The fix for GH-92 released in 1.4.0 added better handling and parsing of module +names, but also added stricter parsing of module names and disallowed invalid +characters that Puppet itself could not use. However when r10k encountered such +an invalid module name, it would not report the module with the invalid name, +making debugging harder than needed. In 1.4.1 r10k when r10k encounters an +invalid module name it reports the invalid module name in the error message. + +### Thanks + +Thanks to the following contributors for their work on this release: + + * [Lex Rivera](https://github.com/rlex) for discovering and reporting the r10k + puppetfile exit code bug (GH-254). + * [Eli Young](https://github.com/elyscape) for discovering and fixing the + environment normalization bug (GH-260). + * [Clayton O'Neill](https://github.com/dvorak) For adding better error + reporting of invalid module names (GH-275). + +Additional thanks to all those in #puppet and #r10k for endlessly helping new +users of r10k, your assistance is invaluable! + +### + 1.4.0 ----- Files old/checksums.yaml.gz and new/checksums.yaml.gz differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/r10k/action/deploy/environment.rb new/lib/r10k/action/deploy/environment.rb --- old/lib/r10k/action/deploy/environment.rb 2014-12-03 02:46:39.000000000 +0100 +++ new/lib/r10k/action/deploy/environment.rb 2015-01-10 01:16:15.000000000 +0100 @@ -13,7 +13,7 @@ def initialize(opts, argv) @opts = opts - @argv = argv + @argv = argv.map { |arg| arg.gsub(/\W/,'_') } setopts(opts, { :config => :self, :puppetfile => :self, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/r10k/action/puppetfile/check.rb new/lib/r10k/action/puppetfile/check.rb --- old/lib/r10k/action/puppetfile/check.rb 2014-12-03 02:46:39.000000000 +0100 +++ new/lib/r10k/action/puppetfile/check.rb 2015-01-10 01:16:15.000000000 +0100 @@ -26,10 +26,10 @@ pf = R10K::Puppetfile.new(@root, @moduledir, @path) begin - pf.load + pf.load! $stderr.puts "Syntax OK" true - rescue R10K::Error => e + rescue => e $stderr.puts R10K::Errors::Formatting.format_exception(e, @trace) false end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/r10k/action/puppetfile/install.rb new/lib/r10k/action/puppetfile/install.rb --- old/lib/r10k/action/puppetfile/install.rb 2014-12-03 02:46:39.000000000 +0100 +++ new/lib/r10k/action/puppetfile/install.rb 2015-01-10 01:16:15.000000000 +0100 @@ -38,7 +38,7 @@ end def visit_puppetfile(pf) - pf.load + pf.load! yield pf.purge! end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/r10k/action/puppetfile/purge.rb new/lib/r10k/action/puppetfile/purge.rb --- old/lib/r10k/action/puppetfile/purge.rb 2014-12-03 02:46:39.000000000 +0100 +++ new/lib/r10k/action/puppetfile/purge.rb 2015-01-10 01:16:15.000000000 +0100 @@ -24,11 +24,11 @@ def call pf = R10K::Puppetfile.new(@root, @moduledir, @path) - pf.load + pf.load! pf.purge! true rescue => e - logger.error R10K::Errors::Formatting.format_exception(e, opts[:trace]) + logger.error R10K::Errors::Formatting.format_exception(e, @trace) false end end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/r10k/git/errors.rb new/lib/r10k/git/errors.rb --- old/lib/r10k/git/errors.rb 2014-12-03 02:46:39.000000000 +0100 +++ new/lib/r10k/git/errors.rb 2015-01-10 01:16:15.000000000 +0100 @@ -10,31 +10,17 @@ attr_reader :ref attr_reader :git_dir - def initialize(*args) + def initialize(mesg, options = {}) super - - @hash = @options[:ref] + @ref = @options[:ref] @git_dir = @options[:git_dir] end - HASHLIKE = %r[[A-Fa-f0-9]] - - # Print a friendly error message if an object hash is given as the message def message - if @mesg - msg = @mesg - else - msg = "Could not locate hash" - - if @hash - msg << " '#{@hash}'" - end - end - + msg = super if @git_dir msg << " at #{@git_dir}" end - msg end end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/r10k/git/repository.rb new/lib/r10k/git/repository.rb --- old/lib/r10k/git/repository.rb 2014-12-03 02:46:39.000000000 +0100 +++ new/lib/r10k/git/repository.rb 2015-01-10 01:16:15.000000000 +0100 @@ -38,7 +38,7 @@ if commit commit.chomp else - raise R10K::Git::UnresolvableRefError.new(:ref => pattern, :git_dir => git_dir) + raise R10K::Git::UnresolvableRefError.new("Could not resolve Git ref '#{ref}'", :ref => pattern, :git_dir => git_dir) end end alias rev_parse resolve_ref diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/r10k/git/working_dir.rb new/lib/r10k/git/working_dir.rb --- old/lib/r10k/git/working_dir.rb 2014-12-03 02:46:39.000000000 +0100 +++ new/lib/r10k/git/working_dir.rb 2015-01-10 01:16:15.000000000 +0100 @@ -89,13 +89,9 @@ # # @param ref [R10K::Git::Ref] The git reference to check out def checkout(ref) - if ref.resolvable? - git ["checkout", "--force", @ref.sha1], :path => @full_path - else - raise R10K::Git::UnresolvableRefError.new( - "Cannot check out unresolvable ref '#{@ref}'", - :git_dir => @full_path) - end + git ["checkout", "--force", @ref.sha1], :path => @full_path + rescue => e + raise R10K::Git::GitError.wrap(e, "Cannot check out Git ref '#{@ref}'") end # The currently checked out HEAD diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/r10k/module/base.rb new/lib/r10k/module/base.rb --- old/lib/r10k/module/base.rb 2014-12-03 02:46:39.000000000 +0100 +++ new/lib/r10k/module/base.rb 2015-01-10 01:16:15.000000000 +0100 @@ -96,7 +96,7 @@ elsif (match = title.match(/\A(\w+)[-\/](\w+)\Z/)) [match[1], match[2]] else - raise ArgumentError, "Module names must match either 'modulename' or 'owner/modulename'" + raise ArgumentError, "Module name (#{title}) must match either 'modulename' or 'owner/modulename'" end end end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/r10k/version.rb new/lib/r10k/version.rb --- old/lib/r10k/version.rb 2014-12-03 02:46:39.000000000 +0100 +++ new/lib/r10k/version.rb 2015-01-10 01:16:15.000000000 +0100 @@ -1,3 +1,3 @@ module R10K - VERSION = '1.4.0' + VERSION = '1.4.1' end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/metadata new/metadata --- old/metadata 2014-12-03 02:46:39.000000000 +0100 +++ new/metadata 2015-01-10 01:16:15.000000000 +0100 @@ -1,186 +1,187 @@ --- !ruby/object:Gem::Specification name: r10k version: !ruby/object:Gem::Version - version: 1.4.0 + version: 1.4.1 platform: ruby authors: - Adrien Thebo -autorequire: +autorequire: bindir: bin cert_chain: [] -date: 2014-12-03 00:00:00.000000000 Z +date: 2015-01-10 00:00:00.000000000 Z dependencies: - !ruby/object:Gem::Dependency name: colored - requirement: !ruby/object:Gem::Requirement + version_requirements: !ruby/object:Gem::Requirement requirements: - - '=' - !ruby/object:Gem::Version version: '1.2' - type: :runtime - prerelease: false - version_requirements: !ruby/object:Gem::Requirement + requirement: !ruby/object:Gem::Requirement requirements: - - '=' - !ruby/object:Gem::Version version: '1.2' + prerelease: false + type: :runtime - !ruby/object:Gem::Dependency name: cri - requirement: !ruby/object:Gem::Requirement + version_requirements: !ruby/object:Gem::Requirement requirements: - - ~> - !ruby/object:Gem::Version version: 2.6.1 - type: :runtime - prerelease: false - version_requirements: !ruby/object:Gem::Requirement + requirement: !ruby/object:Gem::Requirement requirements: - - ~> - !ruby/object:Gem::Version version: 2.6.1 + prerelease: false + type: :runtime - !ruby/object:Gem::Dependency name: systemu - requirement: !ruby/object:Gem::Requirement + version_requirements: !ruby/object:Gem::Requirement requirements: - - ~> - !ruby/object:Gem::Version version: 2.5.2 - type: :runtime - prerelease: false - version_requirements: !ruby/object:Gem::Requirement + requirement: !ruby/object:Gem::Requirement requirements: - - ~> - !ruby/object:Gem::Version version: 2.5.2 + prerelease: false + type: :runtime - !ruby/object:Gem::Dependency name: log4r - requirement: !ruby/object:Gem::Requirement + version_requirements: !ruby/object:Gem::Requirement requirements: - - '=' - !ruby/object:Gem::Version version: 1.1.10 - type: :runtime - prerelease: false - version_requirements: !ruby/object:Gem::Requirement + requirement: !ruby/object:Gem::Requirement requirements: - - '=' - !ruby/object:Gem::Version version: 1.1.10 + prerelease: false + type: :runtime - !ruby/object:Gem::Dependency name: multi_json - requirement: !ruby/object:Gem::Requirement + version_requirements: !ruby/object:Gem::Requirement requirements: - - ~> - !ruby/object:Gem::Version version: 1.8.2 - type: :runtime - prerelease: false - version_requirements: !ruby/object:Gem::Requirement + requirement: !ruby/object:Gem::Requirement requirements: - - ~> - !ruby/object:Gem::Version version: 1.8.2 + prerelease: false + type: :runtime - !ruby/object:Gem::Dependency name: json_pure - requirement: !ruby/object:Gem::Requirement + version_requirements: !ruby/object:Gem::Requirement requirements: - - ~> - !ruby/object:Gem::Version version: '1.8' - type: :runtime - prerelease: false - version_requirements: !ruby/object:Gem::Requirement + requirement: !ruby/object:Gem::Requirement requirements: - - ~> - !ruby/object:Gem::Version version: '1.8' + prerelease: false + type: :runtime - !ruby/object:Gem::Dependency name: faraday - requirement: !ruby/object:Gem::Requirement + version_requirements: !ruby/object:Gem::Requirement requirements: - - ~> - !ruby/object:Gem::Version version: 0.8.8 - type: :runtime - prerelease: false - version_requirements: !ruby/object:Gem::Requirement + requirement: !ruby/object:Gem::Requirement requirements: - - ~> - !ruby/object:Gem::Version version: 0.8.8 + prerelease: false + type: :runtime - !ruby/object:Gem::Dependency name: faraday_middleware - requirement: !ruby/object:Gem::Requirement + version_requirements: !ruby/object:Gem::Requirement requirements: - - ~> - !ruby/object:Gem::Version version: 0.9.0 - type: :runtime - prerelease: false - version_requirements: !ruby/object:Gem::Requirement + requirement: !ruby/object:Gem::Requirement requirements: - - ~> - !ruby/object:Gem::Version version: 0.9.0 + prerelease: false + type: :runtime - !ruby/object:Gem::Dependency name: faraday_middleware-multi_json - requirement: !ruby/object:Gem::Requirement + version_requirements: !ruby/object:Gem::Requirement requirements: - - ~> - !ruby/object:Gem::Version version: 0.0.5 - type: :runtime - prerelease: false - version_requirements: !ruby/object:Gem::Requirement + requirement: !ruby/object:Gem::Requirement requirements: - - ~> - !ruby/object:Gem::Version version: 0.0.5 + prerelease: false + type: :runtime - !ruby/object:Gem::Dependency name: rspec - requirement: !ruby/object:Gem::Requirement + version_requirements: !ruby/object:Gem::Requirement requirements: - - ~> - !ruby/object:Gem::Version version: '3.1' - type: :development - prerelease: false - version_requirements: !ruby/object:Gem::Requirement + requirement: !ruby/object:Gem::Requirement requirements: - - ~> - !ruby/object:Gem::Version version: '3.1' + prerelease: false + type: :development - !ruby/object:Gem::Dependency name: vcr - requirement: !ruby/object:Gem::Requirement + version_requirements: !ruby/object:Gem::Requirement requirements: - - ~> - !ruby/object:Gem::Version version: '2.9' - type: :development - prerelease: false - version_requirements: !ruby/object:Gem::Requirement + requirement: !ruby/object:Gem::Requirement requirements: - - ~> - !ruby/object:Gem::Version version: '2.9' + prerelease: false + type: :development - !ruby/object:Gem::Dependency name: yard - requirement: !ruby/object:Gem::Requirement + version_requirements: !ruby/object:Gem::Requirement requirements: - - ~> - !ruby/object:Gem::Version version: 0.8.7.3 - type: :development - prerelease: false - version_requirements: !ruby/object:Gem::Requirement + requirement: !ruby/object:Gem::Requirement requirements: - - ~> - !ruby/object:Gem::Version version: 0.8.7.3 -description: ! " R10K provides a general purpose toolset for deploying Puppet environments - and modules.\n It implements the Puppetfile format and provides a native implementation - of Puppet\n dynamic environments.\n" + prerelease: false + type: :development +description: |2 + R10K provides a general purpose toolset for deploying Puppet environments and modules. + It implements the Puppetfile format and provides a native implementation of Puppet + dynamic environments. email: [email protected] executables: - r10k @@ -372,31 +373,36 @@ licenses: - Apache-2.0 metadata: {} -post_install_message: +post_install_message: rdoc_options: [] require_paths: - lib required_ruby_version: !ruby/object:Gem::Requirement requirements: - - - ! '>=' + - - '>=' - !ruby/object:Gem::Version version: '0' required_rubygems_version: !ruby/object:Gem::Requirement requirements: - - - ! '>=' + - - '>=' - !ruby/object:Gem::Version version: '0' requirements: [] -rubyforge_project: -rubygems_version: 2.4.4 -signing_key: +rubyforge_project: +rubygems_version: 2.1.9 +signing_key: specification_version: 4 summary: Puppet environment and module deployment test_files: +- spec/unit/module_spec.rb +- spec/unit/keyed_factory_spec.rb +- spec/unit/source_spec.rb +- spec/unit/puppetfile_spec.rb +- spec/unit/instance_cache_spec.rb +- spec/unit/deployment_spec.rb - spec/unit/environment/base_spec.rb - spec/unit/environment/svn_spec.rb - spec/unit/environment/git_spec.rb -- spec/unit/module_spec.rb - spec/unit/module_repository/forge_spec.rb - spec/unit/git/ref_spec.rb - spec/unit/git/working_dir_spec.rb @@ -406,33 +412,28 @@ - spec/unit/git/head_spec.rb - spec/unit/git/alternates_spec.rb - spec/unit/git/tag_spec.rb -- spec/unit/keyed_factory_spec.rb - spec/unit/deployment/environment_spec.rb - spec/unit/deployment/source_spec.rb -- spec/unit/source_spec.rb -- spec/unit/puppetfile_spec.rb - spec/unit/util/attempt_spec.rb - spec/unit/util/setopts_spec.rb +- spec/unit/util/subprocess_spec.rb - spec/unit/util/subprocess/result_spec.rb - spec/unit/util/subprocess/subprocess_error_spec.rb -- spec/unit/util/subprocess_spec.rb - spec/unit/util/core_ext/hash_ext_spec.rb - spec/unit/errors/formatting_spec.rb -- spec/unit/instance_cache_spec.rb - spec/unit/action/visitor_spec.rb - spec/unit/action/cri_runner_spec.rb -- spec/unit/action/puppetfile/cri_action_spec.rb - spec/unit/action/runner_spec.rb +- spec/unit/action/puppetfile/cri_action_spec.rb - spec/unit/settings/container_spec.rb - spec/unit/svn/working_dir_spec.rb - spec/unit/svn/remote_spec.rb - spec/unit/source/base_spec.rb - spec/unit/source/svn_spec.rb - spec/unit/source/git_spec.rb -- spec/unit/deployment_spec.rb - spec/unit/module/forge_spec.rb - spec/unit/module/base_spec.rb - spec/unit/module/svn_spec.rb - spec/unit/module/git_spec.rb - spec/unit/module/metadata_spec.rb -has_rdoc: +has_rdoc: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec/unit/module/base_spec.rb new/spec/unit/module/base_spec.rb --- old/spec/unit/module/base_spec.rb 2014-12-03 02:46:39.000000000 +0100 +++ new/spec/unit/module/base_spec.rb 2015-01-10 01:16:15.000000000 +0100 @@ -24,7 +24,7 @@ it "raises an error when the title is not correctly formatted" do expect { described_class.new('branan!eight_hundred', '/moduledir', []) - }.to raise_error(ArgumentError, "Module names must match either 'modulename' or 'owner/modulename'") + }.to raise_error(ArgumentError, "Module name (branan!eight_hundred) must match either 'modulename' or 'owner/modulename'") end end -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
