sass 3.5.2 → 3.7.4

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 (163) hide show
  1. checksums.yaml +4 -4
  2. data/CODE_OF_CONDUCT.md +1 -1
  3. data/CONTRIBUTING.md +3 -3
  4. data/README.md +17 -9
  5. data/VERSION +1 -1
  6. data/VERSION_DATE +1 -1
  7. data/extra/sass-spec-ref.sh +9 -1
  8. data/lib/sass/engine.rb +1 -9
  9. data/lib/sass/exec/base.rb +0 -2
  10. data/lib/sass/exec/sass_scss.rb +1 -5
  11. data/lib/sass/importers/filesystem.rb +4 -2
  12. data/lib/sass/logger/base.rb +11 -0
  13. data/lib/sass/script/css_parser.rb +4 -1
  14. data/lib/sass/script/functions.rb +76 -41
  15. data/lib/sass/script/lexer.rb +62 -19
  16. data/lib/sass/script/parser.rb +260 -93
  17. data/lib/sass/script/tree/funcall.rb +0 -4
  18. data/lib/sass/script/tree/interpolation.rb +0 -3
  19. data/lib/sass/script/tree/operation.rb +1 -1
  20. data/lib/sass/script/value/color.rb +3 -2
  21. data/lib/sass/script/value/helpers.rb +8 -2
  22. data/lib/sass/script/value/number.rb +2 -1
  23. data/lib/sass/scss/css_parser.rb +6 -1
  24. data/lib/sass/scss/parser.rb +48 -18
  25. data/lib/sass/scss/rx.rb +1 -1
  26. data/lib/sass/scss/static_parser.rb +15 -18
  27. data/lib/sass/selector/comma_sequence.rb +2 -1
  28. data/lib/sass/selector/pseudo.rb +1 -1
  29. data/lib/sass/selector/sequence.rb +0 -4
  30. data/lib/sass/source/map.rb +0 -4
  31. data/lib/sass/tree/rule_node.rb +3 -6
  32. data/lib/sass/tree/visitors/perform.rb +2 -6
  33. data/lib/sass/tree/visitors/to_css.rb +4 -11
  34. data/lib/sass/util.rb +60 -20
  35. data/lib/sass/version.rb +0 -2
  36. metadata +38 -162
  37. data/Rakefile +0 -338
  38. data/lib/test.css +0 -4
  39. data/lib/test.css.map +0 -7
  40. data/test/sass-spec.yml +0 -3
  41. data/test/sass/cache_test.rb +0 -130
  42. data/test/sass/callbacks_test.rb +0 -60
  43. data/test/sass/compiler_test.rb +0 -225
  44. data/test/sass/conversion_test.rb +0 -2138
  45. data/test/sass/css2sass_test.rb +0 -523
  46. data/test/sass/css_variable_test.rb +0 -237
  47. data/test/sass/data/hsl-rgb.txt +0 -319
  48. data/test/sass/encoding_test.rb +0 -188
  49. data/test/sass/engine_test.rb +0 -3499
  50. data/test/sass/exec_test.rb +0 -95
  51. data/test/sass/extend_test.rb +0 -1678
  52. data/test/sass/fixtures/test_staleness_check_across_importers.css +0 -1
  53. data/test/sass/fixtures/test_staleness_check_across_importers.scss +0 -1
  54. data/test/sass/functions_test.rb +0 -2021
  55. data/test/sass/importer_test.rb +0 -420
  56. data/test/sass/logger_test.rb +0 -57
  57. data/test/sass/mock_importer.rb +0 -49
  58. data/test/sass/more_results/more1.css +0 -9
  59. data/test/sass/more_results/more1_with_line_comments.css +0 -26
  60. data/test/sass/more_results/more_import.css +0 -29
  61. data/test/sass/more_templates/_more_partial.sass +0 -2
  62. data/test/sass/more_templates/more1.sass +0 -23
  63. data/test/sass/more_templates/more_import.sass +0 -11
  64. data/test/sass/plugin_test.rb +0 -552
  65. data/test/sass/results/alt.css +0 -4
  66. data/test/sass/results/basic.css +0 -9
  67. data/test/sass/results/cached_import_option.css +0 -3
  68. data/test/sass/results/compact.css +0 -5
  69. data/test/sass/results/complex.css +0 -86
  70. data/test/sass/results/compressed.css +0 -1
  71. data/test/sass/results/expanded.css +0 -19
  72. data/test/sass/results/filename_fn.css +0 -3
  73. data/test/sass/results/if.css +0 -3
  74. data/test/sass/results/import.css +0 -31
  75. data/test/sass/results/import_charset.css +0 -5
  76. data/test/sass/results/import_charset_ibm866.css +0 -5
  77. data/test/sass/results/import_content.css +0 -1
  78. data/test/sass/results/line_numbers.css +0 -49
  79. data/test/sass/results/mixins.css +0 -95
  80. data/test/sass/results/multiline.css +0 -24
  81. data/test/sass/results/nested.css +0 -22
  82. data/test/sass/results/options.css +0 -1
  83. data/test/sass/results/parent_ref.css +0 -13
  84. data/test/sass/results/script.css +0 -16
  85. data/test/sass/results/scss_import.css +0 -31
  86. data/test/sass/results/scss_importee.css +0 -2
  87. data/test/sass/results/subdir/nested_subdir/nested_subdir.css +0 -1
  88. data/test/sass/results/subdir/subdir.css +0 -3
  89. data/test/sass/results/units.css +0 -11
  90. data/test/sass/results/warn.css +0 -0
  91. data/test/sass/results/warn_imported.css +0 -0
  92. data/test/sass/script_conversion_test.rb +0 -365
  93. data/test/sass/script_test.rb +0 -1429
  94. data/test/sass/scss/css_test.rb +0 -1266
  95. data/test/sass/scss/rx_test.rb +0 -159
  96. data/test/sass/scss/scss_test.rb +0 -4238
  97. data/test/sass/scss/test_helper.rb +0 -37
  98. data/test/sass/source_map_test.rb +0 -1052
  99. data/test/sass/superselector_test.rb +0 -209
  100. data/test/sass/templates/_cached_import_option_partial.scss +0 -1
  101. data/test/sass/templates/_double_import_loop2.sass +0 -1
  102. data/test/sass/templates/_filename_fn_import.scss +0 -11
  103. data/test/sass/templates/_imported_charset_ibm866.sass +0 -4
  104. data/test/sass/templates/_imported_charset_utf8.sass +0 -4
  105. data/test/sass/templates/_imported_content.sass +0 -3
  106. data/test/sass/templates/_partial.sass +0 -2
  107. data/test/sass/templates/_same_name_different_partiality.scss +0 -1
  108. data/test/sass/templates/alt.sass +0 -16
  109. data/test/sass/templates/basic.sass +0 -23
  110. data/test/sass/templates/bork1.sass +0 -2
  111. data/test/sass/templates/bork2.sass +0 -2
  112. data/test/sass/templates/bork3.sass +0 -2
  113. data/test/sass/templates/bork4.sass +0 -2
  114. data/test/sass/templates/bork5.sass +0 -3
  115. data/test/sass/templates/cached_import_option.scss +0 -3
  116. data/test/sass/templates/compact.sass +0 -17
  117. data/test/sass/templates/complex.sass +0 -305
  118. data/test/sass/templates/compressed.sass +0 -15
  119. data/test/sass/templates/double_import_loop1.sass +0 -1
  120. data/test/sass/templates/expanded.sass +0 -17
  121. data/test/sass/templates/filename_fn.scss +0 -18
  122. data/test/sass/templates/if.sass +0 -11
  123. data/test/sass/templates/import.sass +0 -12
  124. data/test/sass/templates/import_charset.sass +0 -9
  125. data/test/sass/templates/import_charset_ibm866.sass +0 -11
  126. data/test/sass/templates/import_content.sass +0 -4
  127. data/test/sass/templates/importee.less +0 -2
  128. data/test/sass/templates/importee.sass +0 -19
  129. data/test/sass/templates/line_numbers.sass +0 -13
  130. data/test/sass/templates/mixin_bork.sass +0 -5
  131. data/test/sass/templates/mixins.sass +0 -76
  132. data/test/sass/templates/multiline.sass +0 -20
  133. data/test/sass/templates/nested.sass +0 -25
  134. data/test/sass/templates/nested_bork1.sass +0 -2
  135. data/test/sass/templates/nested_bork2.sass +0 -2
  136. data/test/sass/templates/nested_bork3.sass +0 -2
  137. data/test/sass/templates/nested_bork4.sass +0 -2
  138. data/test/sass/templates/nested_import.sass +0 -2
  139. data/test/sass/templates/nested_mixin_bork.sass +0 -6
  140. data/test/sass/templates/options.sass +0 -2
  141. data/test/sass/templates/parent_ref.sass +0 -25
  142. data/test/sass/templates/same_name_different_ext.sass +0 -2
  143. data/test/sass/templates/same_name_different_ext.scss +0 -1
  144. data/test/sass/templates/same_name_different_partiality.scss +0 -1
  145. data/test/sass/templates/script.sass +0 -101
  146. data/test/sass/templates/scss_import.scss +0 -12
  147. data/test/sass/templates/scss_importee.scss +0 -1
  148. data/test/sass/templates/single_import_loop.sass +0 -1
  149. data/test/sass/templates/subdir/import_up1.scss +0 -1
  150. data/test/sass/templates/subdir/import_up2.scss +0 -1
  151. data/test/sass/templates/subdir/nested_subdir/_nested_partial.sass +0 -2
  152. data/test/sass/templates/subdir/nested_subdir/nested_subdir.sass +0 -3
  153. data/test/sass/templates/subdir/subdir.sass +0 -6
  154. data/test/sass/templates/units.sass +0 -11
  155. data/test/sass/templates/warn.sass +0 -3
  156. data/test/sass/templates/warn_imported.sass +0 -4
  157. data/test/sass/test_helper.rb +0 -8
  158. data/test/sass/util/multibyte_string_scanner_test.rb +0 -152
  159. data/test/sass/util/normalized_map_test.rb +0 -50
  160. data/test/sass/util/subset_map_test.rb +0 -90
  161. data/test/sass/util_test.rb +0 -403
  162. data/test/sass/value_helpers_test.rb +0 -178
  163. data/test/test_helper.rb +0 -149
