sass 3.6.0 → 3.7.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (138) hide show
  1. checksums.yaml +5 -5
  2. data/CONTRIBUTING.md +1 -1
  3. data/README.md +10 -0
  4. data/VERSION +1 -1
  5. data/VERSION_DATE +1 -1
  6. data/lib/sass/script/css_parser.rb +4 -1
  7. data/lib/sass/script/functions.rb +15 -25
  8. data/lib/sass/script/lexer.rb +45 -7
  9. data/lib/sass/script/parser.rb +259 -93
  10. data/lib/sass/scss/parser.rb +43 -16
  11. data/lib/sass/scss/static_parser.rb +15 -15
  12. data/lib/sass/util.rb +31 -0
  13. metadata +8 -156
  14. data/Rakefile +0 -364
  15. data/test/sass-spec.yml +0 -3
  16. data/test/sass/cache_test.rb +0 -130
  17. data/test/sass/callbacks_test.rb +0 -60
  18. data/test/sass/compiler_test.rb +0 -225
  19. data/test/sass/conversion_test.rb +0 -2138
  20. data/test/sass/css2sass_test.rb +0 -523
  21. data/test/sass/css_variable_test.rb +0 -237
  22. data/test/sass/data/hsl-rgb.txt +0 -319
  23. data/test/sass/encoding_test.rb +0 -188
  24. data/test/sass/engine_test.rb +0 -3499
  25. data/test/sass/exec_test.rb +0 -95
  26. data/test/sass/extend_test.rb +0 -1679
  27. data/test/sass/fixtures/test_staleness_check_across_importers.css +0 -1
  28. data/test/sass/fixtures/test_staleness_check_across_importers.scss +0 -1
  29. data/test/sass/functions_test.rb +0 -2021
  30. data/test/sass/importer_test.rb +0 -420
  31. data/test/sass/logger_test.rb +0 -57
  32. data/test/sass/mock_importer.rb +0 -49
  33. data/test/sass/more_results/more1.css +0 -9
  34. data/test/sass/more_results/more1_with_line_comments.css +0 -26
  35. data/test/sass/more_results/more_import.css +0 -29
  36. data/test/sass/more_templates/_more_partial.sass +0 -2
  37. data/test/sass/more_templates/more1.sass +0 -23
  38. data/test/sass/more_templates/more_import.sass +0 -11
  39. data/test/sass/plugin_test.rb +0 -552
  40. data/test/sass/results/alt.css +0 -4
  41. data/test/sass/results/basic.css +0 -9
  42. data/test/sass/results/cached_import_option.css +0 -3
  43. data/test/sass/results/compact.css +0 -5
  44. data/test/sass/results/complex.css +0 -86
  45. data/test/sass/results/compressed.css +0 -1
  46. data/test/sass/results/expanded.css +0 -19
  47. data/test/sass/results/filename_fn.css +0 -3
  48. data/test/sass/results/if.css +0 -3
  49. data/test/sass/results/import.css +0 -31
  50. data/test/sass/results/import_charset.css +0 -5
  51. data/test/sass/results/import_charset_ibm866.css +0 -5
  52. data/test/sass/results/import_content.css +0 -1
  53. data/test/sass/results/line_numbers.css +0 -49
  54. data/test/sass/results/mixins.css +0 -95
  55. data/test/sass/results/multiline.css +0 -24
  56. data/test/sass/results/nested.css +0 -22
  57. data/test/sass/results/options.css +0 -1
  58. data/test/sass/results/parent_ref.css +0 -13
  59. data/test/sass/results/script.css +0 -16
  60. data/test/sass/results/scss_import.css +0 -31
  61. data/test/sass/results/scss_importee.css +0 -2
  62. data/test/sass/results/subdir/nested_subdir/nested_subdir.css +0 -1
  63. data/test/sass/results/subdir/subdir.css +0 -3
  64. data/test/sass/results/units.css +0 -11
  65. data/test/sass/results/warn.css +0 -0
  66. data/test/sass/results/warn_imported.css +0 -0
  67. data/test/sass/script_conversion_test.rb +0 -365
  68. data/test/sass/script_test.rb +0 -1427
  69. data/test/sass/scss/css_test.rb +0 -1266
  70. data/test/sass/scss/rx_test.rb +0 -159
  71. data/test/sass/scss/scss_test.rb +0 -4238
  72. data/test/sass/scss/test_helper.rb +0 -37
  73. data/test/sass/source_map_test.rb +0 -1063
  74. data/test/sass/superselector_test.rb +0 -209
  75. data/test/sass/templates/_cached_import_option_partial.scss +0 -1
  76. data/test/sass/templates/_double_import_loop2.sass +0 -1
  77. data/test/sass/templates/_filename_fn_import.scss +0 -11
  78. data/test/sass/templates/_imported_charset_ibm866.sass +0 -4
  79. data/test/sass/templates/_imported_charset_utf8.sass +0 -4
  80. data/test/sass/templates/_imported_content.sass +0 -3
  81. data/test/sass/templates/_partial.sass +0 -2
  82. data/test/sass/templates/_same_name_different_partiality.scss +0 -1
  83. data/test/sass/templates/alt.sass +0 -16
  84. data/test/sass/templates/basic.sass +0 -23
  85. data/test/sass/templates/bork1.sass +0 -2
  86. data/test/sass/templates/bork2.sass +0 -2
  87. data/test/sass/templates/bork3.sass +0 -2
  88. data/test/sass/templates/bork4.sass +0 -2
  89. data/test/sass/templates/bork5.sass +0 -3
  90. data/test/sass/templates/cached_import_option.scss +0 -3
  91. data/test/sass/templates/compact.sass +0 -17
  92. data/test/sass/templates/complex.sass +0 -305
  93. data/test/sass/templates/compressed.sass +0 -15
  94. data/test/sass/templates/double_import_loop1.sass +0 -1
  95. data/test/sass/templates/expanded.sass +0 -17
  96. data/test/sass/templates/filename_fn.scss +0 -18
  97. data/test/sass/templates/if.sass +0 -11
  98. data/test/sass/templates/import.sass +0 -12
  99. data/test/sass/templates/import_charset.sass +0 -9
  100. data/test/sass/templates/import_charset_ibm866.sass +0 -11
  101. data/test/sass/templates/import_content.sass +0 -4
  102. data/test/sass/templates/importee.less +0 -2
  103. data/test/sass/templates/importee.sass +0 -19
  104. data/test/sass/templates/line_numbers.sass +0 -13
  105. data/test/sass/templates/mixin_bork.sass +0 -5
  106. data/test/sass/templates/mixins.sass +0 -76
  107. data/test/sass/templates/multiline.sass +0 -20
  108. data/test/sass/templates/nested.sass +0 -25
  109. data/test/sass/templates/nested_bork1.sass +0 -2
  110. data/test/sass/templates/nested_bork2.sass +0 -2
  111. data/test/sass/templates/nested_bork3.sass +0 -2
  112. data/test/sass/templates/nested_bork4.sass +0 -2
  113. data/test/sass/templates/nested_import.sass +0 -2
  114. data/test/sass/templates/nested_mixin_bork.sass +0 -6
  115. data/test/sass/templates/options.sass +0 -2
  116. data/test/sass/templates/parent_ref.sass +0 -25
  117. data/test/sass/templates/same_name_different_ext.sass +0 -2
  118. data/test/sass/templates/same_name_different_ext.scss +0 -1
  119. data/test/sass/templates/same_name_different_partiality.scss +0 -1
  120. data/test/sass/templates/script.sass +0 -101
  121. data/test/sass/templates/scss_import.scss +0 -12
  122. data/test/sass/templates/scss_importee.scss +0 -1
  123. data/test/sass/templates/single_import_loop.sass +0 -1
  124. data/test/sass/templates/subdir/import_up1.scss +0 -1
  125. data/test/sass/templates/subdir/import_up2.scss +0 -1
  126. data/test/sass/templates/subdir/nested_subdir/_nested_partial.sass +0 -2
  127. data/test/sass/templates/subdir/nested_subdir/nested_subdir.sass +0 -3
  128. data/test/sass/templates/subdir/subdir.sass +0 -6
  129. data/test/sass/templates/units.sass +0 -11
  130. data/test/sass/templates/warn.sass +0 -3
  131. data/test/sass/templates/warn_imported.sass +0 -4
  132. data/test/sass/test_helper.rb +0 -8
  133. data/test/sass/util/multibyte_string_scanner_test.rb +0 -152
  134. data/test/sass/util/normalized_map_test.rb +0 -50
  135. data/test/sass/util/subset_map_test.rb +0 -90
  136. data/test/sass/util_test.rb +0 -393
  137. data/test/sass/value_helpers_test.rb +0 -178
  138. data/test/test_helper.rb +0 -149
