sass 3.4.15 → 3.4.16

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,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 00cf7afef986f13c1fccaf0cf889a398d7b86910
4
- data.tar.gz: 34e170181ba5a960190d6e87f2e6707557383ed9
3
+ metadata.gz: 0dff26b06c7065753c46919a6edcabb5eba41d14
4
+ data.tar.gz: 55acb3b26ba3d248bdf3e2e3e1c8263e41405faa
5
5
  SHA512:
6
- metadata.gz: 363cd78182ff5dd174b78914436f98cd7c14bb60418103a0f1a46392aa3ef6daf5cd0c09e9ca43ce3b3762ca90046d3d31ee0246f3beaa52ee35828d4306be27
7
- data.tar.gz: 231f3556d06f74cd61b355cfb4143549100bb01efd944de3b781e6f256d6feed534582460f9abfcc9ec994cd901bdfcbf110019eb6db33e11b8794483d38bcad
6
+ metadata.gz: 8d763cdfcb6c8b78626b39101f0d92cc48f2c038307f96de6929fcd5b51a3e7ec03f889e55b0dbb4cbfdfcd8848469476ad6950e9c41b40efd7f3bdefe36a31b
7
+ data.tar.gz: a5e4c150a05613f1a40fc3b7f380e62aa4e693aadf674b6361fad3205b126ce39bd9912ac21965e70997ffe0f52c29c0261bece728e6d374ce8ad735f1b93205
@@ -0,0 +1,10 @@
1
+ Sass is more than a technology; Sass is driven by the community of individuals
2
+ that power its development and use every day. As a community, we want to embrace
3
+ the very differences that have made our collaboration so powerful, and work
4
+ together to provide the best environment for learning, growing, and sharing of
5
+ ideas. It is imperative that we keep Sass a fun, welcoming, challenging, and
6
+ fair place to play.
7
+
8
+ [The full community guidelines can be found on the Sass website.][link]
9
+
10
+ [link]: http://sass-lang.com/community-guidelines
data/VERSION CHANGED
@@ -1 +1 @@
1
- 3.4.15
1
+ 3.4.16
@@ -1 +1 @@
1
- 23 June 2015 00:43:28 UTC
1
+ 10 July 2015 23:22:27 UTC
@@ -96,8 +96,13 @@ module Sass
96
96
 
97
97
  IMPORTANT = /!#{W}important/i
98
98
 
99
+ # A unit is like an IDENT, but disallows a hyphen followed by a digit.
100
+ # This allows "1px-2px" to be interpreted as subtraction rather than "1"
101
+ # with the unit "px-2px". It also allows "%".
102
+ UNIT = /-?#{NMSTART}(?:[a-zA-Z0-9_]|#{NONASCII}|#{ESCAPE}|-(?!\d))*|%/
103
+
99
104
  UNITLESS_NUMBER = /(?:[0-9]+|[0-9]*\.[0-9]+)(?:[eE][+-]?\d+)?/
100
- NUMBER = /#{UNITLESS_NUMBER}(?:#{IDENT}|%)?/
105
+ NUMBER = /#{UNITLESS_NUMBER}(?:#{UNIT})?/
101
106
  PERCENTAGE = /#{UNITLESS_NUMBER}%/
102
107
 
