Hello community, here is the log from the commit of package rubygem-sass for openSUSE:Factory checked in at 2015-06-12 20:30:30 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/rubygem-sass (Old) and /work/SRC/openSUSE:Factory/.rubygem-sass.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "rubygem-sass" Changes: -------- --- /work/SRC/openSUSE:Factory/rubygem-sass/rubygem-sass.changes 2015-03-01 14:46:40.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.rubygem-sass.new/rubygem-sass.changes 2015-06-12 20:30:33.000000000 +0200 @@ -1,0 +2,6 @@ +Thu May 28 04:33:45 UTC 2015 - co...@suse.com + +- updated to version 3.4.14 + see installed CHANGELOG.md + +------------------------------------------------------------------- Old: ---- sass-3.4.13.gem New: ---- sass-3.4.14.gem ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ rubygem-sass.spec ++++++ --- /var/tmp/diff_new_pack.h0oG1i/_old 2015-06-12 20:30:35.000000000 +0200 +++ /var/tmp/diff_new_pack.h0oG1i/_new 2015-06-12 20:30:35.000000000 +0200 @@ -24,7 +24,7 @@ # Name: rubygem-sass -Version: 3.4.13 +Version: 3.4.14 Release: 0 %define mod_name sass %define mod_full_name %{mod_name}-%{version} ++++++ sass-3.4.13.gem -> sass-3.4.14.gem ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/MIT-LICENSE new/MIT-LICENSE --- old/MIT-LICENSE 2015-02-27 03:28:59.000000000 +0100 +++ new/MIT-LICENSE 2015-05-23 04:17:06.000000000 +0200 @@ -1,4 +1,4 @@ -Copyright (c) 2006-2014 Hampton Catlin, Natalie Weizenbaum, and Chris Eppstein +Copyright (c) 2006-2015 Hampton Catlin, Natalie Weizenbaum, and Chris Eppstein Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/VERSION new/VERSION --- old/VERSION 2015-02-27 03:28:59.000000000 +0100 +++ new/VERSION 2015-05-23 04:17:06.000000000 +0200 @@ -1 +1 @@ -3.4.13 +3.4.14 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/VERSION_DATE new/VERSION_DATE --- old/VERSION_DATE 2015-02-27 03:28:59.000000000 +0100 +++ new/VERSION_DATE 2015-05-23 04:17:06.000000000 +0200 @@ -1 +1 @@ -27 February 2015 02:28:58 UTC +23 May 2015 02:17:06 UTC Files old/checksums.yaml.gz and new/checksums.yaml.gz differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/sass/cache_stores/filesystem.rb new/lib/sass/cache_stores/filesystem.rb --- old/lib/sass/cache_stores/filesystem.rb 2015-02-27 03:28:59.000000000 +0100 +++ new/lib/sass/cache_stores/filesystem.rb 2015-05-23 04:17:06.000000000 +0200 @@ -17,12 +17,12 @@ # @see Base#\_retrieve def _retrieve(key, version, sha) return unless File.readable?(path_to(key)) - File.open(path_to(key), "rb") do |f| - if f.readline("\n").strip == version && f.readline("\n").strip == sha - return f.read - end - end begin + File.open(path_to(key), "rb") do |f| + if f.readline("\n").strip == version && f.readline("\n").strip == sha + return f.read + end + end File.unlink path_to(key) rescue Errno::ENOENT # Already deleted. Race condition? 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 2015-02-27 03:28:59.000000000 +0100 +++ new/lib/sass/engine.rb 2015-05-23 04:17:06.000000000 +0200 @@ -84,7 +84,7 @@ # This class handles the parsing and compilation of the Sass template. # Example usage: # - # template = File.load('stylesheets/sassy.sass') + # template = File.read('stylesheets/sassy.sass') # sass_engine = Sass::Engine.new(template) # output = sass_engine.render # puts output @@ -157,7 +157,7 @@ # @api public DEFAULT_OPTIONS = { :style => :nested, - :load_paths => ['.'], + :load_paths => [], :cache => true, :cache_location => './.sass-cache', :syntax => :sass, 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 2015-02-27 03:28:59.000000000 +0100 +++ new/lib/sass/script/functions.rb 2015-05-23 04:17:06.000000000 +0200 @@ -217,7 +217,7 @@ # for selector arguments. They can take a plain string, a list of # lists as returned by `&` or anything in between: # - # * A plain sring, such as `".foo .bar, .baz .bang"`. + # * A plain string, such as `".foo .bar, .baz .bang"`. # * A space-separated list of strings such as `(".foo" ".bar")`. # * A comma-separated list of strings such as `(".foo .bar", ".baz .bang")`. # * A comma-separated list of space-separated lists of strings such @@ -1398,6 +1398,15 @@ # @raise [ArgumentError] if `$string` isn't a string def unquote(string) unless string.is_a?(Sass::Script::Value::String) + # Don't warn multiple times for the same source line. + # rubocop:disable GlobalVars + $_sass_warned_for_unquote ||= Set.new + frame = environment.stack.frames.last + key = [frame.filename, frame.line] if frame + return string if frame && $_sass_warned_for_unquote.include?(key) + $_sass_warned_for_unquote << key if frame + # rubocop:enable GlobalVars + Sass::Util.sass_warn(<<MESSAGE.strip) DEPRECATION WARNING: Passing #{string.to_sass}, a non-string value, to unquote() will be an error in future versions of Sass. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/sass/script/tree/operation.rb new/lib/sass/script/tree/operation.rb --- old/lib/sass/script/tree/operation.rb 2015-02-27 03:28:59.000000000 +0100 +++ new/lib/sass/script/tree/operation.rb 2015-05-23 04:17:06.000000000 +0200 @@ -85,12 +85,19 @@ raise Sass::SyntaxError.new("Undefined operation: \"#{value1} #{@operator} #{value2}\".") end - if @operator == :eq && value1.is_a?(Sass::Script::Value::Number) && - value2.is_a?(Sass::Script::Value::Number) && result == Sass::Script::Value::Bool::TRUE && - value1.unitless? != value2.unitless? + if (@operator == :eq || @operator == :neq) && value1.is_a?(Sass::Script::Value::Number) && + value2.is_a?(Sass::Script::Value::Number) && value1.unitless? != value2.unitless? && + result == (if @operator == :eq + Sass::Script::Value::Bool::TRUE + else + Sass::Script::Value::Bool::FALSE + end) + + operation = "#{value1} #{@operator == :eq ? '==' : '!='} #{value2}" + future_value = @operator == :neq Sass::Util.sass_warn <<WARNING DEPRECATION WARNING on line #{line}#{" of #{filename}" if filename}: -The result of `#{value1} == #{value2}` will be `false` in future releases of Sass. +The result of `#{operation}` will be `#{future_value}` in future releases of Sass. Unitless numbers will no longer be equal to the same numbers with units. WARNING end 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 2015-02-27 03:28:59.000000000 +0100 +++ new/lib/sass/script/value/color.rb 2015-05-23 04:17:06.000000000 +0200 @@ -232,7 +232,7 @@ raise ArgumentError.new("Color.new(array) expects a three- or four-element array") end - red, green, blue = attrs[0...3].map {|c| c.to_i} + red, green, blue = attrs[0...3].map {|c| c.round} @attrs = {:red => red, :green => green, :blue => blue} @attrs[:alpha] = attrs[3] ? attrs[3].to_f : 1 @representation = representation @@ -258,7 +258,7 @@ [:red, :green, :blue].each do |k| next if @attrs[k].nil? - @attrs[k] = Sass::Util.restrict(@attrs[k].to_i, 0..255) + @attrs[k] = Sass::Util.restrict(@attrs[k].round, 0..255) end [:saturation, :lightness].each do |k| @@ -283,7 +283,7 @@ green = $2.ljust(2, $2).to_i(16) blue = $3.ljust(2, $3).to_i(16) - hex_string = '##{hex_string}' unless hex_string[0] == ?# + hex_string = "##{hex_string}" unless hex_string[0] == ?# attrs = {:red => red, :green => green, :blue => blue, :representation => hex_string} attrs[:alpha] = alpha if alpha new(attrs) @@ -382,7 +382,7 @@ # @return [Array<Fixnum>] A frozen four-element array of the hue, # saturation, lightness, and alpha values (respectively) of the color def hsla - [hue, saturation, lightness].freeze + [hue, saturation, lightness, alpha].freeze end # The SassScript `==` operation. 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 2015-02-27 03:28:59.000000000 +0100 +++ new/lib/sass/scss/parser.rb 2015-05-23 04:17:06.000000000 +0200 @@ -562,7 +562,9 @@ def supports_operator cond = supports_condition_in_parens return unless cond - while (op = tok(/and|or/i)) + re = /and|or/i + while (op = tok(re)) + re = /#{op}/i ss cond = Sass::Supports::Operator.new( cond, expr!(:supports_condition_in_parens), op) @@ -586,11 +588,6 @@ end end - def supports_declaration_condition - return unless tok(/\(/); ss - supports_declaration_body - end - def supports_interpolation interp = interpolation return unless interp diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/sass/supports.rb new/lib/sass/supports.rb --- old/lib/sass/supports.rb 2015-02-27 03:28:59.000000000 +0100 +++ new/lib/sass/supports.rb 2015-05-23 04:17:06.000000000 +0200 @@ -58,11 +58,11 @@ end def to_css - "#{left_parens @left.to_css} #{op} #{right_parens @right.to_css}" + "#{parens @left, @left.to_css} #{op} #{parens @right, @right.to_css}" end def to_src(options) - "#{left_parens @left.to_src(options)} #{op} #{right_parens @right.to_src(options)}" + "#{parens @left, @left.to_src(options)} #{op} #{parens @right, @right.to_src(options)}" end def deep_copy @@ -79,14 +79,12 @@ private - def left_parens(str) - return "(#{str})" if @left.is_a?(Negation) - str - end - - def right_parens(str) - return "(#{str})" if @right.is_a?(Negation) || @right.is_a?(Operator) - str + def parens(condition, str) + if condition.is_a?(Negation) || (condition.is_a?(Operator) && condition.op != op) + return "(#{str})" + else + return str + end end end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/sass/tree/import_node.rb new/lib/sass/tree/import_node.rb --- old/lib/sass/tree/import_node.rb 2015-02-27 03:28:59.000000000 +0100 +++ new/lib/sass/tree/import_node.rb 2015-05-23 04:17:06.000000000 +0200 @@ -55,13 +55,14 @@ return f if f end - message = "File to import not found or unreadable: #{@imported_filename}.\n" + lines = ["File to import not found or unreadable: #{@imported_filename}."] + if paths.size == 1 - message << "Load path: #{paths.first}" - else - message << "Load paths:\n " << paths.join("\n ") + lines << "Load path: #{paths.first}" + elsif !paths.empty? + lines << "Load paths:\n #{paths.join("\n ")}" end - raise SyntaxError.new(message) + raise SyntaxError.new(lines.join("\n")) rescue SyntaxError => e raise SyntaxError.new(e.message, :line => line, :filename => @filename) end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/metadata new/metadata --- old/metadata 2015-02-27 03:28:59.000000000 +0100 +++ new/metadata 2015-05-23 04:17:06.000000000 +0200 @@ -1,7 +1,7 @@ --- !ruby/object:Gem::Specification name: sass version: !ruby/object:Gem::Version - version: 3.4.13 + version: 3.4.14 platform: ruby authors: - Natalie Weizenbaum @@ -10,55 +10,54 @@ autorequire: bindir: bin cert_chain: [] -date: 2015-02-27 00:00:00.000000000 Z +date: 2015-05-23 00:00:00.000000000 Z dependencies: - !ruby/object:Gem::Dependency name: yard requirement: !ruby/object:Gem::Requirement requirements: - - - '>=' + - - ! '>=' - !ruby/object:Gem::Version version: 0.5.3 type: :development prerelease: false version_requirements: !ruby/object:Gem::Requirement requirements: - - - '>=' + - - ! '>=' - !ruby/object:Gem::Version version: 0.5.3 - !ruby/object:Gem::Dependency name: maruku requirement: !ruby/object:Gem::Requirement requirements: - - - '>=' + - - ! '>=' - !ruby/object:Gem::Version version: 0.5.9 type: :development prerelease: false version_requirements: !ruby/object:Gem::Requirement requirements: - - - '>=' + - - ! '>=' - !ruby/object:Gem::Version version: 0.5.9 - !ruby/object:Gem::Dependency name: minitest requirement: !ruby/object:Gem::Requirement requirements: - - - '>=' + - - ! '>=' - !ruby/object:Gem::Version version: '5' type: :development prerelease: false version_requirements: !ruby/object:Gem::Requirement requirements: - - - '>=' + - - ! '>=' - !ruby/object:Gem::Version version: '5' -description: |2 - Sass makes CSS fun again. Sass is an extension of CSS3, adding - nested rules, variables, mixins, selector inheritance, and more. - It's translated to well-formatted, standard CSS using the - command line tool or a web-framework plugin. +description: ! " Sass makes CSS fun again. Sass is an extension of CSS3, adding\n + \ nested rules, variables, mixins, selector inheritance, and more.\n It's + translated to well-formatted, standard CSS using the\n command line tool or + a web-framework plugin.\n" email: sass-l...@googlegroups.com executables: - sass @@ -381,43 +380,43 @@ - lib required_ruby_version: !ruby/object:Gem::Requirement requirements: - - - '>=' + - - ! '>=' - !ruby/object:Gem::Version version: 1.8.7 required_rubygems_version: !ruby/object:Gem::Requirement requirements: - - - '>=' + - - ! '>=' - !ruby/object:Gem::Version version: '0' requirements: [] rubyforge_project: sass -rubygems_version: 2.2.2 +rubygems_version: 2.4.3 signing_key: specification_version: 4 summary: A powerful but elegant CSS compiler that makes CSS fun again. test_files: +- test/sass/importer_test.rb +- test/sass/engine_test.rb - test/sass/value_helpers_test.rb -- test/sass/conversion_test.rb -- test/sass/cache_test.rb -- test/sass/script_test.rb - test/sass/superselector_test.rb -- test/sass/callbacks_test.rb -- test/sass/source_map_test.rb -- test/sass/script_conversion_test.rb -- test/sass/util_test.rb -- test/sass/plugin_test.rb -- test/sass/extend_test.rb -- test/sass/scss/rx_test.rb -- test/sass/scss/css_test.rb -- test/sass/scss/scss_test.rb - test/sass/logger_test.rb -- test/sass/importer_test.rb +- test/sass/util_test.rb +- test/sass/cache_test.rb - test/sass/encoding_test.rb -- test/sass/engine_test.rb -- test/sass/exec_test.rb -- test/sass/util/normalized_map_test.rb +- test/sass/source_map_test.rb +- test/sass/css2sass_test.rb +- test/sass/plugin_test.rb +- test/sass/conversion_test.rb - test/sass/util/subset_map_test.rb - test/sass/util/multibyte_string_scanner_test.rb +- test/sass/util/normalized_map_test.rb +- test/sass/exec_test.rb +- test/sass/scss/rx_test.rb +- test/sass/scss/scss_test.rb +- test/sass/scss/css_test.rb +- test/sass/callbacks_test.rb - test/sass/functions_test.rb +- test/sass/extend_test.rb +- test/sass/script_conversion_test.rb +- test/sass/script_test.rb - test/sass/compiler_test.rb -- test/sass/css2sass_test.rb diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/test/sass/conversion_test.rb new/test/sass/conversion_test.rb --- old/test/sass/conversion_test.rb 2015-02-27 03:28:59.000000000 +0100 +++ new/test/sass/conversion_test.rb 2015-05-23 04:17:06.000000000 +0200 @@ -1311,7 +1311,7 @@ $feature: feature2 $val: val -@supports \#{$query} and ($feature: $val) or (not ($feature + 3: $val + 4)) +@supports (\#{$query} and ($feature: $val)) or (not ($feature + 3: $val + 4)) foo a: b SASS @@ -1319,7 +1319,7 @@ $feature: feature2; $val: val; -@supports \#{$query} and ($feature: $val) or (not ($feature + 3: $val + 4)) { +@supports (\#{$query} and ($feature: $val)) or (not ($feature + 3: $val + 4)) { foo { a: b; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/test/sass/engine_test.rb new/test/sass/engine_test.rb --- old/test/sass/engine_test.rb 2015-02-27 03:28:59.000000000 +0100 +++ new/test/sass/engine_test.rb 2015-05-23 04:17:06.000000000 +0200 @@ -680,7 +680,6 @@ def test_nonexistent_import assert_raise_message(Sass::SyntaxError, <<ERR.rstrip) do File to import not found or unreadable: nonexistent.sass. -Load path: #{Dir.pwd} ERR render("@import nonexistent.sass") end @@ -689,7 +688,6 @@ def test_nonexistent_extensionless_import assert_raise_message(Sass::SyntaxError, <<ERR.rstrip) do File to import not found or unreadable: nonexistent. -Load path: #{Dir.pwd} ERR render("@import nonexistent") end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/test/sass/functions_test.rb new/test/sass/functions_test.rb --- old/test/sass/functions_test.rb 2015-02-27 03:28:59.000000000 +0100 +++ new/test/sass/functions_test.rb 2015-05-23 04:17:06.000000000 +0200 @@ -220,10 +220,10 @@ end def test_rgb_percent - assert_equal("#123456", evaluate("rgb(7.1%, 20.4%, 34%)")) + assert_equal("#123457", evaluate("rgb(7.1%, 20.4%, 34%)")) assert_equal("#beaded", evaluate("rgb(74.7%, 173, 93%)")) assert_equal("#beaded", evaluate("rgb(190, 68%, 237)")) - assert_equal("springgreen", evaluate("rgb(0%, 100%, 50%)")) + assert_equal("#00ff80", evaluate("rgb(0%, 100%, 50%)")) end def test_rgb_clamps_bounds @@ -813,11 +813,11 @@ end def test_mix - assert_equal("#7f007f", evaluate("mix(#f00, #00f)")) - assert_equal("#7f7f7f", evaluate("mix(#f00, #0ff)")) - assert_equal("#7f9055", evaluate("mix(#f70, #0aa)")) - assert_equal("#3f00bf", evaluate("mix(#f00, #00f, 25%)")) - assert_equal("rgba(63, 0, 191, 0.75)", evaluate("mix(rgba(255, 0, 0, 0.5), #00f)")) + assert_equal("purple", evaluate("mix(#f00, #00f)")) + assert_equal("gray", evaluate("mix(#f00, #0ff)")) + assert_equal("#809155", evaluate("mix(#f70, #0aa)")) + assert_equal("#4000bf", evaluate("mix(#f00, #00f, 25%)")) + assert_equal("rgba(64, 0, 191, 0.75)", evaluate("mix(rgba(255, 0, 0, 0.5), #00f)")) assert_equal("red", evaluate("mix(#f00, #00f, 100%)")) assert_equal("blue", evaluate("mix(#f00, #00f, 0%)")) assert_equal("rgba(255, 0, 0, 0.5)", evaluate("mix(#f00, transparentize(#00f, 1))")) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/test/sass/results/script.css new/test/sass/results/script.css --- old/test/sass/results/script.css 2015-02-27 03:29:00.000000000 +0100 +++ new/test/sass/results/script.css 2015-05-23 04:17:06.000000000 +0200 @@ -1,9 +1,9 @@ #main { content: Hello\!; qstr: 'Quo"ted"!'; hstr: Hyph-en\!; width: 30em; background-color: #000; color: #ffa; short-color: #123; named-color: olive; con: "foo" bar 9 hi there "boom"; con2: "noquo" quo; } #main #sidebar { background-color: #00ff98; num-normal: 10; num-dec: 10.2; num-dec0: 99; num-neg: -10; esc: 10\+12; many: 6; order: 7; complex: #4c9db1hi16; } -#plus { num-num: 7; num-num-un: 25em; num-num-un2: 23em; num-num-neg: 9.87; num-str: 100px; num-col: #b7b7b7; num-perc: 31%; str-str: "hi there"; str-str2: "hi there"; str-col: "14em solid #123"; str-num: "times: 13"; col-num: #ff7b9d; col-col: #5173ff; } +#plus { num-num: 7; num-num-un: 25em; num-num-un2: 23em; num-num-neg: 9.87; num-str: 100px; num-col: #b7b7b7; num-perc: 31%; str-str: "hi there"; str-str2: "hi there"; str-col: "14em solid #123"; str-num: "times: 13"; col-num: #ff7c9e; col-col: #5173ff; } -#minus { num-num: 900; col-num: #f9f9f4; col-col: #000035; unary-num: -1; unary-const: 10; unary-paren: -11; unary-two: 12; unary-many: 12; unary-crazy: -15; } +#minus { num-num: 900; col-num: #fafaf5; col-col: #000035; unary-num: -1; unary-const: 10; unary-paren: -11; unary-two: 12; unary-many: 12; unary-crazy: -15; } #times { num-num: 7; num-col: #7496b8; col-num: #092345; col-col: #243648; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/test/sass/script_test.rb new/test/sass/script_test.rb --- old/test/sass/script_test.rb 2015-02-27 03:29:00.000000000 +0100 +++ new/test/sass/script_test.rb 2015-05-23 04:17:06.000000000 +0200 @@ -31,6 +31,11 @@ assert_equal 0, Sass::Script::Value::Color.new([1, 2, 3, -0.1]).alpha end + def test_color_from_hex + assert_equal Sass::Script::Value::Color.new([0,0,0]), Sass::Script::Value::Color.from_hex('000000') + assert_equal Sass::Script::Value::Color.new([0,0,0]), Sass::Script::Value::Color.from_hex('#000000') + end + def test_string_escapes assert_equal "'", resolve("\"'\"") assert_equal '"', resolve("\"\\\"\"") @@ -472,6 +477,12 @@ The result of `1 == 1cm` will be `false` in future releases of Sass. Unitless numbers will no longer be equal to the same numbers with units. WARNING + + assert_warning(<<WARNING) {assert_equal "false", resolve("1 != 1cm")} +DEPRECATION WARNING on line 1 of test_operator_unit_conversion_inline.sass: +The result of `1 != 1cm` will be `true` in future releases of Sass. +Unitless numbers will no longer be equal to the same numbers with units. +WARNING end def test_length_units @@ -552,7 +563,7 @@ def test_case_insensitive_color_names assert_equal "BLUE", resolve("BLUE") assert_equal "rEd", resolve("rEd") - assert_equal "#7f4000", resolve("mix(GrEeN, ReD)") + assert_equal "#804000", resolve("mix(GrEeN, ReD)") end def test_empty_list diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/test/sass/scss/css_test.rb new/test/sass/scss/css_test.rb --- old/test/sass/scss/css_test.rb 2015-02-27 03:29:00.000000000 +0100 +++ new/test/sass/scss/css_test.rb 2015-05-23 04:17:06.000000000 +0200 @@ -634,14 +634,14 @@ def test_supports assert_equal <<CSS, render(<<SCSS) -@supports (a: b) and (c: d) or (not (d: e)) and ((not (f: g)) or (not ((h: i) and (j: k)))) { +@supports (((a: b) and (c: d)) or (not (d: e))) and ((not (f: g)) or (not ((h: i) and (j: k)))) { .foo { a: b; } } @supports (a: b) { .foo { a: b; } } CSS -@supports (a: b) and (c: d) or (not (d: e)) and ((not (f: g)) or (not ((h: i) and (j: k)))) { +@supports (((a: b) and (c: d)) or (not (d: e))) and ((not (f: g)) or (not ((h: i) and (j: k)))) { .foo { a: b; } @@ -653,13 +653,38 @@ } } SCSS + end + def test_supports_with_prefix assert_equal <<CSS, render(<<SCSS) -@-prefix-supports (a: b) and (c: d) or (not (d: e)) and ((not (f: g)) or (not ((h: i) and (j: k)))) { +@-prefix-supports (((a: b) and (c: d)) or (not (d: e))) and ((not (f: g)) or (not ((h: i) and (j: k)))) { .foo { a: b; } } CSS -@-prefix-supports (a: b) and (c: d) or (not (d: e)) and ((not (f: g)) or (not ((h: i) and (j: k)))) { +@-prefix-supports (((a: b) and (c: d)) or (not (d: e))) and ((not (f: g)) or (not ((h: i) and (j: k)))) { + .foo { + a: b; + } +} +SCSS + end + + def test_supports_allows_similar_operators_without_parens + assert_equal <<CSS, render(<<SCSS) +@supports (a: b) and (c: d) and (e: f) { + .foo { + a: b; } } +@supports (a: b) or (c: d) or (e: f) { + .foo { + a: b; } } +CSS +@supports (a: b) and (c: d) and (e: f) { + .foo { + a: b; + } +} + +@supports (a: b) or (c: d) or (e: f) { .foo { a: b; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/test/sass/scss/scss_test.rb new/test/sass/scss/scss_test.rb --- old/test/sass/scss/scss_test.rb 2015-02-27 03:29:00.000000000 +0100 +++ new/test/sass/scss/scss_test.rb 2015-05-23 04:17:06.000000000 +0200 @@ -2296,14 +2296,14 @@ def test_supports_with_expressions assert_equal <<CSS, render(<<SCSS) -@supports (feature1: val) and (feature2: val) or (not (feature23: val4)) { +@supports ((feature1: val) and (feature2: val)) or (not (feature23: val4)) { foo { a: b; } } CSS $query: "(feature1: val)"; $feature: feature2; $val: val; -@supports \#{$query} and ($feature: $val) or (not ($feature + 3: $val + 4)) { +@supports (\#{$query} and ($feature: $val)) or (not ($feature + 3: $val + 4)) { foo {a: b} } SCSS