Hello community,

here is the log from the commit of package rubygem-rspec-support for 
openSUSE:Factory checked in at 2015-12-01 10:02:31
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rubygem-rspec-support (Old)
 and      /work/SRC/openSUSE:Factory/.rubygem-rspec-support.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "rubygem-rspec-support"

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/rubygem-rspec-support/rubygem-rspec-support.changes  
    2015-06-15 17:45:36.000000000 +0200
+++ 
/work/SRC/openSUSE:Factory/.rubygem-rspec-support.new/rubygem-rspec-support.changes
 2015-12-01 10:02:33.000000000 +0100
@@ -1,0 +2,38 @@
+Mon Nov 23 05:31:27 UTC 2015 - co...@suse.com
+
+- updated to version 3.4.1
+ see installed Changelog.md
+
+  ### 3.4.1 / 2015-11-20
+  [Full 
Changelog](http://github.com/rspec/rspec-support/compare/v3.4.0...v3.4.1)
+  
+  Bug Fixes:
+  
+  * Fix `RSpec::Support::RubyFeature.ripper_supported?` so it returns
+    `false` on Rubinius since the Rubinius team has no plans to support
+    it. This prevents rspec-core from trying to load and use ripper to
+    extract failure snippets. (Aaron Stone, #251)
+
+-------------------------------------------------------------------
+Fri Nov 13 05:39:32 UTC 2015 - co...@suse.com
+
+- updated to version 3.4.0
+ see installed Changelog.md
+
+  ### 3.4.0 / 2015-11-11
+  [Full 
Changelog](http://github.com/rspec/rspec-support/compare/v3.3.0...v3.4.0)
+  
+  Enhancements:
+  
+  * Improve formatting of `Delegator` based objects (e.g. `SimpleDelgator`) in
+    failure messages and diffs. (Andrew Horner, #215)
+  * Add `ComparableVersion`. (Yuji Nakayama, #245)
+  * Add `Ripper` support detection. (Yuji Nakayama, #245)
+  
+  Bug Fixes:
+  
+  * Work around bug in JRuby that reports that `attr_writer` methods
+    have no parameters, causing RSpec's verifying doubles to wrongly
+    fail when mocking or stubbing a writer method on JRuby. (Myron Marston, 
#225)
+
+-------------------------------------------------------------------

Old:
----
  rspec-support-3.3.0.gem

New:
----
  rspec-support-3.4.1.gem

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ rubygem-rspec-support.spec ++++++
--- /var/tmp/diff_new_pack.y0IgR2/_old  2015-12-01 10:02:33.000000000 +0100
+++ /var/tmp/diff_new_pack.y0IgR2/_new  2015-12-01 10:02:33.000000000 +0100
@@ -24,7 +24,7 @@
 #
 
 Name:           rubygem-rspec-support
-Version:        3.3.0
+Version:        3.4.1
 Release:        0
 %define mod_name rspec-support
 %define mod_full_name %{mod_name}-%{version}
@@ -49,7 +49,7 @@
 
 %install
 %gem_install \
-  --doc-files="Changelog.md LICENSE.txt README.md" \
+  --doc-files="Changelog.md LICENSE.md README.md" \
   -f
 
 %gem_packages

++++++ rspec-support-3.3.0.gem -> rspec-support-3.4.1.gem ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Changelog.md new/Changelog.md
--- old/Changelog.md    2015-06-12 17:05:41.000000000 +0200
+++ new/Changelog.md    2015-11-20 17:49:33.000000000 +0100
@@ -1,3 +1,29 @@
+### 3.4.1 / 2015-11-20
+[Full Changelog](http://github.com/rspec/rspec-support/compare/v3.4.0...v3.4.1)
+
+Bug Fixes:
+
+* Fix `RSpec::Support::RubyFeature.ripper_supported?` so it returns
+  `false` on Rubinius since the Rubinius team has no plans to support
+  it. This prevents rspec-core from trying to load and use ripper to
+  extract failure snippets. (Aaron Stone, #251)
+
+### 3.4.0 / 2015-11-11
+[Full Changelog](http://github.com/rspec/rspec-support/compare/v3.3.0...v3.4.0)
+
+Enhancements:
+
+* Improve formatting of `Delegator` based objects (e.g. `SimpleDelgator`) in
+  failure messages and diffs. (Andrew Horner, #215)
+* Add `ComparableVersion`. (Yuji Nakayama, #245)
+* Add `Ripper` support detection. (Yuji Nakayama, #245)
+
+Bug Fixes:
+
+* Work around bug in JRuby that reports that `attr_writer` methods
+  have no parameters, causing RSpec's verifying doubles to wrongly
+  fail when mocking or stubbing a writer method on JRuby. (Myron Marston, #225)
+
 ### 3.3.0 / 2015-06-12
 [Full Changelog](http://github.com/rspec/rspec-support/compare/v3.2.2...v3.3.0)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/LICENSE.md new/LICENSE.md
--- old/LICENSE.md      1970-01-01 01:00:00.000000000 +0100
+++ new/LICENSE.md      2015-11-20 17:49:33.000000000 +0100
@@ -0,0 +1,23 @@
+The MIT License (MIT)
+====================
+
+* Copyright © 2013 David Chelimsky, Myron Marston, Jon Rowe, Sam Phippen, 
Xavier Shay, Bradley Schaefer
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/LICENSE.txt new/LICENSE.txt
--- old/LICENSE.txt     2015-06-12 17:05:41.000000000 +0200
+++ new/LICENSE.txt     1970-01-01 01:00:00.000000000 +0100
@@ -1,22 +0,0 @@
-Copyright (c) 2013 David Chelimsky, Myron Marston, Jon Rowe, Sam Phippen, 
Xavier Shay, Bradley Schaefer
-
-MIT License
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this software and associated documentation files (the
-"Software"), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/README.md new/README.md
--- old/README.md       2015-06-12 17:05:41.000000000 +0200
+++ new/README.md       2015-11-20 17:49:33.000000000 +0100
@@ -19,8 +19,22 @@
 
 ## Contributing
 
-1. Fork it
-2. Create your feature branch (`git checkout -b my-new-feature`)
-3. Commit your changes (`git commit -am 'Add some feature'`)
-4. Push to the branch (`git push origin my-new-feature`)
-5. Create new Pull Request
+Once you've set up the environment, you'll need to cd into the working
+directory of whichever repo you want to work in. From there you can run the
+specs and cucumber features, and make patches.
+
+NOTE: You do not need to use rspec-dev to work on a specific RSpec repo. You
+can treat each RSpec repo as an independent project.
+
+- [Build details](BUILD_DETAIL.md)
+- [Code of Conduct](CODE_OF_CONDUCT.md)
+- [Detailed contributing guide](CONTRIBUTING.md)
+- [Development setup guide](DEVELOPMENT.md)
+
+## Patches
+
+Please submit a pull request or a github issue to one of the issue trackers
+listed below. If you submit an issue, please include a link to either of:
+
+* a gist (or equivalent) of the patch
+* a branch or commit in your github fork of the repo
Files old/checksums.yaml.gz and new/checksums.yaml.gz differ
Files old/checksums.yaml.gz.sig and new/checksums.yaml.gz.sig differ
Files old/data.tar.gz.sig and new/data.tar.gz.sig differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rspec/support/comparable_version.rb 
new/lib/rspec/support/comparable_version.rb
--- old/lib/rspec/support/comparable_version.rb 1970-01-01 01:00:00.000000000 
+0100
+++ new/lib/rspec/support/comparable_version.rb 2015-11-20 17:49:33.000000000 
+0100
@@ -0,0 +1,46 @@
+module RSpec
+  module Support
+    # @private
+    class ComparableVersion
+      include Comparable
+
+      attr_reader :string
+
+      def initialize(string)
+        @string = string
+      end
+
+      def <=>(other)
+        other = self.class.new(other) unless other.is_a?(self.class)
+
+        return 0 if string == other.string
+
+        longer_segment_count = [self, other].map { |version| 
version.segments.count }.max
+
+        longer_segment_count.times do |index|
+          self_segment = segments[index] || 0
+          other_segment = other.segments[index] || 0
+
+          if self_segment.class == other_segment.class
+            result = self_segment <=> other_segment
+            return result unless result == 0
+          else
+            return self_segment.is_a?(String) ? -1 : 1
+          end
+        end
+
+        0
+      end
+
+      def segments
+        @segments ||= string.scan(/[a-z]+|\d+/i).map do |segment|
+          if segment =~ /\A\d+\z/
+            segment.to_i
+          else
+            segment
+          end
+        end
+      end
+    end
+  end
+end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rspec/support/method_signature_verifier.rb 
new/lib/rspec/support/method_signature_verifier.rb
--- old/lib/rspec/support/method_signature_verifier.rb  2015-06-12 
17:05:41.000000000 +0200
+++ new/lib/rspec/support/method_signature_verifier.rb  2015-11-20 
17:49:33.000000000 +0100
@@ -136,6 +136,23 @@
       INFINITY = 1 / 0.0
     end
 
+    # Some versions of JRuby have a nasty bug we have to work around :(.
+    # https://github.com/jruby/jruby/issues/2816
+    if RSpec::Support::Ruby.jruby? &&
+       RubyFeatures.optional_and_splat_args_supported? &&
+       Class.new { attr_writer :foo }.instance_method(:foo=).parameters == []
+
+      class MethodSignature < remove_const(:MethodSignature)
+      private
+
+        def classify_parameters
+          super
+          return unless @method.parameters == [] && @method.arity == 1
+          @max_non_kw_args = @min_non_kw_args = 1
+        end
+      end
+    end
+
     # Deals with the slightly different semantics of block arguments.
     # For methods, arguments are required unless a default value is provided.
     # For blocks, arguments are optional, even if no default value is provided.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rspec/support/mutex.rb 
new/lib/rspec/support/mutex.rb
--- old/lib/rspec/support/mutex.rb      1970-01-01 01:00:00.000000000 +0100
+++ new/lib/rspec/support/mutex.rb      2015-11-20 17:49:33.000000000 +0100
@@ -0,0 +1,73 @@
+module RSpec
+  module Support
+    # On 1.8.7, it's in the stdlib.
+    # We don't want to load the stdlib, b/c this is a test tool, and can affect
+    # the test environment, causing tests to pass where they should fail.
+    #
+    # So we're transcribing/modifying it from
+    # https://github.com/ruby/ruby/blob/v1_8_7_374/lib/thread.rb#L56
+    # Some methods we don't need are deleted. Anything I don't
+    # understand (there's quite a bit, actually) is left in.
+    #
+    # Some formating changes are made to appease the robot overlord:
+    #   https://travis-ci.org/rspec/rspec-core/jobs/54410874
+    # @private
+    class Mutex
+      def initialize
+        @waiting = []
+        @locked = false
+        @waiting.taint
+        taint
+      end
+
+      # @private
+      def lock
+        while Thread.critical = true && @locked
+          @waiting.push Thread.current
+          Thread.stop
+        end
+        @locked = true
+        Thread.critical = false
+        self
+      end
+
+      # @private
+      def unlock
+        return unless @locked
+        Thread.critical = true
+        @locked = false
+        wakeup_and_run_waiting_thread
+        self
+      end
+
+      # @private
+      def synchronize
+        lock
+        begin
+          yield
+        ensure
+          unlock
+        end
+      end
+
+    private
+
+      def wakeup_and_run_waiting_thread
+        begin
+          t = @waiting.shift
+          t.wakeup if t
+        rescue ThreadError
+          retry
+        end
+        Thread.critical = false
+        begin
+          t.run if t
+        rescue ThreadError
+          :noop
+        end
+      end
+
+      # Avoid warnings for library wide checks spec
+    end unless defined?(::RSpec::Support::Mutex) || defined?(::Mutex)
+  end
+end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rspec/support/object_formatter.rb 
new/lib/rspec/support/object_formatter.rb
--- old/lib/rspec/support/object_formatter.rb   2015-06-12 17:05:41.000000000 
+0200
+++ new/lib/rspec/support/object_formatter.rb   2015-11-20 17:49:33.000000000 
+0100
@@ -36,7 +36,7 @@
           elsif RSpec::Support.is_a_matcher?(object) && 
object.respond_to?(:description)
             inspection = object.description
           else
-            return object
+            return DelegatingInspector.new(object)
           end
         end
 
@@ -88,6 +88,21 @@
           pp.text inspection
         end
       end
+
+      # @private
+      DelegatingInspector = Struct.new(:object) do
+        def inspect
+          if defined?(::Delegator) && ::Delegator === object
+            "#<#{object.class}(#{ObjectFormatter.format(object.__getobj__)})>"
+          else
+            object.inspect
+          end
+        end
+
+        def pretty_print(pp)
+          pp.text inspect
+        end
+      end
     end
   end
 end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rspec/support/reentrant_mutex.rb 
new/lib/rspec/support/reentrant_mutex.rb
--- old/lib/rspec/support/reentrant_mutex.rb    1970-01-01 01:00:00.000000000 
+0100
+++ new/lib/rspec/support/reentrant_mutex.rb    2015-11-20 17:49:33.000000000 
+0100
@@ -0,0 +1,53 @@
+module RSpec
+  module Support
+    # Allows a thread to lock out other threads from a critical section of 
code,
+    # while allowing the thread with the lock to reenter that section.
+    #
+    # Based on Monitor as of 2.2 -
+    # 
https://github.com/ruby/ruby/blob/eb7ddaa3a47bf48045d26c72eb0f263a53524ebc/lib/monitor.rb#L9
+    #
+    # Depends on Mutex, but Mutex is only available as part of core since 
1.9.1:
+    #   exists - http://ruby-doc.org/core-1.9.1/Mutex.html
+    #   dne    - http://ruby-doc.org/core-1.9.0/Mutex.html
+    #
+    # @private
+    class ReentrantMutex
+      def initialize
+        @owner = nil
+        @count = 0
+        @mutex = Mutex.new
+      end
+
+      def synchronize
+        enter
+        yield
+      ensure
+        exit
+      end
+
+    private
+
+      def enter
+        @mutex.lock if @owner != Thread.current
+        @owner = Thread.current
+        @count += 1
+      end
+
+      def exit
+        @count -= 1
+        return unless @count == 0
+        @owner = nil
+        @mutex.unlock
+      end
+    end
+
+    if defined? ::Mutex
+      # On 1.9 and up, this is in core, so we just use the real one
+      Mutex = ::Mutex
+    else # For 1.8.7
+      # :nocov:
+      RSpec::Support.require_rspec_support "mutex"
+      # :nocov:
+    end
+  end
+end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rspec/support/ruby_features.rb 
new/lib/rspec/support/ruby_features.rb
--- old/lib/rspec/support/ruby_features.rb      2015-06-12 17:05:41.000000000 
+0200
+++ new/lib/rspec/support/ruby_features.rb      2015-11-20 17:49:33.000000000 
+0100
@@ -1,4 +1,5 @@
 require 'rbconfig'
+RSpec::Support.require_rspec_support "comparable_version"
 
 module RSpec
   module Support
@@ -9,7 +10,7 @@
       module_function
 
       def windows?
-        RbConfig::CONFIG['host_os'] =~ /cygwin|mswin|mingw|bccwin|wince|emx/
+        !!(RbConfig::CONFIG['host_os'] =~ 
/cygwin|mswin|mingw|bccwin|wince|emx/)
       end
 
       def windows_file_path?
@@ -55,6 +56,36 @@
         respond_to?(:caller_locations, true)
       end
 
+      if Exception.method_defined?(:cause)
+        def supports_exception_cause?
+          true
+        end
+      else
+        def supports_exception_cause?
+          false
+        end
+      end
+
+      ripper_requirements = [ComparableVersion.new(RUBY_VERSION) >= '1.9.2']
+
+      ripper_requirements.push(false) if Ruby.rbx?
+
+      if Ruby.jruby?
+        ripper_requirements.push(ComparableVersion.new(JRUBY_VERSION) >= 
'1.7.5')
+        # Ripper on JRuby 9.0.0.0.rc1 or later reports wrong line number.
+        ripper_requirements.push(ComparableVersion.new(JRUBY_VERSION) < 
'9.0.0.0.rc1')
+      end
+
+      if ripper_requirements.all?
+        def ripper_supported?
+          true
+        end
+      else
+        def ripper_supported?
+          false
+        end
+      end
+
       if Ruby.mri?
         def kw_args_supported?
           RUBY_VERSION >= '2.0.0'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rspec/support/spec/in_sub_process.rb 
new/lib/rspec/support/spec/in_sub_process.rb
--- old/lib/rspec/support/spec/in_sub_process.rb        2015-06-12 
17:05:41.000000000 +0200
+++ new/lib/rspec/support/spec/in_sub_process.rb        2015-11-20 
17:49:33.000000000 +0100
@@ -16,7 +16,7 @@
             begin
               yield
               warning_preventer.verify_no_warnings! if prevent_warnings
-            rescue Exception => e
+            rescue Support::AllExceptionsExceptOnesWeMustNotRescue => e
               exception = e
             end
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rspec/support/spec/library_wide_checks.rb 
new/lib/rspec/support/spec/library_wide_checks.rb
--- old/lib/rspec/support/spec/library_wide_checks.rb   2015-06-12 
17:05:41.000000000 +0200
+++ new/lib/rspec/support/spec/library_wide_checks.rb   2015-11-20 
17:49:33.000000000 +0100
@@ -1,5 +1,34 @@
 require 'rspec/support/spec/shell_out'
 
+module RSpec
+  module Support
+    module WhitespaceChecks
+      # This malformed whitespace detection logic has been borrowed from 
bundler:
+      # https://github.com/bundler/bundler/blob/v1.8.0/spec/quality_spec.rb
+      def check_for_tab_characters(filename)
+        failing_lines = []
+        File.readlines(filename).each_with_index do |line, number|
+          failing_lines << number + 1 if line =~ /\t/
+        end
+
+        return if failing_lines.empty?
+        "#{filename} has tab characters on lines #{failing_lines.join(', ')}"
+      end
+
+      def check_for_extra_spaces(filename)
+        failing_lines = []
+        File.readlines(filename).each_with_index do |line, number|
+          next if line =~ /^\s+#.*\s+\n$/
+          failing_lines << number + 1 if line =~ /\s+\n$/
+        end
+
+        return if failing_lines.empty?
+        "#{filename} has spaces on the EOL on lines #{failing_lines.join(', 
')}"
+      end
+    end
+  end
+end
+
 RSpec.shared_examples_for "library wide checks" do |lib, options|
   consider_a_test_env_file = options.fetch(:consider_a_test_env_file, /MATCHES 
NOTHING/)
   allowed_loaded_feature_regexps = 
options.fetch(:allowed_loaded_feature_regexps, [])
@@ -8,6 +37,7 @@
   skip_spec_files = options.fetch(:skip_spec_files, /MATCHES NOTHING/)
 
   include RSpec::Support::ShellOut
+  include RSpec::Support::WhitespaceChecks
 
   define_method :files_to_require_for do |sub_dir|
     slash         = File::SEPARATOR
@@ -101,29 +131,6 @@
     expect(loaded_features).to eq([])
   end
 
-  # This malformed whitespace detection logic has been borrowed from bundler:
-  # https://github.com/bundler/bundler/blob/v1.8.0/spec/quality_spec.rb
-  def check_for_tab_characters(filename)
-    failing_lines = []
-    File.readlines(filename).each_with_index do |line, number|
-      failing_lines << number + 1 if line =~ /\t/
-    end
-
-    return if failing_lines.empty?
-    "#{filename} has tab characters on lines #{failing_lines.join(', ')}"
-  end
-
-  def check_for_extra_spaces(filename)
-    failing_lines = []
-    File.readlines(filename).each_with_index do |line, number|
-      next if line =~ /^\s+#.*\s+\n$/
-      failing_lines << number + 1 if line =~ /\s+\n$/
-    end
-
-    return if failing_lines.empty?
-    "#{filename} has spaces on the EOL on lines #{failing_lines.join(', ')}"
-  end
-
   RSpec::Matchers.define :be_well_formed do
     match do |actual|
       actual.empty?
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rspec/support/version.rb 
new/lib/rspec/support/version.rb
--- old/lib/rspec/support/version.rb    2015-06-12 17:05:41.000000000 +0200
+++ new/lib/rspec/support/version.rb    2015-11-20 17:49:33.000000000 +0100
@@ -1,7 +1,7 @@
 module RSpec
   module Support
     module Version
-      STRING = '3.3.0'
+      STRING = '3.4.1'
     end
   end
 end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rspec/support/warnings.rb 
new/lib/rspec/support/warnings.rb
--- old/lib/rspec/support/warnings.rb   2015-06-12 17:05:41.000000000 +0200
+++ new/lib/rspec/support/warnings.rb   2015-11-20 17:49:33.000000000 +0100
@@ -30,7 +30,7 @@
         call_site = options.fetch(:call_site) { 
CallerFilter.first_non_rspec_line }
         message << " Use #{options[:replacement]} instead." if 
options[:replacement]
         message << " Called from #{call_site}." if call_site
-        ::Kernel.warn message
+        Support.warning_notifier.call message
       end
     end
   end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rspec/support.rb new/lib/rspec/support.rb
--- old/lib/rspec/support.rb    2015-06-12 17:05:41.000000000 +0200
+++ new/lib/rspec/support.rb    2015-11-20 17:49:33.000000000 +0100
@@ -51,7 +51,7 @@
           handle = object.method(method_name)
           raise original unless handle.is_a? Method
           handle
-        rescue Exception
+        rescue Support::AllExceptionsExceptOnesWeMustNotRescue
           raise original
         end
       end
@@ -67,7 +67,7 @@
           handle = object.method(method_name)
           raise original unless handle.is_a? Method
           handle
-        rescue Exception
+        rescue Support::AllExceptionsExceptOnesWeMustNotRescue
           raise original
         end
       end
@@ -78,6 +78,7 @@
       Thread.current[:__rspec] ||= {}
     end
 
+    # @api private
     def self.failure_notifier=(callable)
       thread_local_data[:failure_notifier] = callable
     end
@@ -85,14 +86,17 @@
     # @private
     DEFAULT_FAILURE_NOTIFIER = lambda { |failure, _opts| raise failure }
 
+    # @api private
     def self.failure_notifier
       thread_local_data[:failure_notifier] || DEFAULT_FAILURE_NOTIFIER
     end
 
+    # @api private
     def self.notify_failure(failure, options={})
       failure_notifier.call(failure, options)
     end
 
+    # @api private
     def self.with_failure_notifier(callable)
       orig_notifier = failure_notifier
       self.failure_notifier = callable
@@ -101,6 +105,30 @@
       self.failure_notifier = orig_notifier
     end
 
+    class << self
+      # @api private
+      attr_writer :warning_notifier
+    end
+
+    # @private
+    DEFAULT_WARNING_NOTIFIER = lambda { |warning| ::Kernel.warn warning }
+
+    # @api private
+    def self.warning_notifier
+      @warning_notifier ||= DEFAULT_WARNING_NOTIFIER
+    end
+
+    # @private
+    module AllExceptionsExceptOnesWeMustNotRescue
+      # These exceptions are dangerous to rescue as rescuing them
+      # would interfere with things we should not interfere with.
+      AVOID_RESCUING = [NoMemoryError, SignalException, Interrupt, SystemExit]
+
+      def self.===(exception)
+        AVOID_RESCUING.none? { |ar| ar === exception }
+      end
+    end
+
     # The Differ is only needed when a a spec fails with a diffable failure.
     # In the more common case of all specs passing or the only failures being
     # non-diffable, we can avoid the extra cost of loading the differ, 
diff-lcs,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/metadata new/metadata
--- old/metadata        2015-06-12 17:05:41.000000000 +0200
+++ new/metadata        2015-11-20 17:49:33.000000000 +0100
@@ -1,7 +1,7 @@
 --- !ruby/object:Gem::Specification
 name: rspec-support
 version: !ruby/object:Gem::Version
-  version: 3.3.0
+  version: 3.4.1
 platform: ruby
 authors:
 - David Chelimsky
@@ -48,7 +48,7 @@
   ZsVDj6a7lH3cNqtWXZxrb2wO38qV5AkYj8SQK7Hj3/Yui9myUX3crr+PdetazSqQ
   F3MdtaDehhjC
   -----END CERTIFICATE-----
-date: 2015-06-12 00:00:00.000000000 Z
+date: 2015-11-20 00:00:00.000000000 Z
 dependencies:
 - !ruby/object:Gem::Dependency
   name: bundler
@@ -78,6 +78,20 @@
     - - "~>"
       - !ruby/object:Gem::Version
         version: 10.0.0
+- !ruby/object:Gem::Dependency
+  name: thread_order
+  requirement: !ruby/object:Gem::Requirement
+    requirements:
+    - - "~>"
+      - !ruby/object:Gem::Version
+        version: 1.1.0
+  type: :development
+  prerelease: false
+  version_requirements: !ruby/object:Gem::Requirement
+    requirements:
+    - - "~>"
+      - !ruby/object:Gem::Version
+        version: 1.1.0
 description: Support utilities for RSpec gems
 email: rspec-us...@rubyforge.org
 executables: []
@@ -85,10 +99,11 @@
 extra_rdoc_files: []
 files:
 - Changelog.md
-- LICENSE.txt
+- LICENSE.md
 - README.md
 - lib/rspec/support.rb
 - lib/rspec/support/caller_filter.rb
+- lib/rspec/support/comparable_version.rb
 - lib/rspec/support/differ.rb
 - lib/rspec/support/directory_maker.rb
 - lib/rspec/support/encoded_string.rb
@@ -96,8 +111,10 @@
 - lib/rspec/support/hunk_generator.rb
 - lib/rspec/support/matcher_definition.rb
 - lib/rspec/support/method_signature_verifier.rb
+- lib/rspec/support/mutex.rb
 - lib/rspec/support/object_formatter.rb
 - lib/rspec/support/recursive_const_methods.rb
+- lib/rspec/support/reentrant_mutex.rb
 - lib/rspec/support/ruby_features.rb
 - lib/rspec/support/spec.rb
 - lib/rspec/support/spec/deprecation_helpers.rb
@@ -136,5 +153,5 @@
 rubygems_version: 2.2.2
 signing_key: 
 specification_version: 4
-summary: rspec-support-3.3.0
+summary: rspec-support-3.4.1
 test_files: []
Files old/metadata.gz.sig and new/metadata.gz.sig differ


Reply via email to