Hello community,

here is the log from the commit of package rubygem-sass for openSUSE:Factory 
checked in at 2017-06-08 15:01:16
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rubygem-sass (Old)
 and      /work/SRC/openSUSE:Factory/.rubygem-sass.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "rubygem-sass"

Thu Jun  8 15:01:16 2017 rev:42 rq:497694 version:3.4.24

Changes:
--------
--- /work/SRC/openSUSE:Factory/rubygem-sass/rubygem-sass.changes        
2016-12-29 22:45:57.666721300 +0100
+++ /work/SRC/openSUSE:Factory/.rubygem-sass.new/rubygem-sass.changes   
2017-06-08 15:01:17.377532897 +0200
@@ -1,0 +2,6 @@
+Tue May 23 10:19:24 UTC 2017 - [email protected]
+
+- updated to version 3.4.24
+ see installed CHANGELOG.md
+
+-------------------------------------------------------------------

Old:
----
  sass-3.4.23.gem

New:
----
  sass-3.4.24.gem

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

Other differences:
------------------
++++++ rubygem-sass.spec ++++++
--- /var/tmp/diff_new_pack.2plO17/_old  2017-06-08 15:01:18.077434120 +0200
+++ /var/tmp/diff_new_pack.2plO17/_new  2017-06-08 15:01:18.081433555 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package rubygem-sass
 #
-# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 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-sass
-Version:        3.4.23
+Version:        3.4.24
 Release:        0
 %define mod_name sass
 %define mod_full_name %{mod_name}-%{version}

++++++ sass-3.4.23.gem -> sass-3.4.24.gem ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/.yardopts new/.yardopts
--- old/.yardopts       2016-12-20 00:15:44.000000000 +0100
+++ new/.yardopts       2017-05-19 02:01:42.000000000 +0200
@@ -1,6 +1,6 @@
 --readme          README.md
 --markup          markdown
---markup-provider maruku
+--markup-provider redcarpet
 --default-return  ""
 --title           "Sass Documentation"
 --query           'object.type != :classvariable'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/VERSION new/VERSION
--- old/VERSION 2016-12-20 00:15:44.000000000 +0100
+++ new/VERSION 2017-05-19 02:01:42.000000000 +0200
@@ -1 +1 @@
-3.4.23
+3.4.24
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/VERSION_DATE new/VERSION_DATE
--- old/VERSION_DATE    2016-12-20 00:15:44.000000000 +0100
+++ new/VERSION_DATE    2017-05-19 02:01:42.000000000 +0200
@@ -1 +1 @@
-19 December 2016 23:15:42 UTC
+19 May 2017 00:01:41 UTC
Binary files old/checksums.yaml.gz and new/checksums.yaml.gz differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/sass/engine.rb new/lib/sass/engine.rb
--- old/lib/sass/engine.rb      2016-12-20 00:15:44.000000000 +0100
+++ new/lib/sass/engine.rb      2017-05-19 02:01:42.000000000 +0200
@@ -94,13 +94,13 @@
     # `text`: `String`
     # : The text in the line, without any whitespace at the beginning or end.
     #
-    # `tabs`: `Fixnum`
+    # `tabs`: `Integer`
     # : The level of indentation of the line.
     #
-    # `index`: `Fixnum`
+    # `index`: `Integer`
     # : The line number in the original document.
     #
-    # `offset`: `Fixnum`
+    # `offset`: `Integer`
     # : The number of bytes in on the line that the text begins.
     #   This ends up being the number of bytes of leading whitespace.
     #
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/sass/error.rb new/lib/sass/error.rb
--- old/lib/sass/error.rb       2016-12-20 00:15:44.000000000 +0100
+++ new/lib/sass/error.rb       2017-05-19 02:01:42.000000000 +0200
@@ -69,14 +69,14 @@
     # The name of the mixin in which the error occurred.
     # This could be `nil` if the error occurred outside a mixin.
     #
-    # @return [Fixnum]
+    # @return [String]
     def sass_mixin
       sass_backtrace.first[:mixin]
     end
 
     # The line of the Sass template on which the error occurred.
     #
-    # @return [Fixnum]
+    # @return [Integer]
     def sass_line
       sass_backtrace.first[:line]
     end
@@ -153,7 +153,7 @@
       # Returns an error report for an exception in CSS format.
       #
       # @param e [Exception]
-      # @param line_offset [Fixnum] The number of the first line of the Sass 
template.
+      # @param line_offset [Integer] The number of the first line of the Sass 
template.
       # @return [String] The error report
       # @raise [Exception] `e`, if the
       #   {file:SASS_REFERENCE.md#full_exception-option `:full_exception`} 
option
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/sass/plugin/rack.rb new/lib/sass/plugin/rack.rb
--- old/lib/sass/plugin/rack.rb 2016-12-20 00:15:44.000000000 +0100
+++ new/lib/sass/plugin/rack.rb 2017-05-19 02:01:42.000000000 +0200
@@ -9,7 +9,7 @@
     #
     # ## Customize
     #
-    #     Sass::Plugin.options.merge(
+    #     Sass::Plugin.options.merge!(
     #       :cache_location => './tmp/sass-cache',
     #       :never_update => environment != :production,
     #       :full_exception => environment != :production)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/sass/plugin/staleness_checker.rb 
new/lib/sass/plugin/staleness_checker.rb
--- old/lib/sass/plugin/staleness_checker.rb    2016-12-20 00:15:44.000000000 
+0100
+++ new/lib/sass/plugin/staleness_checker.rb    2017-05-19 02:01:42.000000000 
+0200
@@ -72,7 +72,7 @@
       # Returns whether a Sass or SCSS stylesheet has been modified since a 