@@ -84,8 +84,6 @@ module Sass::Source
84
84
  # @return [String] The JSON string.
85
85
  # @raise [ArgumentError] If neither `:css_uri` nor `:css_path` and
86
86
  # `:sourcemap_path` are specified.
87
- # @comment
88
- # rubocop:disable MethodLength
89
87
  def to_json(options)
90
88
  css_uri, css_path, sourcemap_path =
91
89
  options[:css_uri], options[:css_path], options[:sourcemap_path]
@@ -197,8 +195,6 @@ module Sass::Source
197
195
  result << "\n}"
198
196
  result
199
197
  end
200
- # @comment
201
- # rubocop:enable MethodLength
202
198
 
203
199
  private
204
200
 
@@ -139,13 +139,10 @@ module Sass::Tree
139
139
  # We don't use real filename/line info because we don't have it yet.
140
140
  # When we get it, we'll set it on the parsed rules if possible.
141
141
  parser = nil
142
- warnings = Sass::Util.silence_warnings do
143
- parser = Sass::SCSS::StaticParser.new(@rule.join.strip, nil, nil, 1)
144
- # rubocop:disable RescueModifier
142
+ warnings = Sass.logger.capture do
143
+ parser = Sass::SCSS::StaticParser.new(
144
+ Sass::Util.strip_except_escapes(@rule.join), nil, nil, 1)
145
145
  @parsed_rules = parser.parse_selector rescue nil
