sass 3.6.0 → 3.7.0

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.
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: []