given time.
       #
       # @param template_file [String] The location of the Sass or SCSS 
template.
-      # @param mtime [Fixnum] The modification time to check against.
+      # @param mtime [Time] The modification time to check against.
       # @param importer [Sass::Importers::Base] The importer used to locate 
the stylesheet.
       #   Defaults to the filesystem importer.
       # @return [Boolean] Whether the stylesheet has been modified.
@@ -103,7 +103,7 @@
       # so it's better to use when checking multiple stylesheets at once.
       #
       # @param template_file [String] The location of the Sass or SCSS 
template.
-      # @param mtime [Fixnum] The modification time to check against.
+      # @param mtime [Time] The modification time to check against.
       # @param importer [Sass::Importers::Base] The importer used to locate 
the stylesheet.
       #   Defaults to the filesystem importer.
       # @return [Boolean] Whether the stylesheet has been modified.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/sass/script/functions.rb 
new/lib/sass/script/functions.rb
--- old/lib/sass/script/functions.rb    2016-12-20 00:15:44.000000000 +0100
+++ new/lib/sass/script/functions.rb    2017-05-19 02:01:42.000000000 +0200
@@ -431,8 +431,8 @@
     # If no signatures match, the first signature is returned for error 
messaging.
     #
     # @param method_name [Symbol] The name of the Ruby function to be called.
-    # @param arg_arity [Fixnum] The number of unnamed arguments the function 
was passed.
-    # @param kwarg_arity [Fixnum] The number of keyword arguments the function 
was passed.
+    # @param arg_arity [Integer] The number of unnamed arguments the function 
was passed.
+    # @param kwarg_arity [Integer] The number of keyword arguments the 
function was passed.
     #
     # @return [{Symbol => Object}, nil]
     #   The signature options for the matching signature,
@@ -1583,7 +1583,7 @@
     # @raise [ArgumentError] if `$string` isn't a string
     def to_upper_case(string)
       assert_type string, :String, :string
-      Sass::Script::Value::String.new(string.value.upcase, string.type)
+      Sass::Script::Value::String.new(Sass::Util.upcase(string.value), 
string.type)
     end
     declare :to_upper_case, [:string]
 
@@ -1598,7 +1598,7 @@
     # @raise [ArgumentError] if `$string` isn't a string
     def to_lower_case(string)
       assert_type string, :String, :string
-      Sass::Script::Value::String.new(string.value.downcase, string.type)
+      Sass::Script::Value::String.new(Sass::Util.downcase(string.value), 
string.type)
     end
     declare :to_lower_case, [:string]
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/sass/script/lexer.rb new/lib/sass/script/lexer.rb
--- old/lib/sass/script/lexer.rb        2016-12-20 00:15:44.000000000 +0100
+++ new/lib/sass/script/lexer.rb        2017-05-19 02:01:42.000000000 +0200
@@ -19,13 +19,13 @@
       # `source_range`: \[`Sass::Source::Range`\]
       # : The range in the source file in which the token appeared.
       #
-      # `pos`: \[`Fixnum`\]
+      # `pos`: \[`Integer`\]
       # : The scanner position at which the SassScript token appeared.
       Token = Struct.new(:type, :value, :source_range, :pos)
 
       # The line number of the lexer's current position.
       #
-      # @return [Fixnum]
+      # @return [Integer]
       def line
         return @line unless @tok
         @tok.source_range.start_pos.line
@@ -34,7 +34,7 @@
       # The number of bytes into the current line
       # of the lexer's current position (1-based).
       #
-      # @return [Fixnum]
+      # @return [Integer]
       def offset
         return @offset unless @tok
         @tok.source_range.start_pos.offset
@@ -142,9 +142,9 @@
       }
 
       # @param str [String, StringScanner] The source text to lex
-      # @param line [Fixnum] The 1-based line on which the SassScript appears.
+      # @param line [Integer] The 1-based line on which the SassScript appears.
       #   Used for error reporting and sourcemap building
-      # @param offset [Fixnum] The 1-based character (not byte) offset in the 
line in the source.
+      # @param offset [Integer] The 1-based character (not byte) offset in the 
line in the source.
       #   Used for error reporting and sourcemap building
       # @param options [{Symbol => Object}] An options hash;
       #   see {file:SASS_REFERENCE.md#sass_options the Sass options 
documentation}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/sass/script/parser.rb 
new/lib/sass/script/parser.rb
--- old/lib/sass/script/parser.rb       2016-12-20 00:15:44.000000000 +0100
+++ new/lib/sass/script/parser.rb       2017-05-19 02:01:42.000000000 +0200
@@ -8,22 +8,22 @@
     class Parser
       # The line number of the parser's current position.
       #
-      # @return [Fixnum]
+      # @return [Integer]
       def line
         @lexer.line
       end
 
       # The column number of the parser's current position.
       #
-      # @return [Fixnum]
+      # @return [Integer]
       def offset
         @lexer.offset
       end
 
       # @param str [String, StringScanner] The source text to parse
-      # @param line [Fixnum] The line on which the SassScript appears.
+      # @param line [Integer] The line on which the SassScript appears.
       #   Used for error reporting and sourcemap building
-      # @param offset [Fixnum] The character (not byte) offset where the 
script starts in the line.
+      # @param offset [Integer] The character (not byte) offset where the 
script starts in the line.
       #   Used for error reporting and sourcemap building
       # @param options [{Symbol => Object}] An options hash; see
       #   {file:SASS_REFERENCE.md#sass_options the Sass options documentation}.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/sass/script/tree/node.rb 
