sass 3.4.13 → 3.4.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,15 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 8d20c295937040233d2c011ca20001285180ba16
4
- data.tar.gz: 6335a222a12384382336d048635bcd0e0b3b473f
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ NDA5ZDI0Y2RkM2M2NTNkZjI1YzFiMDhkNGM0MmRiNTA4NDE4NThiMw==
5
+ data.tar.gz: !binary |-
6
+ MzMxNGY0ZTk1ZDdhYjFmNTYwOGY3MjUyN2I2NjQ5NGIwNGIxZDlhNg==
5
7
  SHA512:
6
- metadata.gz: 36072d55532236efa0e689550fddd097ae58e3bfa1e889e609d91fabf31f05b12c02cf04fa2803c0dce1b42ae0f460e110efb55b3614f1205da0daf848b7fee7
7
- data.tar.gz: 7fd86b668d23751664fb507def2a7dec79ccbb311b756abcded9963a3a5422d4177798e3af9a0db17c8ec5858943bef8302ae6f92cdbe0f12d57b9013431692c
8
+ metadata.gz: !binary |-
9
+ YzFkYzMyZDgzM2ZlZjUzOWE4NDZkNTI1ZjI1ZGY2OTNkNjQxMTRmZGNmMWRh
10
+ MWEwMzdmY2M1ZmZmYTg3NmY0NDZlYTEzYjgxYTlkZjA4NzkwN2RkNjAxNDFh
11
+ Yjk5MGVjMGY5MTIyYjgwYjdkMmI1YTU5MzM0Zjg2ODY5YWY0ZTc=
12
+ data.tar.gz: !binary |-
13
+ Yzc0NTE0NWMwMjg4MWY5MTkwMjY4ODY0ZTBmOTIzZWJiMDJkNWM5NzJjYWEy
14
+ OTBiYzBiYTRlYTFjODdmNThmOTMxMzI0ZmM5ZjYxMDk4NWY5OThkNTJmMGZl
15
+ NTcyNjQ1NGJjZGQ4MTQ5NjhmMzc1OGQ1NTIyMTMwZTRlYmJmMmQ=
@@ -1,4 +1,4 @@
1
- Copyright (c) 2006-2014 Hampton Catlin, Natalie Weizenbaum, and Chris Eppstein
1
+ Copyright (c) 2006-2015 Hampton Catlin, Natalie Weizenbaum, and Chris Eppstein
2
2
 
3
3
  Permission is hereby granted, free of charge, to any person obtaining