@@ -203,7 +203,7 @@ module Sass
203
203
  def directive
204
204
  start_pos = source_position
205
205
  return unless tok(/@/)
206
- name = tok!(IDENT)
206
+ name = ident!
207
207
  ss
208
208
 
209
209
  if (dir = special_directive(name, start_pos))
@@ -240,14 +240,14 @@ module Sass
240
240
  end
241
241
 
242
242
  def mixin_directive(start_pos)
243
- name = tok! IDENT
243
+ name = ident!
244
244
  args, splat = sass_script(:parse_mixin_definition_arglist)
245
245
  ss
246
246
  block(node(Sass::Tree::MixinDefNode.new(name, args, splat), start_pos), :directive)
247
247
  end
248
248
 
249
249
  def include_directive(start_pos)
250
- name = tok! IDENT
250
+ name = ident!
251
251
  args, keywords, splat, kwarg_splat = sass_script(:parse_mixin_include_arglist)
252
252
  ss
253
253
  include_node = node(
@@ -266,7 +266,7 @@ module Sass
266
266
  end
267
267
 
268
268
  def function_directive(start_pos)
269
- name = tok! IDENT
269
+ name = ident!
270
270
  args, splat = sass_script(:parse_function_definition_arglist)
271
271
  ss
272
272
  block(node(Sass::Tree::FunctionNode.new(name, args, splat), start_pos), :function)
@@ -286,7 +286,7 @@ module Sass
286
286
 
287
287
  def for_directive(start_pos)
288
288
  tok!(/\$/)
289
- var = tok! IDENT
289
+ var = ident!
290
290
  ss
291
291
 
292
292
  tok!(/from/)
@@ -303,12 +303,12 @@ module Sass
303
303
 
304
304
  def each_directive(start_pos)
305
305
  tok!(/\$/)
306
- vars = [tok!(IDENT)]
306
+ vars = [ident!]
307
307
  ss
308
308
  while tok(/,/)
309
309
  ss
310
310
  tok!(/\$/)
311
- vars << tok!(IDENT)
311
+ vars << ident!
312
312
  ss
313
313
  end
314
314
 
@@ -477,12 +477,23 @@ module Sass
477
477
  return unless tok(/\(/)
478
478
  res = ['(']
479
479
  ss
480
- res << sass_script(:parse)
480
+ stop_at = Set[:single_eq, :lt, :lte, :gt, :gte]
481
+ res << sass_script(:parse_until, stop_at)
481
482
 
482
483
  if tok(/:/)
483
484
  res << ': '
484
485
  ss
485
486
  res << sass_script(:parse)
487
+ elsif comparison1 = tok(/=|[<>]=?/)
488
+ res << ' ' << comparison1 << ' '
489
+ ss
490
+ res << sass_script(:parse_until, stop_at)
491
+ if ((comparison1 == ">" || comparison1 == ">=") && comparison2 = tok(/>=?/)) ||
492
+ ((comparison1 == "<" || comparison1 == "<=") && comparison2 = tok(/<=?/))
493
+ res << ' ' << comparison2 << ' '
494
+ ss
495
+ res << sass_script(:parse_until, stop_at)
496
+ end
486
497
  end
487
498
  res << tok!(/\)/)
488
499
  ss
@@ -542,10 +553,10 @@ module Sass
542
553
  end
543
554
 
544
555
  def at_root_directive_list
545
- return unless (first = tok(IDENT))
556
+ return unless (first = ident)
546
557
  arr = [first]
547
558
  ss
548
- while (e = tok(IDENT))
559
+ while (e = ident)
549
560
  arr << e
550
561
  ss
551
562
  end
@@ -636,12 +647,12 @@ module Sass
636
647
  def variable
637
648
  return unless tok(/\$/)
638
649
  start_pos = source_position
639
- name = tok!(IDENT)
650
+ name = ident!
640
651
  ss; tok!(/:/); ss
641
652
 
642
653
  expr = sass_script(:parse)
643
654
  while tok(/!/)
644
- flag_name = tok!(IDENT)
655
+ flag_name = ident!
645
656
  if flag_name == 'default'
646
657
  guarded ||= true
647
658
  elsif flag_name == 'global'
@@ -1037,7 +1048,7 @@ module Sass
1037
1048
  def var_expr
1038
1049
  return unless tok(/\$/)
1039
1050
  line = @line
1040
- var = Sass::Script::Tree::Variable.new(tok!(IDENT))
1051
+ var = Sass::Script::Tree::Variable.new(ident!)
1041
1052
  var.line = line
1042
1053
  var
1043
1054
  end
@@ -1075,11 +1086,27 @@ module Sass
1075
1086
  res
1076
1087
  end
1077
1088
 
1078
- def interp_ident(start = IDENT)
1079
- val = tok(start) || interpolation(:warn_for_color) || tok(IDENT_HYPHEN_INTERP)
1089
+ def ident
1090
+ (ident = tok(IDENT)) && Sass::Util.normalize_ident_escapes(ident)
1091
+ end
1092
+
1093
+ def ident!
1094
+ Sass::Util.normalize_ident_escapes(tok!(IDENT))
1095
+ end
1096
+
1097
+ def name
1098
+ (name = tok(NAME)) && Sass::Util.normalize_ident_escapes(name)
1099
+ end
1100
+
1101
+ def name!
1102
+ Sass::Util.normalize_ident_escapes(tok!(NAME))
1103
+ end
1104
+
1105
+ def interp_ident
1106
+ val = ident || interpolation(:warn_for_color) || tok(IDENT_HYPHEN_INTERP)
1080
1107
  return unless val
1081
1108
  res = [val]
1082
- while (val = tok(NAME) || interpolation(:warn_for_color))
1109
+ while (val = name || interpolation(:warn_for_color))
1083
1110
  res << val
1084
1111
  end
1085
1112
  res
@@ -71,7 +71,7 @@ module Sass
71
71
  def var_expr; nil; end
72
72
  def interp_string; (s = tok(STRING)) && [s]; end
73
73
  def interp_uri; (s = tok(URI)) && [s]; end
74
- def interp_ident(ident = IDENT); (s = tok(ident)) && [s]; end
74
+ def interp_ident; (s = ident) && [s]; end
75
75
  def use_css_import?; true; end
76
76
 
77
77
  def special_directive(name, start_pos)
@@ -185,25 +185,25 @@ MESSAGE
185
185
 
186
186
  def parent_selector
187
187
  return unless @allow_parent_ref && tok(/&/)
188
- Selector::Parent.new(tok(NAME))
188
+ Selector::Parent.new(name)
189
189
  end
190
190
 
191
191
  def class_selector
192
192
  return unless tok(/\./)
193
193
  @expected = "class name"
194
- Selector::Class.new(tok!(IDENT))
194
+ Selector::Class.new(ident!)
195
195
  end
196
196
 
197
197
  def id_selector
198
198
  return unless tok(/#(?!\{)/)
199
199
  @expected = "id name"
200
- Selector::Id.new(tok!(NAME))
200
+ Selector::Id.new(name!)
201
201
  end
202
202
 
203
203
  def placeholder_selector
204
204
  return unless tok(/%/)
205
205
  @expected = "placeholder name"
206
- Selector::Placeholder.new(tok!(IDENT))
206
+ Selector::Placeholder.new(ident!)
207
207
  end
208
208
 
209
209
  def element_name
@@ -218,13 +218,13 @@ MESSAGE
218
218
  end
219
219
 
220
220
  def qualified_name(allow_star_name = false)
221
- name = tok(IDENT) || tok(/\*/) || (tok?(/\|/) && "")
221
+ name = ident || tok(/\*/) || (tok?(/\|/) && "")
222
222
  return unless name
223
223
  return nil, name unless tok(/\|/)
224
224
 
225
- return name, tok!(IDENT) unless allow_star_name
225
+ return name, ident! unless allow_star_name
226
226
  @expected = "identifier or *"
227
- return name, tok(IDENT) || tok!(/\*/)
227
+ return name, ident || tok!(/\*/)
228
228
  end
229
229
 
230
230
  def attrib
@@ -242,21 +242,21 @@ MESSAGE
242
242
  if op
243
243
  @expected = "identifier or string"
244
244
  ss
245
- val = tok(IDENT) || tok!(STRING)
245
+ val = ident || tok!(STRING)
246
246
  ss
247
247
  end
248
- flags = tok(IDENT) || tok(STRING)
248
+ flags = ident || tok(STRING)
249
249
  tok!(/\]/)
250
250
 
251
251
  Selector::Attribute.new(name, ns, op, val, flags)
252
252
  end
253
253
 
254
254
  def attrib_name!
255
- if (name_or_ns = tok(IDENT))
255
+ if (name_or_ns = ident)
256
256
  # E, E|E
257
257
  if tok(/\|(?!=)/)
258
258
  ns = name_or_ns
259
- name = tok(IDENT)
259
+ name = ident
260
260
  else
261
261
  name = name_or_ns
262
262
  end
@@ -264,7 +264,7 @@ MESSAGE
264
264
  # *|E or |E
265
265
  ns = tok(/\*/) || ""
266
266
  tok!(/\|/)
267
- name = tok!(IDENT)
267
+ name = ident!
268
268
  end
269
269
  return ns, name
270
270
  end
@@ -279,7 +279,7 @@ MESSAGE
279
279
  s = tok(/::?/)
280
280
  return unless s
281
281
  @expected = "pseudoclass or pseudoelement"
282
- name = tok!(IDENT)
282
+ name = ident!
283
283
  if tok(/\(/)
284
284
  ss
285
285
  deprefixed = deprefix(name)
@@ -342,7 +342,7 @@ MESSAGE
342
342
  end
343
343
 
344
344
  def keyframes_selector_component
345
- tok(IDENT) || tok(PERCENTAGE)
345
+ ident || tok(PERCENTAGE)
346
346
  end
347
347
 
348
348
  @sass_script_parser = Class.new(Sass::Script::CssParser)
@@ -258,6 +258,37 @@ module Sass
258
258
  arr
259
259
  end
260
260
 
261
+ # Normalizes identifier escapes.
262
+ #
263
+ # See https://github.com/sass/language/blob/master/accepted/identifier-escapes.md.
264
+ #
265
+ # @param ident [String]
266
+ # @return [String]
267
+ def normalize_ident_escapes(ident, start: true)
268
+ ident.gsub(/(^)?(#{Sass::SCSS::RX::ESCAPE})/) do |s|
269
+ at_start = start && $1
270
+ char = escaped_char(s)
271
+ next char if char =~ (at_start ? Sass::SCSS::RX::NMSTART : Sass::SCSS::RX::NMCHAR)
272
+ if char =~ (at_start ? /[\x0-\x8\xA-\x1F\x7F0-9]/ : /[\x0-\x8\xA-\x1F\x7F]/)
273
+ "\\#{char.ord.to_s(16)} "
274
+ else
275
+ "\\#{char}"
276
+ end
277
+ end
278
+ end
279
+
280
+ # Returns the character encoded by the given escape sequence.
281
+ #
282
+ # @param escape [String]
283
+ # @return [String]
284
+ def escaped_char(escape)
285
+ if escape =~ /^\\([0-9a-fA-F]{1,6})[ \t\r\n\f]?/
286
+ $1.to_i(16).chr(Encoding::UTF_8)
287
+ else
288
+ escape[1]
289
+ end
290
+ end
291
+
261
292
  # Return an array of all possible paths through the given arrays.
262
293
  #
263
294
  # @param arrs [Array<Array>]
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.6.0
4
+ version: 3.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Natalie Weizenbaum
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2018-09-19 00:00:00.000000000 Z
13
+ date: 2018-11-06 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: sass-listen
@@ -83,6 +83,8 @@ dependencies:
83
83
  - !ruby/object:Gem::Version
84
84
  version: '5'
85
85
  description: |2
86
+ Ruby Sass is deprecated! See https://sass-lang.com/ruby-sass for details.
87
+
86
88
  Sass makes CSS fun again. Sass is an extension of CSS, adding
87
89
  nested rules, variables, mixins, selector inheritance, and more.
88
90
  It's translated to well-formatted, standard CSS using the
@@ -101,7 +103,6 @@ files:
101
103
  - MIT-LICENSE
102
104
  - README.md
103
105
  - REVISION
104
- - Rakefile
105
106
  - VERSION
106
107
  - VERSION_DATE
107
108
  - VERSION_NAME
@@ -242,134 +243,11 @@ files:
242
243
  - lib/sass/util/test.rb
243
244
  - lib/sass/version.rb
244
245
  - rails/init.rb
245
- - test/sass-spec.yml
246
- - test/sass/cache_test.rb
247
- - test/sass/callbacks_test.rb
248
- - test/sass/compiler_test.rb
249
- - test/sass/conversion_test.rb
250
- - test/sass/css2sass_test.rb
251
- - test/sass/css_variable_test.rb
252
- - test/sass/data/hsl-rgb.txt
253
- - test/sass/encoding_test.rb
254
- - test/sass/engine_test.rb
255
- - test/sass/exec_test.rb
256
- - test/sass/extend_test.rb
257
- - test/sass/fixtures/test_staleness_check_across_importers.css
258
- - test/sass/fixtures/test_staleness_check_across_importers.scss
259
- - test/sass/functions_test.rb
260
- - test/sass/importer_test.rb
261
- - test/sass/logger_test.rb
262
- - test/sass/mock_importer.rb
263
- - test/sass/more_results/more1.css
264
- - test/sass/more_results/more1_with_line_comments.css
265
- - test/sass/more_results/more_import.css
266
- - test/sass/more_templates/_more_partial.sass
267
- - test/sass/more_templates/more1.sass
268
- - test/sass/more_templates/more_import.sass
269
- - test/sass/plugin_test.rb
270
- - test/sass/results/alt.css
271
- - test/sass/results/basic.css
272
- - test/sass/results/cached_import_option.css
273
- - test/sass/results/compact.css
274
- - test/sass/results/complex.css
275
- - test/sass/results/compressed.css
276
- - test/sass/results/expanded.css
277
- - test/sass/results/filename_fn.css
278
- - test/sass/results/if.css
279
- - test/sass/results/import.css
280
- - test/sass/results/import_charset.css
281
- - test/sass/results/import_charset_ibm866.css
282
- - test/sass/results/import_content.css
283
- - test/sass/results/line_numbers.css
284
- - test/sass/results/mixins.css
285
- - test/sass/results/multiline.css
286
- - test/sass/results/nested.css
287
- - test/sass/results/options.css
288
- - test/sass/results/parent_ref.css
289
- - test/sass/results/script.css
290
- - test/sass/results/scss_import.css
291
- - test/sass/results/scss_importee.css
292
- - test/sass/results/subdir/nested_subdir/nested_subdir.css
293
- - test/sass/results/subdir/subdir.css
294
- - test/sass/results/units.css
295
- - test/sass/results/warn.css
296
- - test/sass/results/warn_imported.css
297
- - test/sass/script_conversion_test.rb
298
- - test/sass/script_test.rb
299
- - test/sass/scss/css_test.rb
300
- - test/sass/scss/rx_test.rb
301
- - test/sass/scss/scss_test.rb
302
- - test/sass/scss/test_helper.rb
303
- - test/sass/source_map_test.rb
304
- - test/sass/superselector_test.rb
305
- - test/sass/templates/_cached_import_option_partial.scss
306
- - test/sass/templates/_double_import_loop2.sass
307
- - test/sass/templates/_filename_fn_import.scss
308
- - test/sass/templates/_imported_charset_ibm866.sass
309
- - test/sass/templates/_imported_charset_utf8.sass
310
- - test/sass/templates/_imported_content.sass
311
- - test/sass/templates/_partial.sass
312
- - test/sass/templates/_same_name_different_partiality.scss
313
- - test/sass/templates/alt.sass
314
- - test/sass/templates/basic.sass
315
- - test/sass/templates/bork1.sass
316
- - test/sass/templates/bork2.sass
317
- - test/sass/templates/bork3.sass
318
- - test/sass/templates/bork4.sass
319
- - test/sass/templates/bork5.sass
320
- - test/sass/templates/cached_import_option.scss
321
- - test/sass/templates/compact.sass
322
- - test/sass/templates/complex.sass
323
- - test/sass/templates/compressed.sass
324
- - test/sass/templates/double_import_loop1.sass
325
- - test/sass/templates/expanded.sass
326
- - test/sass/templates/filename_fn.scss
327
- - test/sass/templates/if.sass
328
- - test/sass/templates/import.sass
329
- - test/sass/templates/import_charset.sass
330
- - test/sass/templates/import_charset_ibm866.sass
331
- - test/sass/templates/import_content.sass
332
- - test/sass/templates/importee.less
333
- - test/sass/templates/importee.sass
334
- - test/sass/templates/line_numbers.sass
335
- - test/sass/templates/mixin_bork.sass
336
- - test/sass/templates/mixins.sass
337
- - test/sass/templates/multiline.sass
338
- - test/sass/templates/nested.sass
339
- - test/sass/templates/nested_bork1.sass
340
- - test/sass/templates/nested_bork2.sass
341
- - test/sass/templates/nested_bork3.sass
342
- - test/sass/templates/nested_bork4.sass
343
- - test/sass/templates/nested_import.sass
344
- - test/sass/templates/nested_mixin_bork.sass
345
- - test/sass/templates/options.sass
346
- - test/sass/templates/parent_ref.sass
347
- - test/sass/templates/same_name_different_ext.sass
348
- - test/sass/templates/same_name_different_ext.scss
349
- - test/sass/templates/same_name_different_partiality.scss
350
- - test/sass/templates/script.sass
351
- - test/sass/templates/scss_import.scss
352
- - test/sass/templates/scss_importee.scss
353
- - test/sass/templates/single_import_loop.sass
354
- - test/sass/templates/subdir/import_up1.scss
355
- - test/sass/templates/subdir/import_up2.scss
356
- - test/sass/templates/subdir/nested_subdir/_nested_partial.sass
357
- - test/sass/templates/subdir/nested_subdir/nested_subdir.sass
358
- - test/sass/templates/subdir/subdir.sass
359
- - test/sass/templates/units.sass
360
- - test/sass/templates/warn.sass
361
- - test/sass/templates/warn_imported.sass
362
- - test/sass/test_helper.rb
363
- - test/sass/util/multibyte_string_scanner_test.rb
364
- - test/sass/util/normalized_map_test.rb
365
- - test/sass/util/subset_map_test.rb
366
- - test/sass/util_test.rb
367
- - test/sass/value_helpers_test.rb
368
- - test/test_helper.rb
369
246
  homepage: http://sass-lang.com/
370
247
  licenses:
371
248
  - MIT
372
- metadata: {}
249
+ metadata:
250
+ source_code_uri: https://github.com/sass/ruby-sass
373
251
  post_install_message: |2+
374
252
 
375
253
  Ruby Sass is deprecated and will be unmaintained as of 26 March 2019.
@@ -398,34 +276,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
398
276
  version: '0'
399
277
  requirements: []
400
278
  rubyforge_project: sass
401
- rubygems_version: 2.7.7
279
+ rubygems_version: 2.6.14
402
280
  signing_key:
403
281
  specification_version: 4
404
282
  summary: A powerful but elegant CSS compiler that makes CSS fun again.
405
- test_files:
406
- - test/sass/plugin_test.rb
407
- - test/sass/encoding_test.rb
408
- - test/sass/importer_test.rb
409
- - test/sass/callbacks_test.rb
410
- - test/sass/scss/css_test.rb
411
- - test/sass/scss/rx_test.rb
412
- - test/sass/scss/scss_test.rb
413
- - test/sass/util/multibyte_string_scanner_test.rb
414
- - test/sass/util/normalized_map_test.rb
415
- - test/sass/util/subset_map_test.rb
416
- - test/sass/functions_test.rb
417
- - test/sass/util_test.rb
418
- - test/sass/cache_test.rb
419
- - test/sass/exec_test.rb
420
- - test/sass/value_helpers_test.rb
421
- - test/sass/conversion_test.rb
422
- - test/sass/script_test.rb
423
- - test/sass/logger_test.rb
424
- - test/sass/compiler_test.rb
425
- - test/sass/engine_test.rb
426
- - test/sass/css2sass_test.rb
427
- - test/sass/superselector_test.rb
428
- - test/sass/script_conversion_test.rb
429
- - test/sass/css_variable_test.rb
430
- - test/sass/source_map_test.rb
431
- - test/sass/extend_test.rb
283
+ test_files: []