new/lib/sass/script/tree/node.rb
--- old/lib/sass/script/tree/node.rb    2016-12-20 00:15:44.000000000 +0100
+++ new/lib/sass/script/tree/node.rb    2017-05-19 02:01:42.000000000 +0200
@@ -10,7 +10,7 @@
 
     # The line of the document on which this node appeared.
     #
-    # @return [Fixnum]
+    # @return [Integer]
     attr_accessor :line
 
     # The source range in the document on which this node appeared.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/sass/script/value/base.rb 
new/lib/sass/script/value/base.rb
--- old/lib/sass/script/value/base.rb   2016-12-20 00:15:44.000000000 +0100
+++ new/lib/sass/script/value/base.rb   2017-05-19 02:01:42.000000000 +0200
@@ -149,7 +149,7 @@
     # Returns the hash code of this value. Two objects' hash codes should be
     # equal if the objects are equal.
     #
-    # @return [Fixnum] The hash code.
+    # @return [Integer for Ruby 2.4.0+, Fixnum for earlier Ruby versions] The 
hash code.
     def hash
       value.hash
     end
@@ -176,7 +176,7 @@
       eq(other).to_bool
     end
 
-    # @return [Fixnum] The integer value of this value
+    # @return [Integer] The integer value of this value
     # @raise [Sass::SyntaxError] if this value isn't an integer
     def to_i
       raise Sass::SyntaxError.new("#{inspect} is not an integer.")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/sass/script/value/color.rb 
new/lib/sass/script/value/color.rb
--- old/lib/sass/script/value/color.rb  2016-12-20 00:15:44.000000000 +0100
+++ new/lib/sass/script/value/color.rb  2017-05-19 02:01:42.000000000 +0200
@@ -17,8 +17,8 @@
     # @private
     #
     # Convert a ruby integer to a rgba components
-    # @param color [Fixnum]
-    # @return [Array<Fixnum>] Array of 4 numbers representing r,g,b and alpha
+    # @param color [Integer]
+    # @return [Array<Integer>] Array of 4 numbers representing r,g,b and alpha
     def self.int_to_rgba(color)
       rgba = (0..3).map {|n| color >> (n << 3) & 0xff}.reverse
       rgba[-1] = rgba[-1] / 255.0
@@ -293,7 +293,7 @@
 
     # The red component of the color.
     #
-    # @return [Fixnum]
+    # @return [Integer]
     def red
       hsl_to_rgb!
       @attrs[:red]
@@ -301,7 +301,7 @@
 
     # The green component of the color.
     #
-    # @return [Fixnum]
+    # @return [Integer]
     def green
       hsl_to_rgb!
       @attrs[:green]
@@ -309,7 +309,7 @@
 
     # The blue component of the color.
     #
-    # @return [Fixnum]
+    # @return [Integer]
     def blue
       hsl_to_rgb!
       @attrs[:blue]
@@ -342,7 +342,7 @@
     # The alpha channel (opacity) of the color.
     # This is 1 unless otherwise defined.
     #
-    # @return [Fixnum]
+    # @return [Integer]
     def alpha
       @attrs[:alpha].to_f
     end
@@ -357,7 +357,7 @@
 
     # Returns the red, green, and blue components of the color.
     #
-    # @return [Array<Fixnum>] A frozen three-element array of the red, green, 
and blue
+    # @return [Array<Integer>] A frozen three-element array of the red, green, 
and blue
     #   values (respectively) of the color
     def rgb
       [red, green, blue].freeze
@@ -365,7 +365,7 @@
 
     # Returns the red, green, blue, and alpha components of the color.
     #
-    # @return [Array<Fixnum>] A frozen four-element array of the red, green,
+    # @return [Array<Integer>] A frozen four-element array of the red, green,
     #   blue, and alpha values (respectively) of the color
     def rgba
       [red, green, blue, alpha].freeze
@@ -373,7 +373,7 @@
 
     # Returns the hue, saturation, and lightness components of the color.
     #
-    # @return [Array<Fixnum>] A frozen three-element array of the
+    # @return [Array<Integer>] A frozen three-element array of the
     #   hue, saturation, and lightness values (respectively) of the color
     def hsl
       [hue, saturation, lightness].freeze
@@ -381,7 +381,7 @@
 
     # Returns the hue, saturation, lightness, and alpha components of the 
color.
     #
-    # @return [Array<Fixnum>] A frozen four-element array of the hue,
+    # @return [Array<Integer>] A frozen four-element array of the hue,
     #   saturation, lightness, and alpha values (respectively) of the color
     def hsla
       [hue, saturation, lightness, alpha].freeze
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/sass/script/value/number.rb 
new/lib/sass/script/value/number.rb
--- old/lib/sass/script/value/number.rb 2016-12-20 00:15:44.000000000 +0100
+++ new/lib/sass/script/value/number.rb 2017-05-19 02:01:42.000000000 +0200
@@ -306,7 +306,7 @@
     end
     alias_method :to_sass, :inspect
 
-    # @return [Fixnum] The integer value of the number
+    # @return [Integer] The integer value of the number
     # @raise [Sass::SyntaxError] if the number isn't an integer
     def to_i
       super unless int?
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/sass/script.rb new/lib/sass/script.rb
--- old/lib/sass/script.rb      2016-12-20 00:15:44.000000000 +0100
+++ new/lib/sass/script.rb      2017-05-19 02:01:42.000000000 +0200
@@ -16,9 +16,9 @@
     # Parses a string of SassScript
     #
     # @param value [String] The SassScript
-    # @param line [Fixnum] The number of the line on which the SassScript 
appeared.
+    # @param line [Integer] The number of the line on which the SassScript 
appeared.
     #   Used for error reporting