146
- # rubocop:enable RescueModifier
147
-
148
- $stderr.string
149
146
  end
150
147
 
151
148
  # If parsing produces a warning, throw away the result so we can parse
@@ -11,8 +11,6 @@ class Sass::Tree::Visitors::Perform < Sass::Tree::Visitors::Base
11
11
  end
12
12
 
13
13
  # @api private
14
- # @comment
15
- # rubocop:disable MethodLength
16
14
  def perform_arguments(callable, args, splat, environment)
17
15
  desc = "#{callable.type.capitalize} #{callable.name}"
18
16
  downcase_desc = "#{callable.type} #{callable.name}"
@@ -145,8 +143,6 @@ class Sass::Tree::Visitors::Perform < Sass::Tree::Visitors::Base
145
143
  end
146
144
  end
147
145
  end
148
- # @comment
149
- # rubocop:enable MethodLength
150
146
 
151
147
  protected
152
148
 
@@ -351,7 +347,7 @@ WARNING
351
347
  mixin = @environment.mixin(node.name)
352
348
  raise Sass::SyntaxError.new("Undefined mixin '#{node.name}'.") unless mixin
353
349
 
354
- if node.children.any? && !mixin.has_content
350
+ if node.has_children && !mixin.has_content
355
351
  raise Sass::SyntaxError.new(%(Mixin "#{node.name}" does not accept a content block.))