103
108
  URI = /url\(#{W}(?:#{STRING}|#{URL})#{W}\)/i
@@ -123,11 +128,6 @@ module Sass
123
128
  OPTIONAL = /!#{W}optional/i
124
129
  IDENT_START = /-|#{NMSTART}/
125
130
 
126
- # A unit is like an IDENT, but disallows a hyphen followed by a digit.
127
- # This allows "1px-2px" to be interpreted as subtraction rather than "1"
128
- # with the unit "px-2px". It also allows "%".
129
- UNIT = /-?#{NMSTART}(?:[a-zA-Z0-9_]|#{NONASCII}|#{ESCAPE}|-(?!\d))*|%/
130
-
131
131
  IDENT_HYPHEN_INTERP = /-(#\{)/
132
132
  STRING1_NOINTERP = /\"((?:[^\n\r\f\\"#]|#(?!\{)|#{ESCAPE})*)\"/
133
133
  STRING2_NOINTERP = /\'((?:[^\n\r\f\\'#]|#(?!\{)|#{ESCAPE})*)\'/
@@ -23,10 +23,13 @@ class Sass::Tree::Visitors::Convert < Sass::Tree::Visitors::Base
23
23
  def visit_children(parent)
24
24
  @tabs += 1
25
25
  return @format == :sass ? "\n" : " {}\n" if parent.children.empty?
26
+
27
+ res = visit_rule_level(parent.children)
28
+
26
29
  if @format == :sass
27
- "\n" + super.join.rstrip + "\n"
30
+ "\n" + res.rstrip + "\n"
28
31
  else
29
- " {\n" + super.join.rstrip + "\n#{ @tab_chars * (@tabs - 1)}}\n"
32
+ " {\n" + res.rstrip + "\n#{ @tab_chars * (@tabs - 1)}}\n"
30
33
  end
31
34
  ensure
32
35
  @tabs -= 1
@@ -34,20 +37,7 @@ class Sass::Tree::Visitors::Convert < Sass::Tree::Visitors::Base
34
37
 
35
38
  # Ensures proper spacing between top-level nodes.
36
39
  def visit_root(node)
37
- Sass::Util.enum_cons(node.children + [nil], 2).map do |child, nxt|
38
- visit(child) +
39
- if nxt &&
40
- (child.is_a?(Sass::Tree::CommentNode) &&
41
- child.line + child.lines + 1 == nxt.line) ||
42
- (child.is_a?(Sass::Tree::ImportNode) && nxt.is_a?(Sass::Tree::ImportNode) &&
43
- child.line + 1 == nxt.line) ||
44
- (child.is_a?(Sass::Tree::VariableNode) && nxt.is_a?(Sass::Tree::VariableNode) &&
45
- child.line + 1 == nxt.line)
46
- ""
47
- else
48
- "\n"
49
- end
50
- end.join.rstrip + "\n"
40
+ visit_rule_level(node.children)
51
41
  end
52
42
 
53
43
  def visit_charset(node)
@@ -104,7 +94,7 @@ class Sass::Tree::Visitors::Convert < Sass::Tree::Visitors::Base
104
94
  res = "#{tab_str}#{interp_to_src(node.value)}"
105
95
  res.gsub!(/^@import \#\{(.*)\}([^}]*)$/, '@import \1\2')
106
96
  return res + "#{semi}\n" unless node.has_children
107
- res + yield + "\n"
97
+ res + yield
108
98
  end
109
99
 
110
100
  def visit_each(node)
@@ -281,11 +271,30 @@ class Sass::Tree::Visitors::Convert < Sass::Tree::Visitors::Base
281
271
  end
282
272
 
283
273
  def visit_keyframerule(node)
284
- "#{tab_str}#{node.resolved_value}#{yield}\n"
274
+ "#{tab_str}#{node.resolved_value}#{yield}"
285
275
  end
286
276
 
287
277
  private
288
278
 
279
+ # Visit rule-level nodes and return their conversion with appropriate
280
+ # whitespace added.
281
+ def visit_rule_level(nodes)
282
+ Sass::Util.enum_cons(nodes + [nil], 2).map do |child, nxt|
283
+ visit(child) +
284
+ if nxt &&
285
+ (child.is_a?(Sass::Tree::CommentNode) && child.line + child.lines + 1 == nxt.line) ||
286
+ (child.is_a?(Sass::Tree::ImportNode) && nxt.is_a?(Sass::Tree::ImportNode) &&
287
+ child.line + 1 == nxt.line) ||
288
+ (child.is_a?(Sass::Tree::VariableNode) && nxt.is_a?(Sass::Tree::VariableNode) &&
289
+ child.line + 1 == nxt.line) ||
290
+ (child.is_a?(Sass::Tree::PropNode) && nxt.is_a?(Sass::Tree::PropNode))
291
+ ""
292
+ else
293
+ "\n"
294
+ end
295
+ end.join.rstrip + "\n"
296
+ end
297
+
289
298
  def interp_to_src(interp)
290
299
  interp.map {|r| r.is_a?(String) ? r : r.to_sass(@options)}.join
291
300
  end
@@ -571,6 +571,9 @@ module Sass
571
571
  return @listen_geq_2 unless @listen_geq_2.nil?
572
572
  @listen_geq_2 =
573
573
  begin
574
+ # Make sure we're loading listen/version from the same place that
575
+ # we're loading listen itself.
576
+ load_listen!
574
577
  require 'listen/version'
575
578
  version_geq(::Listen::VERSION, '2.0.0')
576
579
  rescue LoadError
@@ -1292,7 +1295,7 @@ module Sass
1292
1295
  require 'listen'
1293
1296
  rescue LoadError => e
1294
1297
  if version_geq(RUBY_VERSION, "1.9.3")
1295
- version_constraint = "~> 2.7"
1298
+ version_constraint = "~> 3.0"
1296
1299
  else
1297
1300
  version_constraint = "~> 1.1"
1298
1301
  end
@@ -43,6 +43,7 @@ foo bar
43
43
  baz bang
44
44
  baz: bang
45
45
  bip: bop
46
+
46
47
  blat: boo
47
48
  SASS
48
49
  foo bar {
@@ -50,6 +51,7 @@ foo bar {
50
51
  baz: bang;
51
52
  bip: bop;
52
53
  }
54
+
53
55
  blat: boo;
54
56
  }
55
57
  SCSS
@@ -310,17 +312,21 @@ SCSS
310
312
  assert_renders <<SASS, <<SCSS
311
313
  foo
312
314
  bar: baz
315
+
313
316
  // bip bop
314
317
  // beep boop
315
318
  bang: bizz
319
+
316
320
  // bubble bubble
317
321
  // toil trouble
318
322
  SASS
319
323
  foo {
320
324
  bar: baz;
325
+
321
326
  // bip bop
322
327
  // beep boop
323
328
  bang: bizz;
329
+
324
330
  // bubble bubble
325
331
  // toil trouble
326
332
  }
@@ -329,10 +335,12 @@ SCSS
329
335
  assert_sass_to_scss <<SCSS, <<SASS
330
336
  foo {
331
337
  bar: baz;
338
+
332
339
  // bip bop
333
340
  // beep boop
334
341
  // bap blimp
335
342
  bang: bizz;
343
+
336
344
  // bubble bubble
337
345
  // toil trouble
338
346
  // gorp
@@ -340,10 +348,12 @@ foo {
340
348
  SCSS
341
349
  foo
342
350
  bar: baz
351
+
343
352
  // bip bop
344
353
  beep boop
345
354
  bap blimp
346
355
  bang: bizz
356
+
347
357
  // bubble bubble
348
358
  toil trouble
349
359
  gorp
@@ -443,17 +453,21 @@ SCSS
443
453
  assert_renders <<SASS, <<SCSS
444
454
  foo
445
455
  bar: baz
456
+
446
457
  /* bip bop
447
458
  * beep boop
448
459
  bang: bizz
460
+
449
461
  /* bubble bubble
450
462
  * toil trouble
451
463
  SASS
452
464
  foo {
453
465
  bar: baz;
466
+
454
467
  /* bip bop
455
468
  * beep boop */
456
469
  bang: bizz;
470
+
457
471
  /* bubble bubble
458
472
  * toil trouble */
459
473
  }
@@ -462,10 +476,12 @@ SCSS
462
476
  assert_sass_to_scss <<SCSS, <<SASS
463
477
  foo {
464
478
  bar: baz;
479
+
465
480
  /* bip bop
466
481
  * beep boop
467
482
  * bap blimp */
468
483
  bang: bizz;
484
+
469
485
  /* bubble bubble
470
486
  * toil trouble
471
487
  * gorp */
@@ -473,10 +489,12 @@ foo {
473
489
  SCSS
474
490
  foo
475
491
  bar: baz
492
+
476
493
  /* bip bop
477
494
  beep boop
478
495
  bap blimp
479
496
  bang: bizz
497
+
480
498
  /* bubble bubble
481
499
  toil trouble
482
500
  gorp
@@ -613,10 +631,12 @@ SASS
613
631
  assert_renders <<SASS, <<SCSS
614
632
  foo
615
633
  @debug 12px
634
+
616
635
  bar: baz
617
636
  SASS
618
637
  foo {
619
638
  @debug 12px;
639
+
620
640
  bar: baz;
621
641
  }
622
642
  SCSS
@@ -626,10 +646,12 @@ SCSS
626
646
  assert_renders <<SASS, <<SCSS
627
647
  foo
628
648
  @error "oh no!"
649
+
629
650
  bar: baz
630
651
  SASS
631
652
  foo {
632
653
  @error "oh no!";
654
+
633
655
  bar: baz;
634
656
  }
635
657
  SCSS
@@ -639,10 +661,12 @@ SCSS
639
661
  assert_renders <<SASS, <<SCSS
640
662
  foo
641
663
  @foo #bar "baz"
664
+
642
665
  bar: baz
643
666
  SASS
644
667
  foo {
645
668
  @foo #bar "baz";
669
+
646
670
  bar: baz;
647
671
  }
648
672
  SCSS
@@ -674,6 +698,7 @@ foo
674
698
  @foo #bar "baz"
675
699
  #blat
676
700
  a: b
701
+
677
702
  .bang
678
703
  c: d
679
704
  e: f
@@ -685,6 +710,7 @@ foo {
685
710
  #blat {
686
711
  a: b;
687
712
  }
713
+
688
714
  .bang {
689
715
  c: d;
690
716
  e: f;
@@ -701,11 +727,14 @@ SCSS
701
727
  foo
702
728
  @foo #bar "baz"
703
729
  g: h
730
+
704
731
  #blat
705
732
  a: b
733
+
706
734
  .bang
707
735
  c: d
708
736
  e: f
737
+
709
738
  i: j
710
739
 
711
740
  bar: baz
@@ -713,13 +742,16 @@ SASS
713
742
  foo {
714
743
  @foo #bar "baz" {
715
744
  g: h;
745
+
716
746
  #blat {
717
747
  a: b;
718
748
  }
749
+
719
750
  .bang {
720
751
  c: d;
721
752
  e: f;
722
753
  }
754
+
723
755
  i: j;
724
756
  }
725
757
 
@@ -741,6 +773,7 @@ SCSS
741
773
  foo
742
774
  @for $a from $b to $c
743
775
  a: b
776
+
744
777
  @for $c from 1 to 16
745
778
  d: e
746
779
  f: g
@@ -749,6 +782,7 @@ foo {
749
782
  @for $a from $b to $c {
750
783
  a: b;
751
784
  }
785
+
752
786
  @for $c from 1 to 16 {
753
787
  d: e;
754
788
  f: g;
@@ -762,6 +796,7 @@ SCSS
762
796
  foo
763
797
  @while flaz($a + $b)
764
798
  a: b
799
+
765
800
  @while 1
766
801
  d: e
767
802
  f: g
@@ -770,6 +805,7 @@ foo {
770
805
  @while flaz($a + $b) {
771
806
  a: b;
772
807
  }
808
+
773
809
  @while 1 {
774
810
  d: e;
775
811
  f: g;
@@ -783,6 +819,7 @@ SCSS
783
819
  foo
784
820
  @if $foo or $bar
785
821
  a: b
822
+
786
823
  @if $baz
787
824
  d: e
788
825
  @else if $bang
@@ -794,6 +831,7 @@ foo {
794
831
  @if $foo or $bar {
795
832
  a: b;
796
833
  }
834
+
797
835
  @if $baz {
798
836
  d: e;
799
837
  }
@@ -939,10 +977,12 @@ SCSS
939
977
  assert_renders <<SASS, <<SCSS
940
978
  .foo
941
979
  @extend .bar
980
+
942
981
  @extend .baz:bang
943
982
  SASS
944
983
  .foo {
945
984
  @extend .bar;
985
+
946
986
  @extend .baz:bang;
947
987
  }
948
988
  SCSS
@@ -1041,10 +1081,12 @@ SASS
1041
1081
  assert_renders <<SASS, <<SCSS
1042
1082
  foo
1043
1083
  +foo-bar
1084
+
1044
1085
  a: blip
1045
1086
  SASS
1046
1087
  foo {
1047
1088
  @include foo-bar;
1089
+
1048
1090
  a: blip;
1049
1091
  }
1050
1092
  SCSS
@@ -1054,10 +1096,12 @@ SCSS
1054
1096
  assert_renders <<SASS, <<SCSS
1055
1097
  foo
1056
1098
  +foo-bar(12px, "blaz")
1099
+
1057
1100
  a: blip
1058
1101
  SASS
1059
1102
  foo {
1060
1103
  @include foo-bar(12px, "blaz");
1104
+
1061
1105
  a: blip;
1062
1106
  }
1063
1107
  SCSS
@@ -1067,12 +1111,16 @@ SCSS
1067
1111
  assert_renders <<SASS, <<SCSS
1068
1112
  foo
1069
1113
  +foo-bar(12px, "blaz", $blip: blap, $bloop: blop)
1114
+
1070
1115
  +foo-bar($blip: blap, $bloop: blop)
1116
+
1071
1117
  a: blip
1072
1118
  SASS
1073
1119
  foo {
1074
1120
  @include foo-bar(12px, "blaz", $blip: blap, $bloop: blop);
1121
+
1075
1122
  @include foo-bar($blip: blap, $bloop: blop);
1123
+
1076
1124
  a: blip;
1077
1125
  }
1078
1126
  SCSS
@@ -1082,10 +1130,12 @@ SCSS
1082
1130
  assert_renders <<SASS, <<SCSS
1083
1131
  foo
1084
1132
  +foo-bar($a-b_c: val)
1133
+
1085
1134
  a: blip
1086
1135
  SASS
1087
1136
  foo {
1088
1137
  @include foo-bar($a-b_c: val);
1138
+
1089
1139
  a: blip;
1090
1140
  }
1091
1141
  SCSS
@@ -1095,10 +1145,12 @@ SCSS
1095
1145
  assert_renders <<SASS, <<SCSS
1096
1146
  @function foo()
1097
1147
  $var: 1 + 1
1148
+
1098
1149
  @return $var
1099
1150
  SASS
1100
1151
  @function foo() {
1101
1152
  $var: 1 + 1;
1153
+
1102
1154
  @return $var;
1103
1155
  }
1104
1156
  SCSS
@@ -1138,12 +1190,14 @@ $var1: 12px + 15px
1138
1190
 
1139
1191
  foo
1140
1192
  $var2: flaz(#abcdef)
1193
+
1141
1194
  val: $var1 $var2
1142
1195
  SASS
1143
1196
  $var1: 12px + 15px;
1144
1197
 
1145
1198
  foo {
1146
1199
  $var2: flaz(#abcdef);
1200
+
1147
1201
  val: $var1 $var2;
1148
1202
  }
1149
1203
  SCSS
@@ -1155,12 +1209,14 @@ $var1: 12px + 15px !default
1155
1209
 
1156
1210
  foo
1157
1211
  $var2: flaz(#abcdef) !default
1212
+
1158
1213
  val: $var1 $var2
1159
1214
  SASS
1160
1215
  $var1: 12px + 15px !default;
1161
1216
 
1162
1217
  foo {
1163
1218
  $var2: flaz(#abcdef) !default;
1219
+
1164
1220
  val: $var1 $var2;
1165
1221
  }
1166
1222
  SCSS
@@ -1428,7 +1484,9 @@ SCSS
1428
1484
 
1429
1485
  div {
1430
1486
  foo: under-scored-fn($under-scored-var + "before\#{$another-under-scored-var}after");
1487
+
1431
1488
  @include under-scored-mixin($passed-arg);
1489
+
1432
1490
  selector-\#{$under-scored-interp}: bold;
1433
1491
  }
1434
1492
 
@@ -1468,7 +1526,9 @@ $color: blue
1468
1526
  =context($class, $color: red)
1469
1527
  .\#{$class}
1470
1528
  background-color: $color
1529
+
1471
1530
  @content
1531
+
1472
1532
  border-color: $color
1473
1533
 
1474
1534
  +context(parent)
@@ -1480,7 +1540,9 @@ $color: blue;
1480
1540
  @mixin context($class, $color: red) {
1481
1541
  .\#{$class} {
1482
1542
  background-color: $color;
1543
+
1483
1544
  @content;
1545
+
1484
1546
  border-color: $color;
1485
1547
  }
1486
1548
  }
@@ -1565,6 +1627,7 @@ foo bar
1565
1627
  baz bang
1566
1628
  baz: bang
1567
1629
  bip: bop
1630
+
1568
1631
  blat: boo
1569
1632
  SASS
1570
1633
  foo bar {
@@ -1572,6 +1635,7 @@ foo bar {
1572
1635
  baz: bang;
1573
1636
  bip: bop;
1574
1637
  }
1638
+
1575
1639
  blat: boo;
1576
1640
  }
1577
1641
  SCSS
@@ -1581,6 +1645,7 @@ foo bar
1581
1645
  baz bang
1582
1646
  baz: bang
1583
1647
  bip: bop
1648
+
1584
1649
  blat: boo
1585
1650
  SASS
1586
1651
  foo bar {
@@ -1588,6 +1653,7 @@ foo bar {
1588
1653
  baz: bang;
1589
1654
  bip: bop;
1590
1655
  }
1656
+
1591
1657
  blat: boo;
1592
1658
  }
1593
1659
  SCSS
@@ -1598,6 +1664,7 @@ foo bar {
1598
1664
  baz: bang;
1599
1665
  bip: bop;
1600
1666
  }
1667
+
1601
1668
  blat: boo;
1602
1669
  }
1603
1670
  SCSS
@@ -1605,6 +1672,7 @@ foo bar
1605
1672
  baz bang
1606
1673
  baz: bang
1607
1674
  bip: bop
1675
+
1608
1676
  blat: boo
1609
1677
  SASS
1610
1678
 
@@ -1614,6 +1682,7 @@ foo bar {
1614
1682
  baz: bang;
1615
1683
  bip: bop;
1616
1684
  }
1685
+
1617
1686
  blat: boo;
1618
1687
  }
1619
1688
  SCSS
@@ -1621,6 +1690,7 @@ foo bar
1621
1690
  baz bang
1622
1691
  baz: bang
1623
1692
  bip: bop
1693
+
1624
1694
  blat: boo
1625
1695
  SASS
1626
1696
 
@@ -1629,6 +1699,7 @@ foo bar
1629
1699
  baz bang
1630
1700
  baz: bang
1631
1701
  bip: bop
1702
+
1632
1703
  blat: boo
1633
1704
  SASS
1634
1705
  foo bar {
@@ -1636,6 +1707,7 @@ foo bar {
1636
1707
  baz: bang;
1637
1708
  bip: bop;
1638
1709
  }
1710
+
1639
1711
  blat: boo;
1640
1712
  }
1641
1713
  SCSS
@@ -1645,6 +1717,7 @@ foo bar
1645
1717
  baz bang
1646
1718
  baz: bang
1647
1719
  bip: bop
1720
+
1648
1721
  blat: boo
1649
1722
  SASS
1650
1723
  foo bar {
@@ -1652,6 +1725,7 @@ foo bar {
1652
1725
  baz: bang;
1653
1726
  bip: bop;
1654
1727
  }
1728
+
1655
1729
  blat: boo;
1656
1730
  }
1657
1731
  SCSS
@@ -1678,6 +1752,7 @@ SCSS
1678
1752
 
1679
1753
  .foo
1680
1754
  +foo($list...)
1755
+
1681
1756
  +bar(1, $list...)
1682
1757
  SASS
1683
1758
  @mixin foo($args...) {
@@ -1690,6 +1765,7 @@ SASS
1690
1765
 
1691
1766
  .foo {
1692
1767
  @include foo($list...);
1768
+
1693
1769
  @include bar(1, $list...);
1694
1770
  }
1695
1771
  SCSS
@@ -1703,6 +1779,7 @@ SCSS
1703
1779
 
1704
1780
  .foo
1705
1781
  +foo($list..., $map...)
1782
+
1706
1783
  +foo(pos, $list..., $kwd: val, $map...)
1707
1784
  SASS
1708
1785
  @mixin foo($a: b, $c: d) {
@@ -1712,6 +1789,7 @@ SASS
1712
1789
 
1713
1790
  .foo {
1714
1791
  @include foo($list..., $map...);
1792
+
1715
1793
  @include foo(pos, $list..., $kwd: val, $map...);
1716
1794
  }
1717
1795
  SCSS
@@ -1770,6 +1848,7 @@ SCSS
1770
1848
  @at-root
1771
1849
  .bar
1772
1850
  a: b
1851
+
1773
1852
  .baz
1774
1853
  c: d
1775
1854
  SASS
@@ -1778,6 +1857,7 @@ SASS
1778
1857
  .bar {
1779
1858
  a: b;
1780
1859
  }
1860
+
1781
1861
  .baz {
1782
1862
  c: d;
1783
1863
  }
@@ -1852,10 +1932,13 @@ SCSS
1852
1932
  0%
1853
1933
  top: 0
1854
1934
  left: 0
1935
+
1855
1936
  30%
1856
1937
  top: 50px
1938
+
1857
1939
  68%, 72%
1858
1940
  left: 50px
1941
+
1859
1942
  100%
1860
1943
  top: 100px
1861
1944
  left: 100%
@@ -1865,12 +1948,15 @@ SASS
1865
1948
  top: 0;
1866
1949
  left: 0;
1867
1950
  }
1951
+
1868
1952
  30% {
1869
1953
  top: 50px;
1870
1954
  }
1955
+
1871
1956
  68%, 72% {
1872
1957
  left: 50px;
1873
1958
  }
1959
+
1874
1960
  100% {
1875
1961
  top: 100px;
1876
1962
  left: 100%;
@@ -24,10 +24,13 @@ SASS
24
24
  assert_equal(<<SASS, css2sass(<<CSS))
25
25
  li
26
26
  display: none
27
+
27
28
  a
28
29
  text-decoration: none
30
+
29
31
  span
30
32
  color: yellow
33
+
31
34
  &:hover
32
35
  text-decoration: underline
33
36
  SASS
@@ -117,6 +120,7 @@ span.turkey
117
120
 
118
121
  #overhere
119
122
  bored: sorta
123
+
120
124
  /* it's for a good
121
125
  * cause
122
126
  better_than: thread_pools
@@ -168,12 +172,16 @@ CSS
168
172
  assert_equal(<<SASS, css2sass(<<CSS))
169
173
  hello
170
174
  parent: true
175
+
171
176
  there
172
177
  parent: false
178
+
173
179
  who
174
180
  hoo: false
181
+
175
182
  why
176
183
  y: true
184
+
177
185
  when
178
186
  wen: nao
179
187
 
@@ -229,6 +237,7 @@ CSS
229
237
  assert_equal(<<SASS, css2sass(<<CSS))
230
238
  \\:focus
231
239
  a: b
240
+
232
241
  \\:foo
233
242
  bar: baz
234
243
  SASS
@@ -243,14 +252,17 @@ CSS
243
252
  .bar!
244
253
  .baz
245
254
  a: b
255
+
246
256
  .bip
247
257
  c: d
258
+
248
259
  .bar .bonk
249
260
  e: f
250
261
 
251
262
  .flip!
252
263
  &.bar
253
264
  a: b
265
+
254
266
  &.baz
255
267
  c: d
256
268
  SASS
@@ -301,11 +313,13 @@ CSS
301
313
  assert_equal(<<SASS, css2sass(<<CSS))
302
314
  ul
303
315
  width: 10px
316
+
304
317
  div
305
318
  width: 20px
306
319
 
307
320
  article
308
321
  width: 10px
322
+
309
323
  p
310
324
  width: 20px
311
325
  SASS
@@ -328,6 +342,7 @@ CSS
328
342
  assert_equal(<<SASS, css2sass(<<CSS))
329
343
  a
330
344
  color: red
345
+
331
346
  > b
332
347
  SASS
333
348
  a {color: red}
@@ -378,6 +393,7 @@ CSS
378
393
  .foo >
379
394
  .bar
380
395
  a: b
396
+
381
397
  .baz
382
398
  c: d
383
399
  SASS
@@ -389,6 +405,7 @@ CSS
389
405
  .foo
390
406
  &::bar
391
407
  a: b
408
+
392
409
  &::baz
393
410
  c: d
394
411
  SASS
@@ -141,6 +141,10 @@ class ScssRxTest < MiniTest::Test
141
141
  assert_equal "foo\\00007fbar", Sass::SCSS::RX.escape_ident("foo\177bar")
142
142
  end
143
143
 
144
+ def test_no_static_hyphenated_units
145
+ assert_no_match STATIC_VALUE, "20px-20px"
146
+ end
147
+
144
148
  private
145
149
 
146
150
  def assert_match(rx, str)
@@ -457,6 +457,15 @@ foo {a: 1 + // flang }
457
457
  SCSS
458
458
  end
459
459
 
460
+ def test_static_hyphenated_unit
461
+ assert_equal <<CSS, render(<<SCSS)
462
+ foo {
463
+ a: 0px; }
464
+ CSS
465
+ foo {a: 10px-10px }
466
+ SCSS
467
+ end
468
+
460
469
  ## Nested Rules
461
470
 
462
471
  def test_nested_rules
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.15
4
+ version: 3.4.16
5
5
  platform: ruby
6
6
  authors:
7
7
  - Natalie Weizenbaum
@@ -10,48 +10,48 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2015-06-23 00:00:00.000000000 Z
13
+ date: 2015-07-10 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
57
  description: |2
@@ -67,7 +67,8 @@ executables:
67
67
  extensions: []
68
68
  extra_rdoc_files: []
69
69
  files:
70
- - ".yardopts"
70
+ - .yardopts
71
+ - CODE_OF_CONDUCT.md
71
72
  - CONTRIBUTING.md
72
73
  - MIT-LICENSE
73
74
  - README.md
@@ -382,43 +383,43 @@ require_paths:
382
383
  - lib
383
384
  required_ruby_version: !ruby/object:Gem::Requirement
384
385
  requirements:
385
- - - ">="
386
+ - - '>='
386
387
  - !ruby/object:Gem::Version
387
388
  version: 1.8.7
388
389
  required_rubygems_version: !ruby/object:Gem::Requirement
389
390
  requirements:
390
- - - ">="
391
+ - - '>='
391
392
  - !ruby/object:Gem::Version
392
393
  version: '0'
393
394
  requirements: []
394
395
  rubyforge_project: sass
395
- rubygems_version: 2.4.5
396
+ rubygems_version: 2.2.2
396
397
  signing_key:
397
398
  specification_version: 4
398
399
  summary: A powerful but elegant CSS compiler that makes CSS fun again.
399
400
  test_files:
400
- - test/sass/importer_test.rb
401
- - test/sass/engine_test.rb
402
401
  - test/sass/value_helpers_test.rb
403
- - test/sass/superselector_test.rb
404
- - test/sass/logger_test.rb
405
- - test/sass/util_test.rb
402
+ - test/sass/conversion_test.rb
406
403
  - test/sass/cache_test.rb
407
- - test/sass/encoding_test.rb
404
+ - test/sass/script_test.rb
405
+ - test/sass/superselector_test.rb
406
+ - test/sass/callbacks_test.rb
408
407
  - test/sass/source_map_test.rb
409
- - test/sass/css2sass_test.rb
408
+ - test/sass/script_conversion_test.rb
409
+ - test/sass/util_test.rb
410
410
  - test/sass/plugin_test.rb
411
- - test/sass/conversion_test.rb
412
- - test/sass/util/subset_map_test.rb
413
- - test/sass/util/multibyte_string_scanner_test.rb
414
- - test/sass/util/normalized_map_test.rb
415
- - test/sass/exec_test.rb
411
+ - test/sass/extend_test.rb
416
412
  - test/sass/scss/rx_test.rb
417
- - test/sass/scss/scss_test.rb
418
413
  - test/sass/scss/css_test.rb
419
- - test/sass/callbacks_test.rb
414
+ - test/sass/scss/scss_test.rb
415
+ - test/sass/logger_test.rb
416
+ - test/sass/importer_test.rb
417
+ - test/sass/encoding_test.rb
418
+ - test/sass/engine_test.rb
419
+ - test/sass/exec_test.rb
420
+ - test/sass/util/normalized_map_test.rb
421
+ - test/sass/util/subset_map_test.rb
422
+ - test/sass/util/multibyte_string_scanner_test.rb
420
423
  - test/sass/functions_test.rb
421
- - test/sass/extend_test.rb
422
- - test/sass/script_conversion_test.rb
423
- - test/sass/script_test.rb
424
424
  - test/sass/compiler_test.rb
425
+ - test/sass/css2sass_test.rb