-    # @param offset [Fixnum] The number of characters in on `line` that the 
SassScript started.
+    # @param offset [Integer] The number of characters in on `line` that the 
SassScript started.
     #   Used for error reporting
     # @param options [{Symbol => Object}] An options hash;
     #   see {file:SASS_REFERENCE.md#sass_options the Sass options 
documentation}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/sass/scss/parser.rb new/lib/sass/scss/parser.rb
--- old/lib/sass/scss/parser.rb 2016-12-20 00:15:44.000000000 +0100
+++ new/lib/sass/scss/parser.rb 2017-05-19 02:01:42.000000000 +0200
@@ -16,9 +16,9 @@
       #   warnings and source maps.
       # @param importer [Sass::Importers::Base] The importer used to import the
       #   file being parsed. Used for source maps.
-      # @param line [Fixnum] The 1-based line on which the source string 
appeared,
+      # @param line [Integer] The 1-based line on which the source string 
appeared,
       #   if it's part of another document.
-      # @param offset [Fixnum] The 1-based character (not byte) offset in the 
line on
+      # @param offset [Integer] The 1-based character (not byte) offset in the 
line on
       #   which the source string starts. Used for error reporting and 
sourcemap
       #   building.
       def initialize(str, filename, importer, line = 1, offset = 1)
@@ -1022,7 +1022,7 @@
       end
 
       def str
-        @strs.push ""
+        @strs.push String.new("")
         yield
         @strs.last
       ensure
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/sass/scss/rx.rb new/lib/sass/scss/rx.rb
--- old/lib/sass/scss/rx.rb     2016-12-20 00:15:44.000000000 +0100
+++ new/lib/sass/scss/rx.rb     2017-05-19 02:01:42.000000000 +0200
@@ -40,7 +40,7 @@
       # escaping all significant characters.
       #
       # @param str [String] The text of the regexp
-      # @param flags [Fixnum] Flags for the created regular expression
+      # @param flags [Integer] Flags for the created regular expression
       # @return [Regexp]
       # @private
       def self.quote(str, flags = 0)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/sass/selector/abstract_sequence.rb 
new/lib/sass/selector/abstract_sequence.rb
--- old/lib/sass/selector/abstract_sequence.rb  2016-12-20 00:15:44.000000000 
+0100
+++ new/lib/sass/selector/abstract_sequence.rb  2017-05-19 02:01:42.000000000 
+0200
@@ -8,7 +8,7 @@
     class AbstractSequence
       # The line of the Sass template on which this selector was declared.
       #
-      # @return [Fixnum]
+      # @return [Integer]
       attr_reader :line
 
       # The name of the file in which this selector was declared.
@@ -19,8 +19,8 @@
       # Sets the line of the Sass template on which this selector was declared.
       # This also sets the line for all child selectors.
       #
-      # @param line [Fixnum]
-      # @return [Fixnum]
+      # @param line [Integer]
+      # @return [Integer]
       def line=(line)
         members.each {|m| m.line = line}
         @line = line
@@ -42,7 +42,7 @@
       # Subclasses should define `#_hash` rather than overriding this method,
       # which automatically handles memoizing the result.
       #
-      # @return [Fixnum]
+      # @return [Integer]
       def hash
         @_hash ||= _hash
       end
@@ -83,7 +83,7 @@
       # The base is given by {Sass::Selector::SPECIFICITY_BASE}. This can be a
       # number or a range representing possible specificities.
       #
-      # @return [Fixnum, Range]
+      # @return [Integer, Range]
       def specificity
         _specificity(members)
       end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/sass/selector/sequence.rb 
new/lib/sass/selector/sequence.rb
--- old/lib/sass/selector/sequence.rb   2016-12-20 00:15:44.000000000 +0100
+++ new/lib/sass/selector/sequence.rb   2017-05-19 02:01:42.000000000 +0200
@@ -6,8 +6,8 @@
       # Sets the line of the Sass template on which this selector was declared.
       # This also sets the line for all child selectors.
       #
-      # @param line [Fixnum]
-      # @return [Fixnum]
+      # @param line [Integer]
+      # @return [Integer]
       def line=(line)
         members.each {|m| m.line = line if m.is_a?(SimpleSequence)}
         @line = line
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/sass/selector/simple.rb 
new/lib/sass/selector/simple.rb
--- old/lib/sass/selector/simple.rb     2016-12-20 00:15:44.000000000 +0100
+++ new/lib/sass/selector/simple.rb     2017-05-19 02:01:42.000000000 +0200
@@ -5,7 +5,7 @@
     class Simple
       # The line of the Sass template on which this selector was declared.
       #
-      # @return [Fixnum]
+      # @return [Integer]
       attr_accessor :line
 
       # The name of the file in which this selector was declared,
@@ -36,7 +36,7 @@
       # so if that contains information irrelevant to the identity of the 
selector,
       # this should be overridden.
       #
-      # @return [Fixnum]
+      # @return [Integer]
       def hash
         @_hash ||= equality_key.hash
       end
@@ -106,10 +106,10 @@
       #   could be found at all.
       #   If the second value is `false`, the first should be ignored.
       def unify_namespaces(ns1, ns2)
-        return nil, false unless ns1 == ns2 || ns1.nil? || ns1 == '*' || 
ns2.nil? || ns2 == '*'
         return ns2, true if ns1 == '*'
         return ns1, true if ns2 == '*'
-        [ns1 || ns2, true]
+        return nil, false unless ns1 == ns2
+        [ns1, true]
       end
     end
   end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/sass/shared.rb new/lib/sass/shared.rb