356
352
  end
357
353
 
@@ -557,7 +553,7 @@ WARNING
557
553
  end
558
554
 
559
555
  def run_interp(text)
560
- run_interp_no_strip(text).strip
556
+ Sass::Util.strip_except_escapes(run_interp_no_strip(text))
561
557
  end
562
558
 
563
559
  def handle_import_loop!(node)
@@ -171,8 +171,6 @@ class Sass::Tree::Visitors::ToCss < Sass::Tree::Visitors::Base
171
171
  for_node(node) {output(content)}
172
172
  end
173
173
 
174
- # @comment
175
- # rubocop:disable MethodLength
176
174
  def visit_directive(node)
177
175
  was_in_directive = @in_directive
178
176
  tab_str = ' ' * @tabs
@@ -244,8 +242,6 @@ class Sass::Tree::Visitors::ToCss < Sass::Tree::Visitors::Base
244
242
  ensure
245
243
  @in_directive = was_in_directive
246
244
  end
247
- # @comment
248
- # rubocop:enable MethodLength
249
245
 
250
246
  def visit_media(node)
251
247
  with_tabs(@tabs + node.tabs) {visit_directive(node)}
@@ -277,8 +273,6 @@ class Sass::Tree::Visitors::ToCss < Sass::Tree::Visitors::Base
277
273
  output(";") unless node.style == :compressed
278
274
  end
279
275
 
280
- # @comment
281
- # rubocop:disable MethodLength
282
276
  def visit_rule(node)
283
277
  with_tabs(@tabs + node.tabs) do
284
278
  rule_separator = node.style == :compressed ? ',' : ', '
@@ -304,7 +298,7 @@ class Sass::Tree::Visitors::ToCss < Sass::Tree::Visitors::Base
304
298
  rule_part.gsub!(/nth([^( ]*)\(([^)]*)\)/m) do |match|
305
299
  match.tr(" \t\n", "")
306
300
  end
307
- rule_part.strip!
301
+ rule_part = Sass::Util.strip_except_escapes(rule_part)
308
302
  end
309
303
  rule_part
310
304
  end.compact.join(rule_separator)
@@ -377,8 +371,6 @@ class Sass::Tree::Visitors::ToCss < Sass::Tree::Visitors::Base
377
371
  output("}" + trailer)
378
372
  end
379
373
  end
380
- # @comment
381
- # rubocop:enable MethodLength
382
374
 
383
375
  def visit_keyframerule(node)
384
376
  visit_directive(node)
@@ -392,7 +384,8 @@ class Sass::Tree::Visitors::ToCss < Sass::Tree::Visitors::Base
392
384
  # @param node [Sass::Script::Tree::PropNode] A custom property node.
393
385
  # @return [String]
394
386
  def format_custom_property_value(node)
395
- if node.style == :compact || node.style == :compressed || !node.resolved_value.include?("\n")
387
+ value = node.resolved_value.sub(/\n[ \t\r\f\n]*\Z/, ' ')
388
+ if node.style == :compact || node.style == :compressed || !value.include?("\n")
396
389
  # Folding not involving newlines was done in the parser. We can safely
