Hello community,

here is the log from the commit of package rubygem-rspec-support for 
openSUSE:Factory checked in at 2016-07-16 22:11:08
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
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-12-01 10:02:33.000000000 +0100
+++ 
/work/SRC/openSUSE:Factory/.rubygem-rspec-support.new/rubygem-rspec-support.changes
 2016-07-16 22:11:09.000000000 +0200
@@ -1,0 +2,43 @@
+Sat Jul  2 05:30:48 UTC 2016 - [email protected]
+
+- updated to version 3.5.0
+ see installed Changelog.md
+
+  ### 3.5.0 / 2016-07-01
+  [Full 
Changelog](http://github.com/rspec/rspec-support/compare/v3.5.0.beta4...v3.5.0)
+  
+  **No user facing changes since beat4**
+  
+  ### 3.5.0.beta4 / 2016-06-05
+  [Full 
Changelog](http://github.com/rspec/rspec-support/compare/v3.5.0.beta3...v3.5.0.beta4)
+  
+  Enhancements:
+  * Improve `MethodSignature` to better support keyword arguments. (#250, Rob 
Smith).
+  
+  ### 3.5.0.beta3 / 2016-04-02
+  [Full 
Changelog](http://github.com/rspec/rspec-support/compare/v3.5.0.beta2...v3.5.0.beta3)
+  
+  Bug Fixes:
+  
+  * Fix `EncodedString` to properly handle the behavior of `String#split`
+    on JRuby when the string contains invalid bytes. (Jon Rowe, #268)
+  * Fix `ObjectFormatter` so that formatting objects that don't respond to
+    `#inspect` (such as `BasicObject`) does not cause `NoMethodError`.
+    (Yuji Nakayama, #269)
+  * Fix `ObjectFormatter` so that formatting recursive array or hash does not
+    cause `SystemStackError`. (Yuji Nakayama, #270, #272)
+  
+  ### 3.5.0.beta2 / 2016-03-10
+  [Full 
Changelog](http://github.com/rspec/rspec-support/compare/v3.5.0.beta1...v3.5.0.beta2)
+  
+  No user-facing changes.
+  
+  ### 3.5.0.beta1 / 2016-02-06
+  [Full 
Changelog](http://github.com/rspec/rspec-support/compare/v3.4.1...v3.5.0.beta1)
+  
+  Enhancements:
+  
+  * Improve formatting of objects by allowing truncation to a pre-configured 
length.
+    (Liam M, #256)
+
+-------------------------------------------------------------------

Old:
----
  rspec-support-3.4.1.gem

New:
----
  rspec-support-3.5.0.gem

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

Other differences:
------------------
++++++ rubygem-rspec-support.spec ++++++
--- /var/tmp/diff_new_pack.NYTE6Y/_old  2016-07-16 22:11:11.000000000 +0200
+++ /var/tmp/diff_new_pack.NYTE6Y/_new  2016-07-16 22:11:11.000000000 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package rubygem-rspec-support
 #
-# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2016 SUSE LINUX 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-rspec-support
-Version:        3.4.1
+Version:        3.5.0
 Release:        0
 %define mod_name rspec-support
 %define mod_full_name %{mod_name}-%{version}

++++++ rspec-support-3.4.1.gem -> rspec-support-3.5.0.gem ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Changelog.md new/Changelog.md
--- old/Changelog.md    2015-11-20 17:49:33.000000000 +0100
+++ new/Changelog.md    2016-07-01 17:48:07.000000000 +0200
@@ -1,3 +1,40 @@
+### 3.5.0 / 2016-07-01
+[Full 
Changelog](http://github.com/rspec/rspec-support/compare/v3.5.0.beta4...v3.5.0)
+
+**No user facing changes since beat4**
+
+### 3.5.0.beta4 / 2016-06-05
+[Full 
Changelog](http://github.com/rspec/rspec-support/compare/v3.5.0.beta3...v3.5.0.beta4)
+
+Enhancements:
+* Improve `MethodSignature` to better support keyword arguments. (#250, Rob 
Smith).
+
+### 3.5.0.beta3 / 2016-04-02
+[Full 
Changelog](http://github.com/rspec/rspec-support/compare/v3.5.0.beta2...v3.5.0.beta3)
+
+Bug Fixes:
+
+* Fix `EncodedString` to properly handle the behavior of `String#split`
+  on JRuby when the string contains invalid bytes. (Jon Rowe, #268)
+* Fix `ObjectFormatter` so that formatting objects that don't respond to
+  `#inspect` (such as `BasicObject`) does not cause `NoMethodError`.
+  (Yuji Nakayama, #269)
+* Fix `ObjectFormatter` so that formatting recursive array or hash does not
+  cause `SystemStackError`. (Yuji Nakayama, #270, #272)
+
+### 3.5.0.beta2 / 2016-03-10
+[Full 
Changelog](http://github.com/rspec/rspec-support/compare/v3.5.0.beta1...v3.5.0.beta2)
+
+No user-facing changes.
+
+### 3.5.0.beta1 / 2016-02-06
+[Full 
Changelog](http://github.com/rspec/rspec-support/compare/v3.4.1...v3.5.0.beta1)
+
+Enhancements:
+
+* Improve formatting of objects by allowing truncation to a pre-configured 
length.
+  (Liam M, #256)
+
 ### 3.4.1 / 2015-11-20
 [Full Changelog](http://github.com/rspec/rspec-support/compare/v3.4.0...v3.4.1)
 
@@ -8,6 +45,10 @@
   it. This prevents rspec-core from trying to load and use ripper to
   extract failure snippets. (Aaron Stone, #251)
 
+Changes:
+
+* Remove `VersionChecker` in favor of `ComparableVersion`. (Yuji Nakayama, 
#266)
+
 ### 3.4.0 / 2015-11-11
 [Full Changelog](http://github.com/rspec/rspec-support/compare/v3.3.0...v3.4.0)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/README.md new/README.md
--- old/README.md       2015-11-20 17:49:33.000000000 +0100
+++ new/README.md       2016-07-01 17:48:07.000000000 +0200
@@ -33,8 +33,8 @@
 
 ## 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:
+Please submit a pull request or a github issue. 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/encoded_string.rb 
new/lib/rspec/support/encoded_string.rb
--- old/lib/rspec/support/encoded_string.rb     2015-11-20 17:49:33.000000000 
+0100
+++ new/lib/rspec/support/encoded_string.rb     2016-07-01 17:48:07.000000000 
+0200
@@ -47,8 +47,18 @@
         @string << matching_encoding(string)
       end
 
-      def split(regex_or_string)
-        @string.split(matching_encoding(regex_or_string))
+      if Ruby.jruby?
+        def split(regex_or_string)
+          @string.split(matching_encoding(regex_or_string))
+        rescue ArgumentError
+          # JRuby raises an ArgumentError when splitting a source string that
+          # contains invalid bytes.
+          remove_invalid_bytes(@string).split regex_or_string
+        end
+      else
+        def split(regex_or_string)
+          @string.split(matching_encoding(regex_or_string))
+        end
       end
 
       def to_s
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-11-20 
17:49:33.000000000 +0100
+++ new/lib/rspec/support/method_signature_verifier.rb  2016-07-01 
17:48:07.000000000 +0200
@@ -8,7 +8,7 @@
     # keyword args of a given method.
     #
     # @private
-    class MethodSignature
+    class MethodSignature # rubocop:disable ClassLength
       attr_reader :min_non_kw_args, :max_non_kw_args, :optional_kw_args, 
:required_kw_args
 
       def initialize(method)
@@ -26,9 +26,11 @@
         end
       end
 
-      def valid_non_kw_args?(positional_arg_count)
+      def valid_non_kw_args?(positional_arg_count, 
optional_max_arg_count=positional_arg_count)
+        return true if positional_arg_count.nil?
+
         min_non_kw_args <= positional_arg_count &&
-          positional_arg_count <= max_non_kw_args
+          optional_max_arg_count <= max_non_kw_args
       end
 
       if RubyFeatures.optional_and_splat_args_supported?
@@ -74,6 +76,14 @@
           @allows_any_kw_args || @allowed_kw_args.any?
         end
 
+        def arbitrary_kw_args?
+          @allows_any_kw_args
+        end
+
+        def unlimited_args?
+          @max_non_kw_args == INFINITY
+        end
+
         def classify_parameters
           optional_non_kw_args = @min_non_kw_args = 0
           @allows_any_kw_args = false
@@ -119,6 +129,14 @@
           false
         end
 
+        def arbitrary_kw_args?
+          false
+        end
+
+        def unlimited_args?
+          false
+        end
+
         def classify_parameters
           arity = @method.arity
           if arity < 0
@@ -153,6 +171,50 @@
       end
     end
 
+    # Encapsulates expectations about the number of arguments and
+    # allowed/required keyword args of a given method.
+    #
+    # @api private
+    class MethodSignatureExpectation
+      def initialize
+        @min_count = nil
+        @max_count = nil
+        @keywords  = []
+
+        @expect_unlimited_arguments = false
+        @expect_arbitrary_keywords  = false
+      end
+
+      attr_reader :min_count, :max_count, :keywords
+
+      attr_accessor :expect_unlimited_arguments, :expect_arbitrary_keywords
+
+      def max_count=(number)
+        raise ArgumentError, 'must be a non-negative integer or nil' \
+          unless number.nil? || (number.is_a?(Integer) && number >= 0)
+
+        @max_count = number
+      end
+
+      def min_count=(number)
+        raise ArgumentError, 'must be a non-negative integer or nil' \
+          unless number.nil? || (number.is_a?(Integer) && number >= 0)
+
+        @min_count = number
+      end
+
+      def empty?
+        @min_count.nil? &&
+          @keywords.to_a.empty? &&
+          !@expect_arbitrary_keywords &&
+          !@expect_unlimited_arguments
+      end
+
+      def keywords=(values)
+        @keywords = values.to_a || []
+      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.
@@ -175,17 +237,49 @@
     #
     # @api private
     class MethodSignatureVerifier
-      attr_reader :non_kw_args, :kw_args
+      attr_reader :non_kw_args, :kw_args, :min_non_kw_args, :max_non_kw_args
 
-      def initialize(signature, args)
+      def initialize(signature, args=[])
         @signature = signature
         @non_kw_args, @kw_args = split_args(*args)
+        @min_non_kw_args = @max_non_kw_args = @non_kw_args
+        @arbitrary_kw_args = @unlimited_args = false
+      end
+
+      def with_expectation(expectation) # rubocop:disable MethodLength
+        return self unless MethodSignatureExpectation === expectation
+
+        if expectation.empty?
+          @min_non_kw_args = @max_non_kw_args = @non_kw_args = nil
+          @kw_args     = []
+        else
+          @min_non_kw_args = @non_kw_args = expectation.min_count || 0
+          @max_non_kw_args                = expectation.max_count || 
@min_non_kw_args
+
+          if RubyFeatures.optional_and_splat_args_supported?
+            @unlimited_args = expectation.expect_unlimited_arguments
+          else
+            @unlimited_args = false
+          end
+
+          if RubyFeatures.kw_args_supported?
+            @kw_args           = expectation.keywords
+            @arbitrary_kw_args = expectation.expect_arbitrary_keywords
+          else
+            @kw_args           = []
+            @arbitrary_kw_args = false
+          end
+        end
+
+        self
       end
 
       def valid?
         missing_kw_args.empty? &&
           invalid_kw_args.empty? &&
-          valid_non_kw_args?
+          valid_non_kw_args? &&
+          arbitrary_kw_args? &&
+          unlimited_args?
       end
 
       def error_message
@@ -200,7 +294,7 @@
         elsif !valid_non_kw_args?
           "Wrong number of arguments. Expected %s, got %s." % [
             @signature.non_kw_args_arity_description,
-            non_kw_args.length
+            non_kw_args
           ]
         end
       end
@@ -208,7 +302,7 @@
     private
 
       def valid_non_kw_args?
-        @signature.valid_non_kw_args?(non_kw_args.length)
+        @signature.valid_non_kw_args?(min_non_kw_args, max_non_kw_args)
       end
 
       def missing_kw_args
@@ -219,6 +313,14 @@
         @signature.invalid_kw_args_from(kw_args)
       end
 
+      def arbitrary_kw_args?
+        !@arbitrary_kw_args || @signature.arbitrary_kw_args?
+      end
+
+      def unlimited_args?
+        !@unlimited_args || @signature.unlimited_args?
+      end
+
       def split_args(*args)
         kw_args = if @signature.has_kw_args_in?(args)
                     args.pop.keys
@@ -226,7 +328,7 @@
                     []
                   end
 
-        [args, kw_args]
+        [args.length, kw_args]
       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-11-20 17:49:33.000000000 
+0100
+++ new/lib/rspec/support/object_formatter.rb   2016-07-01 17:48:07.000000000 
+0200
@@ -1,16 +1,49 @@
+RSpec::Support.require_rspec_support 'matcher_definition'
+
 module RSpec
   module Support
     # Provide additional output details beyond what `inspect` provides when
     # printing Time, DateTime, or BigDecimal
-    module ObjectFormatter
-      # @api private
+    # @api private
+    class ObjectFormatter # rubocop:disable Style/ClassLength
+      ELLIPSIS = "..."
+
+      attr_accessor :max_formatted_output_length
+
+      # Methods are deferred to a default instance of the class to maintain 
the interface
+      # For example, calling ObjectFormatter.format is still possible
+      def self.default_instance
+        @default_instance ||= new
+      end
+
       def self.format(object)
-        prepare_for_inspection(object).inspect
+        default_instance.format(object)
+      end
+
+      def self.prepare_for_inspection(object)
+        default_instance.prepare_for_inspection(object)
+      end
+
+      def initialize(max_formatted_output_length=200)
+        @max_formatted_output_length = max_formatted_output_length
+        @current_structure_stack = []
       end
 
-      # rubocop:disable MethodLength
+      def format(object)
+        if max_formatted_output_length.nil?
+          return prepare_for_inspection(object).inspect
+        else
+          formatted_object = prepare_for_inspection(object).inspect
+          if formatted_object.length < max_formatted_output_length
+            return formatted_object
+          else
+            beginning = formatted_object[0 .. max_formatted_output_length / 2]
+            ending = formatted_object[-max_formatted_output_length / 2 ..-1]
+            return beginning + ELLIPSIS + ending
+          end
+        end
+      end
 
-      # @private
       # Prepares the provided object to be formatted by wrapping it as needed
       # in something that, when `inspect` is called on it, will produce the
       # desired output.
@@ -20,89 +53,197 @@
       # with custom items that have `inspect` defined to return the desired 
output
       # for that item. Then we can just use `Array#inspect` or `Hash#inspect` 
to
       # format the entire thing.
-      def self.prepare_for_inspection(object)
+      def prepare_for_inspection(object)
         case object
         when Array
-          return object.map { |o| prepare_for_inspection(o) }
+          prepare_array(object)
         when Hash
-          return prepare_hash(object)
-        when Time
-          inspection = format_time(object)
+          prepare_hash(object)
         else
-          if defined?(DateTime) && DateTime === object
-            inspection = format_date_time(object)
-          elsif defined?(BigDecimal) && BigDecimal === object
-            inspection = "#{object.to_s 'F'} (#{object.inspect})"
-          elsif RSpec::Support.is_a_matcher?(object) && 
object.respond_to?(:description)
-            inspection = object.description
-          else
-            return DelegatingInspector.new(object)
-          end
+          inspector_class = INSPECTOR_CLASSES.find { |inspector| 
inspector.can_inspect?(object) }
+          inspector_class.new(object, self)
         end
+      end
 
-        InspectableItem.new(inspection)
+      def prepare_array(array)
+        with_entering_structure(array) do
+          array.map { |element| prepare_element(element) }
+        end
       end
-      # rubocop:enable MethodLength
 
-      # @private
-      def self.prepare_hash(input)
-        input.inject({}) do |hash, (k, v)|
-          hash[prepare_for_inspection(k)] = prepare_for_inspection(v)
-          hash
+      def prepare_hash(input_hash)
+        with_entering_structure(input_hash) do
+          input_hash.inject({}) do |output_hash, key_and_value|
+            key, value = key_and_value.map { |element| 
prepare_element(element) }
+            output_hash[key] = value
+            output_hash
+          end
         end
       end
 
-      TIME_FORMAT = "%Y-%m-%d %H:%M:%S"
+      def prepare_element(element)
+        if recursive_structure?(element)
+          case element
+          when Array then InspectableItem.new('[...]')
+          when Hash then InspectableItem.new('{...}')
+          else raise # This won't happen
+          end
+        else
+          prepare_for_inspection(element)
+        end
+      end
+
+      def with_entering_structure(structure)
+        @current_structure_stack.push(structure)
+        return_value = yield
+        @current_structure_stack.pop
+        return_value
+      end
 
-      if Time.method_defined?(:nsec)
-        # @private
-        def self.format_time(time)
-          time.strftime("#{TIME_FORMAT}.#{"%09d" % time.nsec} %z")
+      def recursive_structure?(object)
+        @current_structure_stack.any? { |seen_structure| 
seen_structure.equal?(object) }
+      end
+
+      InspectableItem = Struct.new(:text) do
+        def inspect
+          text
         end
-      else # for 1.8.7
-        # @private
-        def self.format_time(time)
-          time.strftime("#{TIME_FORMAT}.#{"%06d" % time.usec} %z")
+
+        def pretty_print(pp)
+          pp.text(text)
         end
       end
 
-      DATE_TIME_FORMAT = "%a, %d %b %Y %H:%M:%S.%N %z"
-      # ActiveSupport sometimes overrides inspect. If `ActiveSupport` is
-      # defined use a custom format string that includes more time precision.
-      # @private
-      def self.format_date_time(date_time)
-        if defined?(ActiveSupport)
-          date_time.strftime(DATE_TIME_FORMAT)
-        else
-          date_time.inspect
+      BaseInspector = Struct.new(:object, :formatter) do
+        def self.can_inspect?(_object)
+          raise NotImplementedError
         end
-      end
 
-      # @private
-      InspectableItem = Struct.new(:inspection) do
         def inspect
-          inspection
+          raise NotImplementedError
         end
 
         def pretty_print(pp)
-          pp.text inspection
+          pp.text(inspect)
+        end
+      end
+
+      class TimeInspector < BaseInspector
+        FORMAT = "%Y-%m-%d %H:%M:%S"
+
+        def self.can_inspect?(object)
+          Time === object
+        end
+
+        if Time.method_defined?(:nsec)
+          def inspect
+            object.strftime("#{FORMAT}.#{"%09d" % object.nsec} %z")
+          end
+        else # for 1.8.7
+          def inspect
+            object.strftime("#{FORMAT}.#{"%06d" % object.usec} %z")
+          end
         end
       end
 
-      # @private
-      DelegatingInspector = Struct.new(:object) do
+      class DateTimeInspector < BaseInspector
+        FORMAT = "%a, %d %b %Y %H:%M:%S.%N %z"
+
+        def self.can_inspect?(object)
+          defined?(DateTime) && DateTime === object
+        end
+
+        # ActiveSupport sometimes overrides inspect. If `ActiveSupport` is
+        # defined use a custom format string that includes more time precision.
         def inspect
-          if defined?(::Delegator) && ::Delegator === object
-            "#<#{object.class}(#{ObjectFormatter.format(object.__getobj__)})>"
+          if defined?(ActiveSupport)
+            object.strftime(FORMAT)
           else
             object.inspect
           end
         end
+      end
+
+      class BigDecimalInspector < BaseInspector
+        def self.can_inspect?(object)
+          defined?(BigDecimal) && BigDecimal === object
+        end
 
-        def pretty_print(pp)
-          pp.text inspect
+        def inspect
+          "#{object.to_s('F')} (#{object.inspect})"
+        end
+      end
+
+      class DescribableMatcherInspector < BaseInspector
+        def self.can_inspect?(object)
+          Support.is_a_matcher?(object) && object.respond_to?(:description)
+        end
+
+        def inspect
+          object.description
         end
       end
+
+      class UninspectableObjectInspector < BaseInspector
+        OBJECT_ID_FORMAT = '%#016x'
+
+        def self.can_inspect?(object)
+          object.inspect
+          false
+        rescue NoMethodError
+          true
+        end
+
+        def inspect
+          "#<#{klass}:#{native_object_id}>"
+        end
+
+        def klass
+          singleton_class = class << object; self; end
+          singleton_class.ancestors.find { |ancestor| 
!ancestor.equal?(singleton_class) }
+        end
+
+        # http://stackoverflow.com/a/2818916
+        def native_object_id
+          OBJECT_ID_FORMAT % (object.__id__ << 1)
+        rescue NoMethodError
+          # In Ruby 1.9.2, BasicObject responds to none of #__id__, 
#object_id, #id...
+          '-'
+        end
+      end
+
+      class DelegatorInspector < BaseInspector
+        def self.can_inspect?(object)
+          defined?(Delegator) && Delegator === object
+        end
+
+        def inspect
+          "#<#{object.class}(#{formatter.format(object.__getobj__)})>"
+        end
+      end
+
+      class InspectableObjectInspector < BaseInspector
+        def self.can_inspect?(object)
+          object.inspect
+          true
+        rescue NoMethodError
+          false
+        end
+
+        def inspect
+          object.inspect
+        end
+      end
+
+      INSPECTOR_CLASSES = [
+        TimeInspector,
+        DateTimeInspector,
+        BigDecimalInspector,
+        UninspectableObjectInspector,
+        DescribableMatcherInspector,
+        DelegatorInspector,
+        InspectableObjectInspector
+      ]
     end
   end
 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-11-20 
17:49:33.000000000 +0100
+++ new/lib/rspec/support/spec/library_wide_checks.rb   2016-07-01 
17:48:07.000000000 +0200
@@ -68,9 +68,7 @@
       run_ruby_with_current_load_path(command, *options)
     end
 
-    # Ignore bundler warning.
-    stderr = stderr.split("\n").reject { |l| l =~ %r{bundler/source/rubygems} 
}.join("\n")
-    [stdout, stderr, status.exitstatus]
+    [stdout, strip_known_warnings(stderr), status.exitstatus]
   end
 
   define_method :load_all_lib_files do
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rspec/support/spec/shell_out.rb 
new/lib/rspec/support/spec/shell_out.rb
--- old/lib/rspec/support/spec/shell_out.rb     2015-11-20 17:49:33.000000000 
+0100
+++ new/lib/rspec/support/spec/shell_out.rb     2016-07-01 17:48:07.000000000 
+0200
@@ -53,6 +53,17 @@
         end
       end
 
+      def strip_known_warnings(input)
+        input.split("\n").reject do |l|
+          # Ignore bundler warning.
+          l =~ %r{bundler/source/rubygems} ||
+          # Ignore bundler + rubygems warning.
+          l =~ %r{site_ruby/\d\.\d\.\d/rubygems} ||
+          # This is required for windows for some reason
+          l =~ %r{lib/bundler/rubygems}
+        end.join("\n")
+      end
+
     private
 
       if Ruby.jruby?
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rspec/support/spec/with_isolated_directory.rb 
new/lib/rspec/support/spec/with_isolated_directory.rb
--- old/lib/rspec/support/spec/with_isolated_directory.rb       2015-11-20 
17:49:33.000000000 +0100
+++ new/lib/rspec/support/spec/with_isolated_directory.rb       2016-07-01 
17:48:07.000000000 +0200
@@ -1,9 +1,13 @@
 require 'tmpdir'
 
-RSpec.shared_context "isolated directory", :isolated_directory => true do
+RSpec.shared_context "isolated directory" do
   around do |ex|
     Dir.mktmpdir do |tmp_dir|
       Dir.chdir(tmp_dir, &ex)
     end
   end
 end
+
+RSpec.configure do |c|
+  c.include_context "isolated directory", :isolated_directory => true
+end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rspec/support/spec.rb 
new/lib/rspec/support/spec.rb
--- old/lib/rspec/support/spec.rb       2015-11-20 17:49:33.000000000 +0100
+++ new/lib/rspec/support/spec.rb       2016-07-01 17:48:07.000000000 +0200
@@ -31,8 +31,8 @@
     c.default_formatter = 'doc'
   end
 
-  c.filter_run :focus
-  c.run_all_when_everything_filtered = true
+  c.filter_run_when_matching :focus
+
   c.example_status_persistence_file_path = "./spec/examples.txt"
 
   c.define_derived_metadata :failing_on_appveyor do |meta|
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-11-20 17:49:33.000000000 +0100
+++ new/lib/rspec/support/version.rb    2016-07-01 17:48:07.000000000 +0200
@@ -1,7 +1,7 @@
 module RSpec
   module Support
     module Version
-      STRING = '3.4.1'
+      STRING = '3.5.0'
     end
   end
 end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rspec/support/version_checker.rb 
new/lib/rspec/support/version_checker.rb
--- old/lib/rspec/support/version_checker.rb    2015-11-20 17:49:33.000000000 
+0100
+++ new/lib/rspec/support/version_checker.rb    1970-01-01 01:00:00.000000000 
+0100
@@ -1,53 +0,0 @@
-module RSpec
-  module Support
-    LibraryVersionTooLowError = Class.new(StandardError)
-
-    # @private
-    class VersionChecker
-      def initialize(library_name, library_version, min_patch_level)
-        @library_name, @library_version = library_name, library_version
-        @min_patch_level = min_patch_level
-
-        @major,     @minor,     @patch     = parse_version(library_version)
-        @min_major, @min_minor, @min_patch = parse_version(min_patch_level)
-
-        @comparison_result = compare_version
-      end
-
-      def check_version!
-        raise_too_low_error if too_low?
-      end
-
-    private
-
-      def too_low?
-        @comparison_result == :too_low
-      end
-
-      def raise_too_low_error
-        raise LibraryVersionTooLowError,
-              "You are using #{@library_name} #{@library_version}. " \
-              "RSpec requires version #{version_requirement}."
-      end
-
-      def compare_version
-        case
-        when @major < @min_major then :too_low
-        when @major > @min_major then :ok
-        when @minor < @min_minor then :too_low
-        when @minor > @min_minor then :ok
-        when @patch < @min_patch then :too_low
-        else :ok
-        end
-      end
-
-      def version_requirement
-        ">= #{@min_patch_level}"
-      end
-
-      def parse_version(version)
-        version.split('.').map { |v| v.to_i }
-      end
-    end
-  end
-end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/metadata new/metadata
--- old/metadata        2015-11-20 17:49:33.000000000 +0100
+++ new/metadata        2016-07-01 17:48:07.000000000 +0200
@@ -1,7 +1,7 @@
 --- !ruby/object:Gem::Specification
 name: rspec-support
 version: !ruby/object:Gem::Version
-  version: 3.4.1
+  version: 3.5.0
 platform: ruby
 authors:
 - David Chelimsky
@@ -48,7 +48,7 @@
   ZsVDj6a7lH3cNqtWXZxrb2wO38qV5AkYj8SQK7Hj3/Yui9myUX3crr+PdetazSqQ
   F3MdtaDehhjC
   -----END CERTIFICATE-----
-date: 2015-11-20 00:00:00.000000000 Z
+date: 2016-07-01 00:00:00.000000000 Z
 dependencies:
 - !ruby/object:Gem::Dependency
   name: bundler
@@ -127,7 +127,6 @@
 - lib/rspec/support/spec/with_isolated_directory.rb
 - lib/rspec/support/spec/with_isolated_stderr.rb
 - lib/rspec/support/version.rb
-- lib/rspec/support/version_checker.rb
 - lib/rspec/support/warnings.rb
 homepage: https://github.com/rspec/rspec-support
 licenses:
@@ -150,8 +149,8 @@
       version: '0'
 requirements: []
 rubyforge_project: 
-rubygems_version: 2.2.2
+rubygems_version: 2.5.1
 signing_key: 
 specification_version: 4
-summary: rspec-support-3.4.1
+summary: rspec-support-3.5.0
 test_files: []
Files old/metadata.gz.sig and new/metadata.gz.sig differ


Reply via email to