--- old/lib/sass/shared.rb      2016-12-20 00:15:44.000000000 +0100
+++ new/lib/sass/shared.rb      2017-05-19 02:01:42.000000000 +0200
@@ -31,7 +31,7 @@
     #   A `Fixnum` in 1.8, a `String` in 1.9
     # @param finish [Character] The character closing the balanced pair.
     #   A `Fixnum` in 1.8, a `String` in 1.9
-    # @param count [Fixnum] The number of opening characters matched
+    # @param count [Integer] The number of opening characters matched
     #   before calling this method
     # @return [(String, String)] The string matched within the balanced pair
     #   and the rest of the string.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/sass/source/map.rb new/lib/sass/source/map.rb
--- old/lib/sass/source/map.rb  2016-12-20 00:15:44.000000000 +0100
+++ new/lib/sass/source/map.rb  2017-05-19 02:01:42.000000000 +0200
@@ -37,7 +37,7 @@
 
     # Shifts all output source ranges forward one or more lines.
     #
-    # @param delta [Fixnum] The number of lines to shift the ranges forward.
+    # @param delta [Integer] The number of lines to shift the ranges forward.
     def shift_output_lines(delta)
       return if delta == 0
       @data.each do |m|
@@ -49,7 +49,7 @@
     # Shifts any output source ranges that lie on the first line forward one or
     # more characters on that line.
     #
-    # @param delta [Fixnum] The number of characters to shift the ranges
+    # @param delta [Integer] The number of characters to shift the ranges
     #   forward.
     def shift_output_offsets(delta)
       return if delta == 0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/sass/source/position.rb 
new/lib/sass/source/position.rb
--- old/lib/sass/source/position.rb     2016-12-20 00:15:44.000000000 +0100
+++ new/lib/sass/source/position.rb     2017-05-19 02:01:42.000000000 +0200
@@ -2,17 +2,17 @@
   class Position
     # The one-based line of the document associated with the position.
     #
-    # @return [Fixnum]
+    # @return [Integer]
     attr_accessor :line
 
     # The one-based offset in the line of the document associated with the
     # position.
     #
-    # @return [Fixnum]
+    # @return [Integer]
     attr_accessor :offset
 
-    # @param line [Fixnum] The source line
-    # @param offset [Fixnum] The source offset
+    # @param line [Integer] The source line
+    # @param offset [Integer] The source offset
     def initialize(line, offset)
       @line = line
       @offset = offset
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/sass/tree/comment_node.rb 
new/lib/sass/tree/comment_node.rb
--- old/lib/sass/tree/comment_node.rb   2016-12-20 00:15:44.000000000 +0100
+++ new/lib/sass/tree/comment_node.rb   2017-05-19 02:01:42.000000000 +0200
@@ -59,7 +59,7 @@
 
     # Returns the number of lines in the comment.
     #
-    # @return [Fixnum]
+    # @return [Integer]
     def lines
       @value.inject(0) do |s, e|
         next s + e.count("\n") if e.is_a?(String)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/sass/tree/node.rb new/lib/sass/tree/node.rb
--- old/lib/sass/tree/node.rb   2016-12-20 00:15:44.000000000 +0100
+++ new/lib/sass/tree/node.rb   2017-05-19 02:01:42.000000000 +0200
@@ -69,7 +69,7 @@
 
       # The line of the document on which this node appeared.
       #
-      # @return [Fixnum]
+      # @return [Integer]
       attr_accessor :line
 
       # The source range in the document on which this node appeared.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/sass/tree/prop_node.rb 
new/lib/sass/tree/prop_node.rb
--- old/lib/sass/tree/prop_node.rb      2016-12-20 00:15:44.000000000 +0100
+++ new/lib/sass/tree/prop_node.rb      2017-05-19 02:01:42.000000000 +0200
@@ -39,7 +39,7 @@
     # * This is a child property of another property
     # * The parent property has a value, and thus will be rendered
     #
-    # @return [Fixnum]
+    # @return [Integer]
     attr_accessor :tabs
 
     # The source range in which the property name appears.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/sass/tree/rule_node.rb 
new/lib/sass/tree/rule_node.rb
--- old/lib/sass/tree/rule_node.rb      2016-12-20 00:15:44.000000000 +0100
+++ new/lib/sass/tree/rule_node.rb      2017-05-19 02:01:42.000000000 +0200
@@ -40,7 +40,7 @@
     # * This is a child rule of another rule
     # * The parent rule has properties, and thus will be rendered
     #
-    # @return [Fixnum]
+    # @return [Integer]
     attr_accessor :tabs
 
     # The entire selector source range for this rule.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/sass/tree/visitors/to_css.rb 
new/lib/sass/tree/visitors/to_css.rb
--- old/lib/sass/tree/visitors/to_css.rb        2016-12-20 00:15:44.000000000 
+0100
+++ new/lib/sass/tree/visitors/to_css.rb        2017-05-19 02:01:42.000000000 
+0200
@@ -12,7 +12,7 @@
     @tabs = 0
     @line = 1
     @offset = 1
-    @result = ""
+    @result = String.new("")
     @source_mapping = build_source_mapping ? Sass::Source::Map.new : nil
     @lstrip = nil
     @in_directive = false
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/sass/util.rb new/lib/sass/util.rb
--- old/lib/sass/util.rb        2016-12-20 00:15:44.000000000 +0100
+++ new/lib/sass/util.rb        2017-05-19 02:01:42.000000000 +0200
@@ -339,6 +339,18 @@
       arr
     end
 