397
390
  # fold newlines here because tokens like strings can't contain literal
398
391
  # newlines, so we know any adjacent whitespace is tokenized as whitespace.
@@ -401,7 +394,7 @@ class Sass::Tree::Visitors::ToCss < Sass::Tree::Visitors::Base
401
394
 
402
395
  # Find the smallest amount of indentation in the custom property and use
403
396
  # that as the base indentation level.
404
- lines = node.resolved_value.split("\n")
397
+ lines = value.split("\n")
405
398
  indented_lines = lines[1..-1]
406
399
  min_indentation = indented_lines.
407
400
  map {|line| line[/^[ \t]*/]}.
@@ -13,8 +13,6 @@ require 'sass/util/subset_map'
13
13
 
14
14
  module Sass
15
15
  # A module containing various useful functions.
16
- # @comment
17
- # rubocop:disable ModuleLength
18
16
  module Util
19
17
  extend self
20
18
 
@@ -137,8 +135,13 @@ module Sass
137
135
  def round(value)
138
136
  # If the number is within epsilon of X.5, round up (or down for negative
139
137
  # numbers).
140
- return value.round if (value % 1) - 0.5 <= -1 * Script::Value::Number.epsilon
141
- value > 0 ? value.ceil : value.floor
138
+ mod = value % 1
139
+ mod_is_half = (mod - 0.5).abs < Script::Value::Number.epsilon
140
+ if value > 0
141
+ !mod_is_half && mod < 0.5 ? value.floor : value.ceil
142
+ else
143
+ mod_is_half || mod < 0.5 ? value.floor : value.ceil
144
+ end
142
145
  end
143
146
 
144
147
  # Concatenates all strings that are adjacent in an array,
@@ -243,18 +246,67 @@ module Sass
243
246
  res
244
247
  end
245
248
 
246
- # Destructively strips whitespace from the beginning and end
247
- # of the first and last elements, respectively,
248
- # in the array (if those elements are strings).
249
+ # Destructively strips whitespace from the beginning and end of the first
250
+ # and last elements, respectively, in the array (if those elements are
251
+ # strings). Preserves CSS escapes at the end of the array.
249
252
  #
250
253
  # @param arr [Array]
251
254
  # @return [Array] `arr`
252
255
  def strip_string_array(arr)
253
256
  arr.first.lstrip! if arr.first.is_a?(String)
254
- arr.last.rstrip! if arr.last.is_a?(String)
257
+ arr[-1] = Sass::Util.rstrip_except_escapes(arr[-1]) if arr.last.is_a?(String)
255
258
  arr
256
259
  end