4
4
  a copy of this software and associated documentation files (the
data/VERSION CHANGED
@@ -1 +1 @@
1
- 3.4.13
1
+ 3.4.14
@@ -1 +1 @@
1
- 27 February 2015 02:28:58 UTC
1
+ 23 May 2015 02:17:06 UTC
@@ -17,12 +17,12 @@ module Sass
17
17
  # @see Base#\_retrieve
18
18
  def _retrieve(key, version, sha)
19
19
  return unless File.readable?(path_to(key))
20
- File.open(path_to(key), "rb") do |f|
21
- if f.readline("\n").strip == version && f.readline("\n").strip == sha
22
- return f.read
23
- end
24
- end
25
20
  begin
21
+ File.open(path_to(key), "rb") do |f|
22
+ if f.readline("\n").strip == version && f.readline("\n").strip == sha
23
+ return f.read
24
+ end
25
+ end
26
26
  File.unlink path_to(key)
27
27
  rescue Errno::ENOENT
28
28
  # Already deleted. Race condition?
@@ -84,7 +84,7 @@ module Sass
84
84
  # This class handles the parsing and compilation of the Sass template.
85
85
  # Example usage:
86
86
  #
87
- # template = File.load('stylesheets/sassy.sass')
87
+ # template = File.read('stylesheets/sassy.sass')
88
88
  # sass_engine = Sass::Engine.new(template)
89
89
  # output = sass_engine.render
90
90
  # puts output
@@ -157,7 +157,7 @@ module Sass
157
157
  # @api public
158
158
  DEFAULT_OPTIONS = {
159
159
  :style => :nested,
160
- :load_paths => ['.'],
160
+ :load_paths => [],
161
161
  :cache => true,
162
162
  :cache_location => './.sass-cache',
163
163
  :syntax => :sass,
@@ -217,7 +217,7 @@ module Sass::Script
217
217
  # for selector arguments. They can take a plain string, a list of
218
218
  # lists as returned by `&` or anything in between:
219
219
  #
220
- # * A plain sring, such as `".foo .bar, .baz .bang"`.
220
+ # * A plain string, such as `".foo .bar, .baz .bang"`.
221
221
  # * A space-separated list of strings such as `(".foo" ".bar")`.
222
222
  # * A comma-separated list of strings such as `(".foo .bar", ".baz .bang")`.
223
223
  # * A comma-separated list of space-separated lists of strings such
@@ -1398,6 +1398,15 @@ module Sass::Script
1398
1398
  # @raise [ArgumentError] if `$string` isn't a string
1399
1399
  def unquote(string)
1400
1400
  unless string.is_a?(Sass::Script::Value::String)
1401
+ # Don't warn multiple times for the same source line.
1402
+ # rubocop:disable GlobalVars
1403
+ $_sass_warned_for_unquote ||= Set.new
1404
+ frame = environment.stack.frames.last
1405
+ key = [frame.filename, frame.line] if frame
1406
+ return string if frame && $_sass_warned_for_unquote.include?(key)
1407
+ $_sass_warned_for_unquote << key if frame
1408
+ # rubocop:enable GlobalVars
1409
+
1401
1410
  Sass::Util.sass_warn(<<MESSAGE.strip)
1402
1411
  DEPRECATION WARNING: Passing #{string.to_sass}, a non-string value, to unquote()
1403
1412
  will be an error in future versions of Sass.
@@ -85,12 +85,19 @@ module Sass::Script::Tree
85
85
  raise Sass::SyntaxError.new("Undefined operation: \"#{value1} #{@operator} #{value2}\".")
86
86
  end
87
87
 
88
- if @operator == :eq && value1.is_a?(Sass::Script::Value::Number) &&
89
- value2.is_a?(Sass::Script::Value::Number) && result == Sass::Script::Value::Bool::TRUE &&
90
- value1.unitless? != value2.unitless?
88
+ if (@operator == :eq || @operator == :neq) && value1.is_a?(Sass::Script::Value::Number) &&
89
+ value2.is_a?(Sass::Script::Value::Number) && value1.unitless? != value2.unitless? &&
90
+ result == (if @operator == :eq
91
+ Sass::Script::Value::Bool::TRUE
92
+ else
93
+ Sass::Script::Value::Bool::FALSE
94
+ end)
95
+
96
+ operation = "#{value1} #{@operator == :eq ? '==' : '!='} #{value2}"
97
+ future_value = @operator == :neq
91
98
  Sass::Util.sass_warn <<WARNING
92
99
  DEPRECATION WARNING on line #{line}#{" of #{filename}" if filename}:
93
- The result of `#{value1} == #{value2}` will be `false` in future releases of Sass.
100
+ The result of `#{operation}` will be `#{future_value}` in future releases of Sass.
94
101
  Unitless numbers will no longer be equal to the same numbers with units.
95
102
  WARNING
96
103
  end
@@ -232,7 +232,7 @@ module Sass::Script::Value
232
232
  raise ArgumentError.new("Color.new(array) expects a three- or four-element array")
233
233
  end
234
234
 
235
- red, green, blue = attrs[0...3].map {|c| c.to_i}
235
+ red, green, blue = attrs[0...3].map {|c| c.round}
236
236
  @attrs = {:red => red, :green => green, :blue => blue}
237
237
  @attrs[:alpha] = attrs[3] ? attrs[3].to_f : 1
238
238
  @representation = representation
@@ -258,7 +258,7 @@ module Sass::Script::Value
258
258
 
259
259
  [:red, :green, :blue].each do |k|
260
260
  next if @attrs[k].nil?
261
- @attrs[k] = Sass::Util.restrict(@attrs[k].to_i, 0..255)
261
+ @attrs[k] = Sass::Util.restrict(@attrs[k].round, 0..255)
262
262
  end
263
263
 
264
264
  [:saturation, :lightness].each do |k|
@@ -283,7 +283,7 @@ module Sass::Script::Value
283
283
  green = $2.ljust(2, $2).to_i(16)
284
284
  blue = $3.ljust(2, $3).to_i(16)
285
285
 
286
- hex_string = '##{hex_string}' unless hex_string[0] == ?#
286
+ hex_string = "##{hex_string}" unless hex_string[0] == ?#
287
287
  attrs = {:red => red, :green => green, :blue => blue, :representation => hex_string}
288
288
  attrs[:alpha] = alpha if alpha
289
289
  new(attrs)
@@ -382,7 +382,7 @@ module Sass::Script::Value
382
382
  # @return [Array<Fixnum>] A frozen four-element array of the hue,
383
383
  # saturation, lightness, and alpha values (respectively) of the color
384
384
  def hsla
385
- [hue, saturation, lightness].freeze
385
+ [hue, saturation, lightness, alpha].freeze
386
386
  end
387
387
 
388
388
  # The SassScript `==` operation.
@@ -562,7 +562,9 @@ module Sass
562
562
  def supports_operator
563
563
  cond = supports_condition_in_parens
564
564
  return unless cond
565
- while (op = tok(/and|or/i))
565
+ re = /and|or/i
566
+ while (op = tok(re))
567
+ re = /#{op}/i
566
568
  ss
567
569
  cond = Sass::Supports::Operator.new(
568
570
  cond, expr!(:supports_condition_in_parens), op)
@@ -586,11 +588,6 @@ module Sass
586
588
  end
587
589
  end
588
590
 
589
- def supports_declaration_condition
590
- return unless tok(/\(/); ss
591
- supports_declaration_body
592
- end
593
-
594
591
  def supports_interpolation
595
592
  interp = interpolation
596
593
  return unless interp
@@ -58,11 +58,11 @@ module Sass::Supports
58
58
  end
59
59
 
60
60
  def to_css
61
- "#{left_parens @left.to_css} #{op} #{right_parens @right.to_css}"
61
+ "#{parens @left, @left.to_css} #{op} #{parens @right, @right.to_css}"
62
62
  end
63
63
 
64
64
  def to_src(options)
65
- "#{left_parens @left.to_src(options)} #{op} #{right_parens @right.to_src(options)}"
65
+ "#{parens @left, @left.to_src(options)} #{op} #{parens @right, @right.to_src(options)}"
66
66
  end
67
67
 
68
68
  def deep_copy
@@ -79,14 +79,12 @@ module Sass::Supports
79
79
 
80
80
  private
81
81
 
82
- def left_parens(str)
83
- return "(#{str})" if @left.is_a?(Negation)
84
- str
85
- end
86
-
87
- def right_parens(str)
88
- return "(#{str})" if @right.is_a?(Negation) || @right.is_a?(Operator)
89
- str
82
+ def parens(condition, str)
83
+ if condition.is_a?(Negation) || (condition.is_a?(Operator) && condition.op != op)
84
+ return "(#{str})"
85
+ else
86
+ return str
87
+ end
90
88
  end
91
89
  end
92
90
 
@@ -55,13 +55,14 @@ module Sass
55
55
  return f if f
56
56
  end
57
57
 
58
- message = "File to import not found or unreadable: #{@imported_filename}.\n"
58
+ lines = ["File to import not found or unreadable: #{@imported_filename}."]
59
+
59
60
  if paths.size == 1
60
- message << "Load path: #{paths.first}"
61
- else
62
- message << "Load paths:\n " << paths.join("\n ")
61
+ lines << "Load path: #{paths.first}"
62
+ elsif !paths.empty?
63
+ lines << "Load paths:\n #{paths.join("\n ")}"
63
64
  end
64
- raise SyntaxError.new(message)
65
+ raise SyntaxError.new(lines.join("\n"))
65
66
  rescue SyntaxError => e
66
67
  raise SyntaxError.new(e.message, :line => line, :filename => @filename)
67
68
  end
@@ -1311,7 +1311,7 @@ $query: "(feature1: val)"
1311
1311
  $feature: feature2
1312
1312
  $val: val
1313
1313
 
1314
- @supports \#{$query} and ($feature: $val) or (not ($feature + 3: $val + 4))
1314
+ @supports (\#{$query} and ($feature: $val)) or (not ($feature + 3: $val + 4))
1315
1315
  foo
1316
1316
  a: b
1317
1317
  SASS
@@ -1319,7 +1319,7 @@ $query: "(feature1: val)";
1319
1319
  $feature: feature2;
1320
1320
  $val: val;
1321
1321
 
1322
- @supports \#{$query} and ($feature: $val) or (not ($feature + 3: $val + 4)) {
1322
+ @supports (\#{$query} and ($feature: $val)) or (not ($feature + 3: $val + 4)) {
1323
1323
  foo {
1324
1324
  a: b;
1325
1325
  }
@@ -680,7 +680,6 @@ SASS
680
680
  def test_nonexistent_import
681
681
  assert_raise_message(Sass::SyntaxError, <<ERR.rstrip) do
682
682
  File to import not found or unreadable: nonexistent.sass.
683
- Load path: #{Dir.pwd}
684
683
  ERR
685
684
  render("@import nonexistent.sass")
686
685
  end
@@ -689,7 +688,6 @@ ERR
689
688
  def test_nonexistent_extensionless_import
690
689
  assert_raise_message(Sass::SyntaxError, <<ERR.rstrip) do
691
690
  File to import not found or unreadable: nonexistent.
692
- Load path: #{Dir.pwd}
693
691
  ERR
694
692
  render("@import nonexistent")
695
693
  end
@@ -220,10 +220,10 @@ WARNING
220
220
  end
221
221
 
222
222
  def test_rgb_percent
223
- assert_equal("#123456", evaluate("rgb(7.1%, 20.4%, 34%)"))
223
+ assert_equal("#123457", evaluate("rgb(7.1%, 20.4%, 34%)"))
224
224
  assert_equal("#beaded", evaluate("rgb(74.7%, 173, 93%)"))
225
225
  assert_equal("#beaded", evaluate("rgb(190, 68%, 237)"))
226
- assert_equal("springgreen", evaluate("rgb(0%, 100%, 50%)"))
226
+ assert_equal("#00ff80", evaluate("rgb(0%, 100%, 50%)"))
227
227
  end
228
228
 
229
229
  def test_rgb_clamps_bounds
@@ -813,11 +813,11 @@ WARNING
813
813
  end
814
814
 
815
815
  def test_mix
816
- assert_equal("#7f007f", evaluate("mix(#f00, #00f)"))
817
- assert_equal("#7f7f7f", evaluate("mix(#f00, #0ff)"))
818
- assert_equal("#7f9055", evaluate("mix(#f70, #0aa)"))
819
- assert_equal("#3f00bf", evaluate("mix(#f00, #00f, 25%)"))
820
- assert_equal("rgba(63, 0, 191, 0.75)", evaluate("mix(rgba(255, 0, 0, 0.5), #00f)"))
816
+ assert_equal("purple", evaluate("mix(#f00, #00f)"))
817
+ assert_equal("gray", evaluate("mix(#f00, #0ff)"))
818
+ assert_equal("#809155", evaluate("mix(#f70, #0aa)"))
819
+ assert_equal("#4000bf", evaluate("mix(#f00, #00f, 25%)"))
820
+ assert_equal("rgba(64, 0, 191, 0.75)", evaluate("mix(rgba(255, 0, 0, 0.5), #00f)"))
821
821
  assert_equal("red", evaluate("mix(#f00, #00f, 100%)"))
822
822
  assert_equal("blue", evaluate("mix(#f00, #00f, 0%)"))
823
823
  assert_equal("rgba(255, 0, 0, 0.5)", evaluate("mix(#f00, transparentize(#00f, 1))"))
@@ -1,9 +1,9 @@
1
1
  #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; }
2
2
  #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; }
3
3
 
4
- #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; }
4
+ #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; }
5
5
 
6
- #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; }
6
+ #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; }
7
7
 
8
8
  #times { num-num: 7; num-col: #7496b8; col-num: #092345; col-col: #243648; }
9
9
 
@@ -31,6 +31,11 @@ class SassScriptTest < MiniTest::Test
31
31
  assert_equal 0, Sass::Script::Value::Color.new([1, 2, 3, -0.1]).alpha
32
32
  end
33
33
 
34
+ def test_color_from_hex
35
+ assert_equal Sass::Script::Value::Color.new([0,0,0]), Sass::Script::Value::Color.from_hex('000000')
36
+ assert_equal Sass::Script::Value::Color.new([0,0,0]), Sass::Script::Value::Color.from_hex('#000000')
37
+ end
38
+
34
39
  def test_string_escapes
35
40
  assert_equal "'", resolve("\"'\"")
36
41
  assert_equal '"', resolve("\"\\\"\"")
@@ -471,6 +476,12 @@ SASS
471
476
  DEPRECATION WARNING on line 1 of test_operator_unit_conversion_inline.sass:
472
477
  The result of `1 == 1cm` will be `false` in future releases of Sass.
473
478
  Unitless numbers will no longer be equal to the same numbers with units.
479
+ WARNING
480
+
481
+ assert_warning(<<WARNING) {assert_equal "false", resolve("1 != 1cm")}
482
+ DEPRECATION WARNING on line 1 of test_operator_unit_conversion_inline.sass:
483
+ The result of `1 != 1cm` will be `true` in future releases of Sass.
484
+ Unitless numbers will no longer be equal to the same numbers with units.
474
485
  WARNING
475
486
  end
476
487
 
@@ -552,7 +563,7 @@ WARNING
552
563
  def test_case_insensitive_color_names
553
564
  assert_equal "BLUE", resolve("BLUE")
554
565
  assert_equal "rEd", resolve("rEd")
555
- assert_equal "#7f4000", resolve("mix(GrEeN, ReD)")
566
+ assert_equal "#804000", resolve("mix(GrEeN, ReD)")
556
567
  end
557
568
 
558
569
  def test_empty_list
@@ -634,14 +634,14 @@ SCSS
634
634
 
635
635
  def test_supports
636
636
  assert_equal <<CSS, render(<<SCSS)
637
- @supports (a: b) and (c: d) or (not (d: e)) and ((not (f: g)) or (not ((h: i) and (j: k)))) {
637
+ @supports (((a: b) and (c: d)) or (not (d: e))) and ((not (f: g)) or (not ((h: i) and (j: k)))) {
638
638
  .foo {
639
639
  a: b; } }
640
640
  @supports (a: b) {
641
641
  .foo {
642
642
  a: b; } }
643
643
  CSS
644
- @supports (a: b) and (c: d) or (not (d: e)) and ((not (f: g)) or (not ((h: i) and (j: k)))) {
644
+ @supports (((a: b) and (c: d)) or (not (d: e))) and ((not (f: g)) or (not ((h: i) and (j: k)))) {
645
645
  .foo {
646
646
  a: b;
647
647
  }
@@ -653,13 +653,38 @@ CSS
653
653
  }
654
654
  }
655
655
  SCSS
656
+ end
656
657
 
658
+ def test_supports_with_prefix
657
659
  assert_equal <<CSS, render(<<SCSS)
658
- @-prefix-supports (a: b) and (c: d) or (not (d: e)) and ((not (f: g)) or (not ((h: i) and (j: k)))) {
660
+ @-prefix-supports (((a: b) and (c: d)) or (not (d: e))) and ((not (f: g)) or (not ((h: i) and (j: k)))) {
659
661
  .foo {
660
662
  a: b; } }
661
663
  CSS
662
- @-prefix-supports (a: b) and (c: d) or (not (d: e)) and ((not (f: g)) or (not ((h: i) and (j: k)))) {
664
+ @-prefix-supports (((a: b) and (c: d)) or (not (d: e))) and ((not (f: g)) or (not ((h: i) and (j: k)))) {
665
+ .foo {
666
+ a: b;
667
+ }
668
+ }
669
+ SCSS
670
+ end
671
+
672
+ def test_supports_allows_similar_operators_without_parens
673
+ assert_equal <<CSS, render(<<SCSS)
674
+ @supports (a: b) and (c: d) and (e: f) {
675
+ .foo {
676
+ a: b; } }
677
+ @supports (a: b) or (c: d) or (e: f) {
678
+ .foo {
679
+ a: b; } }
680
+ CSS
681
+ @supports (a: b) and (c: d) and (e: f) {
682
+ .foo {
683
+ a: b;
684
+ }
685
+ }
686
+
687
+ @supports (a: b) or (c: d) or (e: f) {
663
688
  .foo {
664
689
  a: b;
665
690
  }
@@ -2296,14 +2296,14 @@ SCSS
2296
2296
 
2297
2297
  def test_supports_with_expressions
2298
2298
  assert_equal <<CSS, render(<<SCSS)
2299
- @supports (feature1: val) and (feature2: val) or (not (feature23: val4)) {
2299
+ @supports ((feature1: val) and (feature2: val)) or (not (feature23: val4)) {
2300
2300
  foo {
2301
2301
  a: b; } }
2302
2302
  CSS
2303
2303
  $query: "(feature1: val)";
2304
2304
  $feature: feature2;
2305
2305
  $val: val;
2306
- @supports \#{$query} and ($feature: $val) or (not ($feature + 3: $val + 4)) {
2306
+ @supports (\#{$query} and ($feature: $val)) or (not ($feature + 3: $val + 4)) {
2307
2307
  foo {a: b}
2308
2308
  }
2309
2309
  SCSS
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sass
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.4.13
4
+ version: 3.4.14
5
5
  platform: ruby
6
6
  authors:
7
7
  - Natalie Weizenbaum
@@ -10,55 +10,54 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2015-02-27 00:00:00.000000000 Z
13
+ date: 2015-05-23 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: yard
17
17
  requirement: !ruby/object:Gem::Requirement
18
18
  requirements:
19
- - - '>='
19
+ - - ! '>='
20
20
  - !ruby/object:Gem::Version
21
21
  version: 0.5.3
22
22
  type: :development
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
25
25
  requirements:
26
- - - '>='
26
+ - - ! '>='
27
27
  - !ruby/object:Gem::Version
28
28
  version: 0.5.3
29
29
  - !ruby/object:Gem::Dependency
30
30
  name: maruku
31
31
  requirement: !ruby/object:Gem::Requirement
32
32
  requirements:
33
- - - '>='
33
+ - - ! '>='
34
34
  - !ruby/object:Gem::Version
35
35
  version: 0.5.9
36
36
  type: :development
37
37
  prerelease: false
38
38
  version_requirements: !ruby/object:Gem::Requirement
39
39
  requirements:
40
- - - '>='
40
+ - - ! '>='
41
41
  - !ruby/object:Gem::Version
42
42
  version: 0.5.9
43
43
  - !ruby/object:Gem::Dependency
44
44
  name: minitest
45
45
  requirement: !ruby/object:Gem::Requirement
46
46
  requirements:
47
- - - '>='
47
+ - - ! '>='
48
48
  - !ruby/object:Gem::Version
49
49
  version: '5'
50
50
  type: :development
51
51
  prerelease: false
52
52
  version_requirements: !ruby/object:Gem::Requirement
53
53
  requirements:
54
- - - '>='
54
+ - - ! '>='
55
55
  - !ruby/object:Gem::Version
56
56
  version: '5'
57
- description: |2
58
- Sass makes CSS fun again. Sass is an extension of CSS3, adding
59
- nested rules, variables, mixins, selector inheritance, and more.
60
- It's translated to well-formatted, standard CSS using the
61
- command line tool or a web-framework plugin.
57
+ description: ! " Sass makes CSS fun again. Sass is an extension of CSS3, adding\n
58
+ \ nested rules, variables, mixins, selector inheritance, and more.\n It's
59
+ translated to well-formatted, standard CSS using the\n command line tool or
60
+ a web-framework plugin.\n"
62
61
  email: sass-lang@googlegroups.com
63
62
  executables:
64
63
  - sass
@@ -381,43 +380,43 @@ require_paths:
381
380
  - lib
382
381
  required_ruby_version: !ruby/object:Gem::Requirement
383
382
  requirements:
384
- - - '>='
383
+ - - ! '>='
385
384
  - !ruby/object:Gem::Version
386
385
  version: 1.8.7
387
386
  required_rubygems_version: !ruby/object:Gem::Requirement
388
387
  requirements:
389
- - - '>='
388
+ - - ! '>='
390
389
  - !ruby/object:Gem::Version
391
390
  version: '0'
392
391
  requirements: []
393
392
  rubyforge_project: sass
394
- rubygems_version: 2.2.2
393
+ rubygems_version: 2.4.3
395
394
  signing_key:
396
395
  specification_version: 4
397
396
  summary: A powerful but elegant CSS compiler that makes CSS fun again.
398
397
  test_files:
398
+ - test/sass/importer_test.rb
399
+ - test/sass/engine_test.rb
399
400
  - test/sass/value_helpers_test.rb
400
- - test/sass/conversion_test.rb
401
- - test/sass/cache_test.rb
402
- - test/sass/script_test.rb
403
401
  - test/sass/superselector_test.rb
404
- - test/sass/callbacks_test.rb
405
- - test/sass/source_map_test.rb
406
- - test/sass/script_conversion_test.rb
407
- - test/sass/util_test.rb
408
- - test/sass/plugin_test.rb
409
- - test/sass/extend_test.rb
410
- - test/sass/scss/rx_test.rb
411
- - test/sass/scss/css_test.rb
412
- - test/sass/scss/scss_test.rb
413
402
  - test/sass/logger_test.rb
414
- - test/sass/importer_test.rb
403
+ - test/sass/util_test.rb
404
+ - test/sass/cache_test.rb
415
405
  - test/sass/encoding_test.rb
416
- - test/sass/engine_test.rb
417
- - test/sass/exec_test.rb
418
- - test/sass/util/normalized_map_test.rb
406
+ - test/sass/source_map_test.rb
407
+ - test/sass/css2sass_test.rb
408
+ - test/sass/plugin_test.rb
409
+ - test/sass/conversion_test.rb
419
410
  - test/sass/util/subset_map_test.rb
420
411
  - test/sass/util/multibyte_string_scanner_test.rb
412
+ - test/sass/util/normalized_map_test.rb
413
+ - test/sass/exec_test.rb
414
+ - test/sass/scss/rx_test.rb
415
+ - test/sass/scss/scss_test.rb
416
+ - test/sass/scss/css_test.rb
417
+ - test/sass/callbacks_test.rb
421
418
  - test/sass/functions_test.rb
419
+ - test/sass/extend_test.rb
420
+ - test/sass/script_conversion_test.rb
421
+ - test/sass/script_test.rb
422
422
  - test/sass/compiler_test.rb
423
- - test/sass/css2sass_test.rb