+    # Like `String.upcase`, but only ever upcases ASCII letters.
+    def upcase(string)
+      return string.upcase unless ruby2_4?
+      string.upcase(:ascii)
+    end
+
+    # Like `String.downcase`, but only ever downcases ASCII letters.
+    def downcase(string)
+      return string.downcase unless ruby2_4?
+      string.downcase(:ascii)
+    end
+
     # Returns a sub-array of `minuend` containing only elements that are also 
in
     # `subtrahend`. Ensures that the return value has the same order as
     # `minuend`, even on Rubinius where that's not guaranteed by `Array#-`.
@@ -418,7 +430,7 @@
     # Returns information about the caller of the previous method.
     #
     # @param entry [String] An entry in the `#caller` list, or a similarly 
formatted string
-    # @return [[String, Fixnum, (String, nil)]]
+    # @return [[String, Integer, (String, nil)]]
     #   An array containing the filename, line, and method name of the caller.
     #   The method name may be nil
     def caller_info(entry = nil)
@@ -636,7 +648,7 @@
 
     # Returns an array of ints representing the JRuby version number.
     #
-    # @return [Array<Fixnum>]
+    # @return [Array<Integer>]
     def jruby_version
       @jruby_version ||= ::JRUBY_VERSION.split(".").map {|s| s.to_i}
     end
@@ -794,6 +806,19 @@
       @ruby1_9_2 = RUBY_VERSION_COMPONENTS == [1, 9, 2]
     end
 
+    # Whether or not this is running under Ruby 2.4 or higher.
+    #
+    # @return [Boolean]
+    def ruby2_4?
+      return @ruby2_4 if defined?(@ruby2_4)
+      @ruby2_4 =
+        if RUBY_VERSION_COMPONENTS[0] == 2
+          RUBY_VERSION_COMPONENTS[1] >= 4
+        else
+          RUBY_VERSION_COMPONENTS[0] > 2
+        end
+    end
+
     # Wehter or not this is running under JRuby 1.6 or lower.
     def jruby1_6?
       return @jruby1_6 if defined?(@jruby1_6)
@@ -941,7 +966,7 @@
     # A version of `Enumerable#enum_cons` that works in Ruby 1.8 and 1.9.
     #
     # @param enum [Enumerable] The enumerable to get the enumerator for
-    # @param n [Fixnum] The size of each cons
+    # @param n [Integer] The size of each cons
     # @return [Enumerator] The consed enumerator
     def enum_cons(enum, n)
       ruby1_8? ? enum.enum_cons(n) : enum.each_cons(n)
@@ -950,7 +975,7 @@
     # A version of `Enumerable#enum_slice` that works in Ruby 1.8 and 1.9.
     #
     # @param enum [Enumerable] The enumerable to get the enumerator for
-    # @param n [Fixnum] The size of each slice
+    # @param n [Integer] The size of each slice
     # @return [Enumerator] The consed enumerator
     def enum_slice(enum, n)
       ruby1_8? ? enum.enum_slice(n) : enum.each_slice(n)
@@ -977,7 +1002,7 @@
     # Returns the ASCII code of the given character.
     #
     # @param c [String] All characters but the first are ignored.
-    # @return [Fixnum] The ASCII code of `c`.
+    # @return [Integer] The ASCII code of `c`.
     def ord(c)
       ruby1_8? ? c[0] : c.ord
     end
@@ -1102,11 +1127,11 @@
 
     # Converts the argument into a valid JSON value.
     #
-    # @param v [Fixnum, String, Array, Boolean, nil]
+    # @param v [Integer, String, Array, Boolean, nil]
     # @return [String]
     def json_value_of(v)
       case v
-      when Fixnum
+      when Integer
         v.to_s
       when String
         "\"" + json_escape_string(v) + "\""
@@ -1139,7 +1164,7 @@
 
     # Encodes `value` as VLQ (http://en.wikipedia.org/wiki/VLQ).
     #
-    # @param value [Fixnum]
+    # @param value [Integer]
     # @return [String] The encoded value
     def encode_vlq(value)
       if value < 0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/sass/version.rb new/lib/sass/version.rb
--- old/lib/sass/version.rb     2016-12-20 00:15:44.000000000 +0100
+++ new/lib/sass/version.rb     2017-05-19 02:01:42.000000000 +0200
@@ -8,7 +8,7 @@
   # if it was installed from Git.
   module Version
     # Returns a hash representing the version of Sass.
-    # The `:major`, `:minor`, and `:teeny` keys have their respective numbers 
as Fixnums.
+    # The `:major`, `:minor`, and `:teeny` keys have their respective numbers 
as Integers.
     # The `:name` key has the name of the version.
     # The `:string` key contains a human-readable string representation of the 
version.
     # The `:number` key is the major, minor, and teeny keys separated by 
periods.
@@ -41,7 +41,7 @@
     #       :prerelease_number => 1
     #     }
     #
-    # @return [{Symbol => String/Fixnum}] The version hash
+    # @return [{Symbol => String/Integer}] The version hash
     # @comment
     #   rubocop:disable ClassVars
     def version
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/metadata new/metadata
--- old/metadata        2016-12-20 00:15:44.000000000 +0100
+++ new/metadata        2017-05-19 02:01:42.000000000 +0200
@@ -1,7 +1,7 @@
 --- !ruby/object:Gem::Specification
 name: sass
 version: !ruby/object:Gem::Version
-  version: 3.4.23
+  version: 3.4.24
 platform: ruby
 authors:
 - Natalie Weizenbaum
@@ -10,7 +10,7 @@
 autorequire: 
 bindir: bin
 cert_chain: []
-date: 2016-12-19 00:00:00.000000000 Z
+date: 2017-05-19 00:00:00.000000000 Z
 dependencies:
 - !ruby/object:Gem::Dependency
   name: yard