257
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-\x1F\x7F0-9]/ : /[\x0-\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
+
292
+ # Like [String#strip], but preserves escaped whitespace at the end of the
293
+ # string.
294
+ #
295
+ # @param string [String]
296
+ # @return [String]
297
+ def strip_except_escapes(string)
298
+ rstrip_except_escapes(string.lstrip)
299
+ end
300
+
301
+ # Like [String#rstrip], but preserves escaped whitespace at the end of the
302
+ # string.
303
+ #
304
+ # @param string [String]
305
+ # @return [String]
306
+ def rstrip_except_escapes(string)
307
+ string.sub(/(?<!\\)\s+$/, '')
308
+ end
309
+
258
310
  # Return an array of all possible paths through the given arrays.
259
311
  #
260
312
  # @param arrs [Array<Array>]
@@ -451,16 +503,6 @@ module Sass
451
503
  Sass::Util.sass_warn full_message
452
504
  end
453
505
 
454
- # Silence all output to STDERR within a block.
455
- #
456
- # @yield A block in which no output will be printed to STDERR
457
- def silence_warnings
458
- the_real_stderr, $stderr = $stderr, StringIO.new
459
- yield
460
- ensure
461
- $stderr = the_real_stderr
462
- end
463
-
464
506
  # Silences all Sass warnings within a block.
465
507
  #
466
508
  # @yield A block in which no Sass warnings will be printed
@@ -1074,12 +1116,10 @@ module Sass
1074
1116
  end
1075
1117
  c
1076
1118
  end
1077
- # rubocop:disable ParameterLists
1078
1119
 
1079
1120
  # Computes a single longest common subsequence for arrays x and y.
1080
1121
  # Algorithm from [Wikipedia](http://en.wikipedia.org/wiki/Longest_common_subsequence_problem#Reading_out_an_LCS)
1081
1122
  def lcs_backtrace(c, x, y, i, j, &block)
1082
- # rubocop:enable ParameterList
1083
1123
  return [] if i == 0 || j == 0
1084
1124
  if (v = yield(x[i], y[j]))
1085
1125
  return lcs_backtrace(c, x, y, i - 1, j - 1, &block) << v
@@ -42,7 +42,6 @@ module Sass
42
42
  # }
43
43
  #
44
44
  # @return [{Symbol => String/Integer}] The version hash
45
- # @comment
46
45
  def version
47
46
  return @@version if defined?(@@version)
48
47
 
@@ -76,7 +75,6 @@ module Sass
76
75
  end
77
76
  end
78
77
 
79
- @@version[:string] << " (#{name})"
80
78
  @@version
81
79
  end
82
80
 
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.5.2
4
+ version: 3.7.4
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: 2017-10-04 00:00:00.000000000 Z
13
+ date: 2019-04-04 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: sass-listen
@@ -46,14 +46,28 @@ dependencies:
46
46
  requirements:
47
47
  - - "~>"
48
48
  - !ruby/object:Gem::Version
49
- version: 2.3.0
49
+ version: '3.3'
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
- version: 2.3.0
56
+ version: '3.3'
57
+ - !ruby/object:Gem::Dependency
58
+ name: nokogiri
59
+ requirement: !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - "~>"
62
+ - !ruby/object:Gem::Version
63
+ version: 1.6.0
64
+ type: :development
65
+ prerelease: false
66
+ version_requirements: !ruby/object:Gem::Requirement
67
+ requirements:
68
+ - - "~>"
69
+ - !ruby/object:Gem::Version
70
+ version: 1.6.0
57
71
  - !ruby/object:Gem::Dependency
58
72
  name: minitest
59
73
  requirement: !ruby/object:Gem::Requirement
@@ -69,6 +83,8 @@ dependencies:
69
83
  - !ruby/object:Gem::Version
70
84
  version: '5'
71
85
  description: |2
86
+ Ruby Sass is deprecated! See https://sass-lang.com/ruby-sass for details.
87
+
72
88
  Sass makes CSS fun again. Sass is an extension of CSS, adding
73
89
  nested rules, variables, mixins, selector inheritance, and more.
74
90
  It's translated to well-formatted, standard CSS using the
@@ -87,7 +103,6 @@ files:
87
103
  - MIT-LICENSE
88
104
  - README.md
89
105
  - REVISION
90
- - Rakefile
91
106
  - VERSION
92
107
  - VERSION_DATE
93
108
  - VERSION_NAME
@@ -227,138 +242,25 @@ files:
227
242
  - lib/sass/util/subset_map.rb
228
243
  - lib/sass/util/test.rb
229
244
  - lib/sass/version.rb
230
- - lib/test.css
231
- - lib/test.css.map
232
245
  - rails/init.rb
233
- - test/sass-spec.yml
234
- - test/sass/cache_test.rb
235
- - test/sass/callbacks_test.rb
236
- - test/sass/compiler_test.rb
237
- - test/sass/conversion_test.rb
238
- - test/sass/css2sass_test.rb
239
- - test/sass/css_variable_test.rb
240
- - test/sass/data/hsl-rgb.txt
241
- - test/sass/encoding_test.rb
242
- - test/sass/engine_test.rb
243
- - test/sass/exec_test.rb
244
- - test/sass/extend_test.rb
245
- - test/sass/fixtures/test_staleness_check_across_importers.css
246
- - test/sass/fixtures/test_staleness_check_across_importers.scss
247
- - test/sass/functions_test.rb
248
- - test/sass/importer_test.rb
249
- - test/sass/logger_test.rb
250
- - test/sass/mock_importer.rb
251
- - test/sass/more_results/more1.css
252
- - test/sass/more_results/more1_with_line_comments.css
253
- - test/sass/more_results/more_import.css
254
- - test/sass/more_templates/_more_partial.sass
255
- - test/sass/more_templates/more1.sass
256
- - test/sass/more_templates/more_import.sass
257
- - test/sass/plugin_test.rb
258
- - test/sass/results/alt.css
259
- - test/sass/results/basic.css
260
- - test/sass/results/cached_import_option.css
261
- - test/sass/results/compact.css
262
- - test/sass/results/complex.css
263
- - test/sass/results/compressed.css
264
- - test/sass/results/expanded.css
265
- - test/sass/results/filename_fn.css
266
- - test/sass/results/if.css
267
- - test/sass/results/import.css
268
- - test/sass/results/import_charset.css
269
- - test/sass/results/import_charset_ibm866.css
270
- - test/sass/results/import_content.css
271
- - test/sass/results/line_numbers.css
272
- - test/sass/results/mixins.css
273
- - test/sass/results/multiline.css
274
- - test/sass/results/nested.css
275
- - test/sass/results/options.css
276
- - test/sass/results/parent_ref.css
277
- - test/sass/results/script.css
278
- - test/sass/results/scss_import.css
279
- - test/sass/results/scss_importee.css
280
- - test/sass/results/subdir/nested_subdir/nested_subdir.css
281
- - test/sass/results/subdir/subdir.css
282
- - test/sass/results/units.css
283
- - test/sass/results/warn.css
284
- - test/sass/results/warn_imported.css
285
- - test/sass/script_conversion_test.rb
286
- - test/sass/script_test.rb
287
- - test/sass/scss/css_test.rb
288
- - test/sass/scss/rx_test.rb
289
- - test/sass/scss/scss_test.rb
290
- - test/sass/scss/test_helper.rb
291
- - test/sass/source_map_test.rb
292
- - test/sass/superselector_test.rb
293
- - test/sass/templates/_cached_import_option_partial.scss
294
- - test/sass/templates/_double_import_loop2.sass
295
- - test/sass/templates/_filename_fn_import.scss
296
- - test/sass/templates/_imported_charset_ibm866.sass
297
- - test/sass/templates/_imported_charset_utf8.sass
298
- - test/sass/templates/_imported_content.sass
299
- - test/sass/templates/_partial.sass
300
- - test/sass/templates/_same_name_different_partiality.scss
301
- - test/sass/templates/alt.sass
302
- - test/sass/templates/basic.sass
303
- - test/sass/templates/bork1.sass
304
- - test/sass/templates/bork2.sass
305
- - test/sass/templates/bork3.sass
306
- - test/sass/templates/bork4.sass
307
- - test/sass/templates/bork5.sass
308
- - test/sass/templates/cached_import_option.scss
309
- - test/sass/templates/compact.sass
310
- - test/sass/templates/complex.sass
311
- - test/sass/templates/compressed.sass
312
- - test/sass/templates/double_import_loop1.sass
313
- - test/sass/templates/expanded.sass
314
- - test/sass/templates/filename_fn.scss
315
- - test/sass/templates/if.sass
316
- - test/sass/templates/import.sass
317
- - test/sass/templates/import_charset.sass
318
- - test/sass/templates/import_charset_ibm866.sass
319
- - test/sass/templates/import_content.sass
320
- - test/sass/templates/importee.less
321
- - test/sass/templates/importee.sass
322
- - test/sass/templates/line_numbers.sass
323
- - test/sass/templates/mixin_bork.sass
324
- - test/sass/templates/mixins.sass
325
- - test/sass/templates/multiline.sass
326
- - test/sass/templates/nested.sass
327
- - test/sass/templates/nested_bork1.sass
328
- - test/sass/templates/nested_bork2.sass
329
- - test/sass/templates/nested_bork3.sass
330
- - test/sass/templates/nested_bork4.sass
331
- - test/sass/templates/nested_import.sass
332
- - test/sass/templates/nested_mixin_bork.sass
333
- - test/sass/templates/options.sass
334
- - test/sass/templates/parent_ref.sass
335
- - test/sass/templates/same_name_different_ext.sass
336
- - test/sass/templates/same_name_different_ext.scss
337
- - test/sass/templates/same_name_different_partiality.scss
338
- - test/sass/templates/script.sass
339
- - test/sass/templates/scss_import.scss
340
- - test/sass/templates/scss_importee.scss
341
- - test/sass/templates/single_import_loop.sass
342
- - test/sass/templates/subdir/import_up1.scss
343
- - test/sass/templates/subdir/import_up2.scss
344
- - test/sass/templates/subdir/nested_subdir/_nested_partial.sass
345
- - test/sass/templates/subdir/nested_subdir/nested_subdir.sass
346
- - test/sass/templates/subdir/subdir.sass
347
- - test/sass/templates/units.sass
348
- - test/sass/templates/warn.sass
349
- - test/sass/templates/warn_imported.sass
350
- - test/sass/test_helper.rb
351
- - test/sass/util/multibyte_string_scanner_test.rb
352
- - test/sass/util/normalized_map_test.rb
353
- - test/sass/util/subset_map_test.rb
354
- - test/sass/util_test.rb
355
- - test/sass/value_helpers_test.rb
356
- - test/test_helper.rb
357
- homepage: http://sass-lang.com/
246
+ homepage: https://sass-lang.com/
358
247
  licenses:
359
248
  - MIT
360
- metadata: {}
361
- post_install_message:
249
+ metadata:
250
+ source_code_uri: https://github.com/sass/ruby-sass
251
+ post_install_message: |2+
252
+
253
+ Ruby Sass has reached end-of-life and should no longer be used.
254
+
255
+ * If you use Sass as a command-line tool, we recommend using Dart Sass, the new
256
+ primary implementation: https://sass-lang.com/install
257
+
258
+ * If you use Sass as a plug-in for a Ruby web framework, we recommend using the
259
+ sassc gem: https://github.com/sass/sassc-ruby#readme
260
+
261
+ * For more details, please refer to the Sass blog:
262
+ https://sass-lang.com/blog/posts/7828841
263
+
362
264
  rdoc_options: []
363
265
  require_paths:
364
266
  - lib
@@ -374,34 +276,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
374
276
  version: '0'
375
277
  requirements: []
376
278
  rubyforge_project: sass
377
- rubygems_version: 2.6.11
279
+ rubygems_version: 2.6.14
378
280
  signing_key:
379
281
  specification_version: 4
380
282
  summary: A powerful but elegant CSS compiler that makes CSS fun again.
381
- test_files:
382
- - test/sass/plugin_test.rb
383
- - test/sass/encoding_test.rb
384
- - test/sass/importer_test.rb
385
- - test/sass/callbacks_test.rb
386
- - test/sass/scss/css_test.rb
387
- - test/sass/scss/rx_test.rb
388
- - test/sass/scss/scss_test.rb
389
- - test/sass/util/multibyte_string_scanner_test.rb
390
- - test/sass/util/normalized_map_test.rb
391
- - test/sass/util/subset_map_test.rb
392
- - test/sass/functions_test.rb
393
- - test/sass/util_test.rb
394
- - test/sass/cache_test.rb
395
- - test/sass/exec_test.rb
396
- - test/sass/value_helpers_test.rb
397
- - test/sass/conversion_test.rb
398
- - test/sass/script_test.rb
399
- - test/sass/logger_test.rb
400
- - test/sass/compiler_test.rb
401
- - test/sass/engine_test.rb
402
- - test/sass/css2sass_test.rb
403
- - test/sass/superselector_test.rb
404
- - test/sass/script_conversion_test.rb
405
- - test/sass/css_variable_test.rb
406
- - test/sass/source_map_test.rb
407
- - test/sass/extend_test.rb
283
+ test_files: []