@@ -18,28 +18,28 @@
     requirements:
     - - ">="
       - !ruby/object:Gem::Version
-        version: 0.5.3
+        version: 0.9.8
   type: :development
   prerelease: false
   version_requirements: !ruby/object:Gem::Requirement
     requirements:
     - - ">="
       - !ruby/object:Gem::Version
-        version: 0.5.3
+        version: 0.9.8
 - !ruby/object:Gem::Dependency
-  name: maruku
+  name: redcarpet
   requirement: !ruby/object:Gem::Requirement
     requirements:
-    - - ">="
+    - - "~>"
       - !ruby/object:Gem::Version
-        version: 0.5.9
+        version: 2.3.0
   type: :development
   prerelease: false
   version_requirements: !ruby/object:Gem::Requirement
     requirements:
-    - - ">="
+    - - "~>"
       - !ruby/object:Gem::Version
-        version: 0.5.9
+        version: 2.3.0
 - !ruby/object:Gem::Dependency
   name: minitest
   requirement: !ruby/object:Gem::Requirement
@@ -396,34 +396,34 @@
       version: '0'
 requirements: []
 rubyforge_project: sass
-rubygems_version: 2.4.8
+rubygems_version: 2.6.11
 signing_key: 
 specification_version: 4
 summary: A powerful but elegant CSS compiler that makes CSS fun again.
 test_files:
-- test/sass/extend_test.rb
-- test/sass/css2sass_test.rb
-- test/sass/util_test.rb
-- test/sass/superselector_test.rb
-- test/sass/value_helpers_test.rb
 - test/sass/plugin_test.rb
-- test/sass/logger_test.rb
-- test/sass/functions_test.rb
-- test/sass/conversion_test.rb
-- test/sass/source_map_test.rb
-- test/sass/cache_test.rb
 - test/sass/encoding_test.rb
-- test/sass/script_test.rb
+- test/sass/importer_test.rb
 - test/sass/callbacks_test.rb
-- test/sass/script_conversion_test.rb
 - test/sass/scss/css_test.rb
 - test/sass/scss/rx_test.rb
 - test/sass/scss/scss_test.rb
+- test/sass/util/multibyte_string_scanner_test.rb
+- test/sass/util/normalized_map_test.rb
+- test/sass/util/subset_map_test.rb
+- test/sass/functions_test.rb
+- test/sass/util_test.rb
+- test/sass/cache_test.rb
 - test/sass/exec_test.rb
-- test/sass/importer_test.rb
+- test/sass/value_helpers_test.rb
+- test/sass/conversion_test.rb
+- test/sass/script_test.rb
+- test/sass/logger_test.rb
+- test/sass/compiler_test.rb
 - test/sass/engine_test.rb
+- test/sass/css2sass_test.rb
+- test/sass/superselector_test.rb
+- test/sass/script_conversion_test.rb
 - test/sass/css_variable_test.rb
-- test/sass/compiler_test.rb
-- test/sass/util/subset_map_test.rb
-- test/sass/util/normalized_map_test.rb
-- test/sass/util/multibyte_string_scanner_test.rb
+- test/sass/source_map_test.rb
+- test/sass/extend_test.rb
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/test/sass/extend_test.rb new/test/sass/extend_test.rb
--- old/test/sass/extend_test.rb        2016-12-20 00:15:44.000000000 +0100
+++ new/test/sass/extend_test.rb        2017-05-19 02:01:42.000000000 +0200
@@ -167,42 +167,52 @@
   end
 
   def test_universal_unification_with_namespaceless_universal_target
+    assert_extend_doesnt_match('ns|*', '.foo', :failed_to_unify, 2) do
+      render_unification '*.foo', 'ns|* {@extend .foo}'
+    end
+
     assert_unification '*.foo', '* {@extend .foo}', '*'
     assert_unification '*.foo', '*|* {@extend .foo}', '*'
     assert_unification '*|*.foo', '* {@extend .foo}', '*|*.foo, *'
     assert_unification '*|*.foo', '*|* {@extend .foo}', '*|*'
-    assert_unification '*.foo', 'ns|* {@extend .foo}', '*.foo, ns|*'
     assert_unification '*|*.foo', 'ns|* {@extend .foo}', '*|*.foo, ns|*'
   end
 
   def test_universal_unification_with_namespaced_universal_target
-    assert_unification 'ns|*.foo', '* {@extend .foo}', 'ns|*'
-    assert_unification 'ns|*.foo', '*|* {@extend .foo}', 'ns|*'
+    assert_extend_doesnt_match('*', '.foo', :failed_to_unify, 2) do
+      render_unification 'ns|*.foo', '* {@extend .foo}'
+    end
 
     assert_extend_doesnt_match('ns2|*', '.foo', :failed_to_unify, 2) do
       render_unification 'ns1|*.foo', 'ns2|* {@extend .foo}'
     end
 
+    assert_unification 'ns|*.foo', '*|* {@extend .foo}', 'ns|*'
     assert_unification 'ns|*.foo', 'ns|* {@extend .foo}', 'ns|*'
   end
 
   def test_universal_unification_with_namespaceless_element_target
+    assert_extend_doesnt_match('ns|*', '.foo', :failed_to_unify, 2) do
+      render_unification 'a.foo', 'ns|* {@extend .foo}'
+    end
+
     assert_unification 'a.foo', '* {@extend .foo}', 'a'
     assert_unification 'a.foo', '*|* {@extend .foo}', 'a'
     assert_unification '*|a.foo', '* {@extend .foo}', '*|a.foo, a'
     assert_unification '*|a.foo', '*|* {@extend .foo}', '*|a'
-    assert_unification 'a.foo', 'ns|* {@extend .foo}', 'a.foo, ns|a'
     assert_unification '*|a.foo', 'ns|* {@extend .foo}', '*|a.foo, ns|a'
   end
 
   def test_universal_unification_with_namespaced_element_target
-    assert_unification 'ns|a.foo', '* {@extend .foo}', 'ns|a'
-    assert_unification 'ns|a.foo', '*|* {@extend .foo}', 'ns|a'
+    assert_extend_doesnt_match('*', '.foo', :failed_to_unify, 2) do
+      render_unification 'ns|a.foo', '* {@extend .foo}'
+    end
 
     assert_extend_doesnt_match('ns2|*', '.foo', :failed_to_unify, 2) do
       render_unification 'ns1|a.foo', 'ns2|* {@extend .foo}'
     end
 
+    assert_unification 'ns|a.foo', '*|* {@extend .foo}', 'ns|a'
     assert_unification 'ns|a.foo', 'ns|* {@extend .foo}', 'ns|a'
   end
 
@@ -214,46 +224,56 @@
   end
 
   def test_element_unification_with_namespaceless_universal_target
+    assert_extend_doesnt_match('ns|a', '.foo', :failed_to_unify, 2) do
+      render_unification '*.foo', 'ns|a {@extend .foo}'
+    end
+
     assert_unification '*.foo', 'a {@extend .foo}', '*.foo, a'
     assert_unification '*.foo', '*|a {@extend .foo}', '*.foo, a'
     assert_unification '*|*.foo', 'a {@extend .foo}', '*|*.foo, a'
     assert_unification '*|*.foo', '*|a {@extend .foo}', '*|*.foo, *|a'
-    assert_unification '*.foo', 'ns|a {@extend .foo}', '*.foo, ns|a'
     assert_unification '*|*.foo', 'ns|a {@extend .foo}', '*|*.foo, ns|a'
   end
 
   def test_element_unification_with_namespaced_universal_target
-    assert_unification 'ns|*.foo', 'a {@extend .foo}', 'ns|*.foo, ns|a'
-    assert_unification 'ns|*.foo', '*|a {@extend .foo}', 'ns|*.foo, ns|a'
+    assert_extend_doesnt_match('a', '.foo', :failed_to_unify, 2) do
+      render_unification 'ns|*.foo', 'a {@extend .foo}'
+    end
 
     assert_extend_doesnt_match('ns2|a', '.foo', :failed_to_unify, 2) do
       render_unification 'ns1|*.foo', 'ns2|a {@extend .foo}'
     end
 
+    assert_unification 'ns|*.foo', '*|a {@extend .foo}', 'ns|*.foo, ns|a'
     assert_unification 'ns|*.foo', 'ns|a {@extend .foo}', 'ns|*.foo, ns|a'
   end
 
   def test_element_unification_with_namespaceless_element_target
+    assert_extend_doesnt_match('ns|a', '.foo', :failed_to_unify, 2) do
+      render_unification 'a.foo', 'ns|a {@extend .foo}'
+    end
+
+    assert_extend_doesnt_match('h1', '.foo', :failed_to_unify, 2) do
+      render_unification 'a.foo', 'h1 {@extend .foo}'
+    end
+
     assert_unification 'a.foo', 'a {@extend .foo}', 'a'
     assert_unification 'a.foo', '*|a {@extend .foo}', 'a'
     assert_unification '*|a.foo', 'a {@extend .foo}', '*|a.foo, a'
     assert_unification '*|a.foo', '*|a {@extend .foo}', '*|a'
-    assert_unification 'a.foo', 'ns|a {@extend .foo}', 'a.foo, ns|a'
     assert_unification '*|a.foo', 'ns|a {@extend .foo}', '*|a.foo, ns|a'
-
-    assert_extend_doesnt_match('h1', '.foo', :failed_to_unify, 2) do
-      render_unification 'a.foo', 'h1 {@extend .foo}'
-    end
   end
 
   def test_element_unification_with_namespaced_element_target
-    assert_unification 'ns|a.foo', 'a {@extend .foo}', 'ns|a'
-    assert_unification 'ns|a.foo', '*|a {@extend .foo}', 'ns|a'
+    assert_extend_doesnt_match('a', '.foo', :failed_to_unify, 2) do
+      render_unification 'ns|a.foo', 'a {@extend .foo}'
+    end
 
     assert_extend_doesnt_match('ns2|a', '.foo', :failed_to_unify, 2) do
       render_unification 'ns1|a.foo', 'ns2|a {@extend .foo}'
     end
 
+    assert_unification 'ns|a.foo', '*|a {@extend .foo}', 'ns|a'
     assert_unification 'ns|a.foo', 'ns|a {@extend .foo}', 'ns|a'
   end
 
@@ -567,7 +587,7 @@
   end
 
   def test_long_extendee_runs_unification
-    assert_extends 'ns|*.foo.bar', 'a.baz {@extend .foo.bar}', 'ns|*.foo.bar, 
ns|a.baz'
+    assert_extends 'ns|*.foo.bar', '*|a.baz {@extend .foo.bar}', 
'ns|*.foo.bar, ns|a.baz'
   end
 
   ## Long Extenders
@@ -577,7 +597,7 @@
   end
 
   def test_long_extender_runs_unification
-    assert_extends 'ns|*.foo.bar', 'a.baz {@extend .foo}', 'ns|*.foo.bar, 
ns|a.bar.baz'
+    assert_extends 'ns|*.foo.bar', '*|a.baz {@extend .foo}', 'ns|*.foo.bar, 
ns|a.bar.baz'
   end
 
   def test_long_extender_aborts_unification


Reply via email to