sassc 2.0.1 → 2.1.0.pre1

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 (200) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/.gitmodules +1 -1
  4. data/.travis.yml +7 -3
  5. data/CHANGELOG.md +3 -0
  6. data/CODE_OF_CONDUCT.md +1 -1
  7. data/README.md +1 -1
  8. data/Rakefile +23 -8
  9. data/ext/extconf.rb +39 -0
  10. data/ext/libsass/.gitignore +1 -0
  11. data/ext/libsass/GNUmakefile.am +23 -39
  12. data/ext/libsass/Makefile +56 -91
  13. data/ext/libsass/Makefile.conf +16 -2
  14. data/ext/libsass/configure.ac +8 -12
  15. data/ext/libsass/include/sass/base.h +1 -0
  16. data/ext/libsass/include/sass/context.h +1 -1
  17. data/ext/libsass/src/GNUmakefile.am +1 -5
  18. data/ext/libsass/src/ast.cpp +747 -2010
  19. data/ext/libsass/src/ast.hpp +239 -2383
  20. data/ext/libsass/src/{to_c.cpp → ast2c.cpp} +22 -16
  21. data/ext/libsass/src/ast2c.hpp +39 -0
  22. data/ext/libsass/src/ast_def_macros.hpp +62 -10
  23. data/ext/libsass/src/ast_fwd_decl.cpp +1 -0
  24. data/ext/libsass/src/ast_fwd_decl.hpp +43 -165
  25. data/ext/libsass/src/ast_sel_cmp.cpp +909 -0
  26. data/ext/libsass/src/ast_sel_unify.cpp +280 -0
  27. data/ext/libsass/src/ast_selectors.cpp +1475 -0
  28. data/ext/libsass/src/ast_selectors.hpp +568 -0
  29. data/ext/libsass/src/ast_supports.cpp +130 -0
  30. data/ext/libsass/src/ast_supports.hpp +121 -0
  31. data/ext/libsass/src/ast_values.cpp +967 -0
  32. data/ext/libsass/src/ast_values.hpp +489 -0
  33. data/ext/libsass/src/backtrace.cpp +4 -0
  34. data/ext/libsass/src/base64vlq.cpp +3 -0
  35. data/ext/libsass/src/bind.cpp +18 -17
  36. data/ext/libsass/src/bind.hpp +3 -1
  37. data/ext/libsass/src/c2ast.cpp +64 -0
  38. data/ext/libsass/src/c2ast.hpp +14 -0
  39. data/ext/libsass/src/cencode.c +2 -2
  40. data/ext/libsass/src/check_nesting.cpp +52 -56
  41. data/ext/libsass/src/check_nesting.hpp +35 -34
  42. data/ext/libsass/src/color_maps.cpp +156 -153
  43. data/ext/libsass/src/color_maps.hpp +152 -152
  44. data/ext/libsass/src/constants.cpp +15 -0
  45. data/ext/libsass/src/constants.hpp +13 -0
  46. data/ext/libsass/src/context.cpp +24 -14
  47. data/ext/libsass/src/context.hpp +6 -6
  48. data/ext/libsass/src/cssize.cpp +69 -71
  49. data/ext/libsass/src/cssize.hpp +50 -50
  50. data/ext/libsass/src/debugger.hpp +117 -110
  51. data/ext/libsass/src/emitter.cpp +13 -12
  52. data/ext/libsass/src/emitter.hpp +13 -9
  53. data/ext/libsass/src/environment.cpp +15 -1
  54. data/ext/libsass/src/environment.hpp +6 -0
  55. data/ext/libsass/src/error_handling.cpp +36 -59
  56. data/ext/libsass/src/error_handling.hpp +29 -16
  57. data/ext/libsass/src/eval.cpp +302 -323
  58. data/ext/libsass/src/eval.hpp +64 -55
  59. data/ext/libsass/src/expand.cpp +94 -88
  60. data/ext/libsass/src/expand.hpp +33 -37
  61. data/ext/libsass/src/extend.cpp +38 -36
  62. data/ext/libsass/src/extend.hpp +15 -15
  63. data/ext/libsass/src/file.cpp +34 -2
  64. data/ext/libsass/src/fn_colors.cpp +594 -0
  65. data/ext/libsass/src/fn_colors.hpp +85 -0
  66. data/ext/libsass/src/fn_lists.cpp +284 -0
  67. data/ext/libsass/src/fn_lists.hpp +34 -0
  68. data/ext/libsass/src/fn_maps.cpp +94 -0
  69. data/ext/libsass/src/fn_maps.hpp +30 -0
  70. data/ext/libsass/src/fn_miscs.cpp +256 -0
  71. data/ext/libsass/src/fn_miscs.hpp +40 -0
  72. data/ext/libsass/src/fn_numbers.cpp +220 -0
  73. data/ext/libsass/src/fn_numbers.hpp +45 -0
  74. data/ext/libsass/src/fn_selectors.cpp +235 -0
  75. data/ext/libsass/src/fn_selectors.hpp +35 -0
  76. data/ext/libsass/src/fn_strings.cpp +254 -0
  77. data/ext/libsass/src/fn_strings.hpp +34 -0
  78. data/ext/libsass/src/fn_utils.cpp +156 -0
  79. data/ext/libsass/src/fn_utils.hpp +56 -0
  80. data/ext/libsass/src/inspect.cpp +101 -152
  81. data/ext/libsass/src/inspect.hpp +69 -73
  82. data/ext/libsass/src/json.cpp +2 -2
  83. data/ext/libsass/src/lexer.cpp +6 -3
  84. data/ext/libsass/src/listize.cpp +9 -11
  85. data/ext/libsass/src/listize.hpp +11 -7
  86. data/ext/libsass/src/memory/SharedPtr.cpp +2 -83
  87. data/ext/libsass/src/memory/SharedPtr.hpp +127 -143
  88. data/ext/libsass/src/node.cpp +13 -10
  89. data/ext/libsass/src/node.hpp +3 -3
  90. data/ext/libsass/src/operation.hpp +184 -144
  91. data/ext/libsass/src/operators.cpp +43 -17
  92. data/ext/libsass/src/operators.hpp +5 -5
  93. data/ext/libsass/src/output.cpp +21 -18
  94. data/ext/libsass/src/output.hpp +14 -21
  95. data/ext/libsass/src/parser.cpp +215 -183
  96. data/ext/libsass/src/parser.hpp +28 -24
  97. data/ext/libsass/src/plugins.cpp +5 -1
  98. data/ext/libsass/src/position.cpp +3 -0
  99. data/ext/libsass/src/prelexer.cpp +9 -3
  100. data/ext/libsass/src/prelexer.hpp +9 -9
  101. data/ext/libsass/src/remove_placeholders.cpp +14 -11
  102. data/ext/libsass/src/remove_placeholders.hpp +8 -9
  103. data/ext/libsass/src/sass.cpp +9 -3
  104. data/ext/libsass/src/sass.hpp +12 -9
  105. data/ext/libsass/src/sass2scss.cpp +45 -14
  106. data/ext/libsass/src/sass_context.cpp +18 -15
  107. data/ext/libsass/src/sass_functions.cpp +6 -3
  108. data/ext/libsass/src/sass_functions.hpp +1 -1
  109. data/ext/libsass/src/sass_util.cpp +3 -0
  110. data/ext/libsass/src/sass_values.cpp +21 -13
  111. data/ext/libsass/src/source_map.cpp +5 -2
  112. data/ext/libsass/src/source_map.hpp +2 -2
  113. data/ext/libsass/src/subset_map.cpp +4 -1
  114. data/ext/libsass/src/to_value.cpp +23 -21
  115. data/ext/libsass/src/to_value.hpp +18 -22
  116. data/ext/libsass/src/units.cpp +4 -0
  117. data/ext/libsass/src/units.hpp +1 -0
  118. data/ext/libsass/src/utf8/checked.h +12 -10
  119. data/ext/libsass/src/utf8/core.h +3 -0
  120. data/ext/libsass/src/utf8_string.cpp +3 -0
  121. data/ext/libsass/src/util.cpp +67 -75
  122. data/ext/libsass/src/util.hpp +64 -19
  123. data/ext/libsass/src/util_string.cpp +75 -0
  124. data/ext/libsass/src/util_string.hpp +19 -0
  125. data/ext/libsass/src/values.cpp +22 -13
  126. data/ext/libsass/src/values.hpp +2 -2
  127. data/ext/libsass/win/libsass.targets +30 -4
  128. data/ext/libsass/win/libsass.vcxproj.filters +82 -4
  129. data/lib/sassc.rb +24 -0
  130. data/lib/sassc/engine.rb +2 -2
  131. data/lib/sassc/native.rb +8 -1
  132. data/lib/sassc/version.rb +1 -1
  133. data/sassc.gemspec +19 -11
  134. data/test/engine_test.rb +26 -1
  135. data/test/native_test.rb +1 -1
  136. metadata +66 -72
  137. data/ext/Rakefile +0 -3
  138. data/ext/libsass/.github/CONTRIBUTING.md +0 -65
  139. data/ext/libsass/.github/ISSUE_TEMPLATE.md +0 -54
  140. data/ext/libsass/.travis.yml +0 -64
  141. data/ext/libsass/Readme.md +0 -104
  142. data/ext/libsass/SECURITY.md +0 -10
  143. data/ext/libsass/appveyor.yml +0 -91
  144. data/ext/libsass/docs/README.md +0 -20
  145. data/ext/libsass/docs/api-context-example.md +0 -45
  146. data/ext/libsass/docs/api-context-internal.md +0 -163
  147. data/ext/libsass/docs/api-context.md +0 -295
  148. data/ext/libsass/docs/api-doc.md +0 -215
  149. data/ext/libsass/docs/api-function-example.md +0 -67
  150. data/ext/libsass/docs/api-function-internal.md +0 -8
  151. data/ext/libsass/docs/api-function.md +0 -74
  152. data/ext/libsass/docs/api-importer-example.md +0 -112
  153. data/ext/libsass/docs/api-importer-internal.md +0 -20
  154. data/ext/libsass/docs/api-importer.md +0 -86
  155. data/ext/libsass/docs/api-value-example.md +0 -55
  156. data/ext/libsass/docs/api-value-internal.md +0 -76
  157. data/ext/libsass/docs/api-value.md +0 -154
  158. data/ext/libsass/docs/build-on-darwin.md +0 -27
  159. data/ext/libsass/docs/build-on-gentoo.md +0 -55
  160. data/ext/libsass/docs/build-on-windows.md +0 -139
  161. data/ext/libsass/docs/build-shared-library.md +0 -35
  162. data/ext/libsass/docs/build-with-autotools.md +0 -78
  163. data/ext/libsass/docs/build-with-makefiles.md +0 -68
  164. data/ext/libsass/docs/build-with-mingw.md +0 -107
  165. data/ext/libsass/docs/build-with-visual-studio.md +0 -90
  166. data/ext/libsass/docs/build.md +0 -97
  167. data/ext/libsass/docs/compatibility-plan.md +0 -48
  168. data/ext/libsass/docs/contributing.md +0 -17
  169. data/ext/libsass/docs/custom-functions-internal.md +0 -122
  170. data/ext/libsass/docs/dev-ast-memory.md +0 -223
  171. data/ext/libsass/docs/implementations.md +0 -56
  172. data/ext/libsass/docs/plugins.md +0 -47
  173. data/ext/libsass/docs/setup-environment.md +0 -68
  174. data/ext/libsass/docs/source-map-internals.md +0 -51
  175. data/ext/libsass/docs/trace.md +0 -26
  176. data/ext/libsass/docs/triage.md +0 -17
  177. data/ext/libsass/docs/unicode.md +0 -39
  178. data/ext/libsass/extconf.rb +0 -6
  179. data/ext/libsass/script/bootstrap +0 -13
  180. data/ext/libsass/script/branding +0 -10
  181. data/ext/libsass/script/ci-build-libsass +0 -134
  182. data/ext/libsass/script/ci-build-plugin +0 -62
  183. data/ext/libsass/script/ci-install-compiler +0 -6
  184. data/ext/libsass/script/ci-install-deps +0 -20
  185. data/ext/libsass/script/ci-report-coverage +0 -42
  186. data/ext/libsass/script/spec +0 -5
  187. data/ext/libsass/script/tap-driver +0 -652
  188. data/ext/libsass/script/tap-runner +0 -1
  189. data/ext/libsass/script/test-leaks.pl +0 -103
  190. data/ext/libsass/src/functions.cpp +0 -2234
  191. data/ext/libsass/src/functions.hpp +0 -198
  192. data/ext/libsass/src/to_c.hpp +0 -39
  193. data/ext/libsass/test/test_node.cpp +0 -94
  194. data/ext/libsass/test/test_paths.cpp +0 -28
  195. data/ext/libsass/test/test_selector_difference.cpp +0 -25
  196. data/ext/libsass/test/test_specificity.cpp +0 -25
  197. data/ext/libsass/test/test_subset_map.cpp +0 -472
  198. data/ext/libsass/test/test_superselector.cpp +0 -69
  199. data/ext/libsass/test/test_unification.cpp +0 -31
  200. data/lib/tasks/libsass.rb +0 -33
@@ -132,8 +132,8 @@ module SassC
132
132
  end
133
133
 
134
134
  def load_paths
135
- paths = @options[:load_paths]
136
- paths.join(":") if paths
135
+ paths = (@options[:load_paths] || []) + SassC.load_paths
136
+ paths.join(File::PATH_SEPARATOR) unless paths.empty?
137
137
  end
138
138
  end
139
139
  end
@@ -8,7 +8,14 @@ module SassC
8
8
 
9
9
  spec = Gem.loaded_specs["sassc"]
10
10
  gem_root = spec.gem_dir
11
- ffi_lib "#{gem_root}/ext/libsass/lib/libsass.so"
11
+
12
+ dl_ext = (RUBY_PLATFORM =~ /darwin/ ? 'bundle' : 'so')
13
+ ruby_version_so_path = "#{gem_root}/lib/sassc/#{RUBY_VERSION[/\d+.\d+/]}/libsass.#{dl_ext}"
14
+ if File.exist?(ruby_version_so_path)
15
+ ffi_lib ruby_version_so_path
16
+ else
17
+ ffi_lib "#{gem_root}/lib/sassc/libsass.#{dl_ext}"
18
+ end
12
19
 
13
20
  require_relative "native/sass_value"
14
21
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module SassC
4
- VERSION = "2.0.1"
4
+ VERSION = "2.1.0.pre1"
5
5
  end
@@ -19,30 +19,38 @@ Gem::Specification.new do |spec|
19
19
  spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
20
20
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
21
21
 
22
- spec.required_ruby_version = ">= 2.3.3"
22
+ spec.required_ruby_version = ">= 2.0.0"
23
23
 
24
24
  spec.require_paths = ["lib"]
25
25
 
26
- spec.extensions = ["ext/Rakefile"]
26
+ spec.platform = Gem::Platform::RUBY
27
+ spec.extensions = ["ext/extconf.rb"]
27
28
 
28
29
  spec.add_development_dependency "minitest", "~> 5.5.1"
29
30
  spec.add_development_dependency "minitest-around"
30
31
  spec.add_development_dependency "test_construct"
31
32
  spec.add_development_dependency "pry"
32
33
  spec.add_development_dependency "bundler"
34
+ spec.add_development_dependency "rake"
35
+ spec.add_development_dependency "rake-compiler"
36
+ spec.add_development_dependency "rake-compiler-dock"
33
37
 
34
- spec.add_dependency "rake"
35
38
  spec.add_dependency "ffi", "~> 1.9"
36
39
 
37
40
  gem_dir = File.expand_path(File.dirname(__FILE__)) + "/"
38
- `git submodule --quiet foreach pwd`.split($\).each do |submodule_path|
39
- Dir.chdir(submodule_path) do
40
- submodule_relative_path = submodule_path.sub gem_dir, ""
41
- # issue git ls-files in submodule's directory and
42
- # prepend the submodule path to create absolute file paths
43
- `git ls-files`.split($\).each do |filename|
44
- spec.files << "#{submodule_relative_path}/#{filename}"
45
- end
41
+
42
+ libsass_dir = File.join(gem_dir, 'ext', 'libsass')
43
+ if !File.directory?(libsass_dir)
44
+ $stderr.puts "Error: ext/libsass not checked out. Please run:\n\n"\
45
+ " git submodule update --init"
46
+ exit 1
47
+ end
48
+
49
+ Dir.chdir(libsass_dir) do
50
+ submodule_relative_path = File.join('ext', 'libsass')
51
+ `git ls-files`.split($\).each do |filename|
52
+ next if filename =~ %r{(^("?test|docs|script)/)|\.md$|\.yml$}
53
+ spec.files << File.join(submodule_relative_path, filename)
46
54
  end
47
55
  end
48
56
 
@@ -88,7 +88,7 @@ $var: 1;
88
88
  SCSS
89
89
  expected_output = <<-CSS
90
90
  .foo {
91
- baz: 0.33333; }
91
+ baz: 0.3333333333; }
92
92
  CSS
93
93
  output = Engine.new(template).render
94
94
  assert_equal expected_output, output
@@ -198,6 +198,31 @@ SCSS
198
198
  ).render
199
199
  end
200
200
 
201
+ def test_global_load_paths
202
+ temp_dir("included_1")
203
+ temp_dir("included_2")
204
+
205
+ temp_file("included_1/import_parent.scss", "$s: 30px;")
206
+ temp_file("included_2/import.scss", "@import 'import_parent'; $size: $s;")
207
+ temp_file("styles.scss", "@import 'import.scss'; .hi { width: $size; }")
208
+
209
+ ::SassC.load_paths << "included_1"
210
+ ::SassC.load_paths << "included_2"
211
+
212
+ assert_equal ".hi {\n width: 30px; }\n", Engine.new(
213
+ File.read("styles.scss"),
214
+ ).render
215
+ ::SassC.load_paths.clear
216
+ end
217
+
218
+ def test_env_load_paths
219
+ expected_load_paths = [ "included_1", "included_2" ]
220
+ ::SassC.instance_eval { @load_paths = nil }
221
+ ENV['SASS_PATH'] = expected_load_paths.join(File::PATH_SEPARATOR)
222
+ assert_equal expected_load_paths, ::SassC.load_paths
223
+ ::SassC.load_paths.clear
224
+ end
225
+
201
226
  def test_load_paths_not_configured
202
227
  temp_file("included_1/import_parent.scss", "$s: 30px;")
203
228
  temp_file("included_2/import.scss", "@import 'import_parent'; $size: $s;")
@@ -11,7 +11,7 @@ module SassC
11
11
 
12
12
  class General < MiniTest::Test
13
13
  def test_it_reports_the_libsass_version
14
- assert_equal "3.5.2", Native.version
14
+ assert_equal "3.6.0", Native.version
15
15
  end
16
16
  end
17
17
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sassc
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.1
4
+ version: 2.1.0.pre1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryan Boland
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-02-26 00:00:00.000000000 Z
11
+ date: 2019-05-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: minitest
@@ -87,7 +87,35 @@ dependencies:
87
87
  - - ">="
88
88
  - !ruby/object:Gem::Version
89
89
  version: '0'
90
- type: :runtime
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: rake-compiler
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: rake-compiler-dock
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :development
91
119
  prerelease: false
92
120
  version_requirements: !ruby/object:Gem::Requirement
93
121
  requirements:
@@ -113,7 +141,7 @@ email:
113
141
  - ryan@tanookilabs.com
114
142
  executables: []
115
143
  extensions:
116
- - ext/Rakefile
144
+ - ext/extconf.rb
117
145
  extra_rdoc_files: []
118
146
  files:
119
147
  - ".gitignore"
@@ -125,60 +153,19 @@ files:
125
153
  - LICENSE.txt
126
154
  - README.md
127
155
  - Rakefile
128
- - ext/Rakefile
156
+ - ext/extconf.rb
129
157
  - ext/libsass/.editorconfig
130
158
  - ext/libsass/.gitattributes
131
- - ext/libsass/.github/CONTRIBUTING.md
132
- - ext/libsass/.github/ISSUE_TEMPLATE.md
133
159
  - ext/libsass/.gitignore
134
- - ext/libsass/.travis.yml
135
160
  - ext/libsass/COPYING
136
161
  - ext/libsass/GNUmakefile.am
137
162
  - ext/libsass/INSTALL
138
163
  - ext/libsass/LICENSE
139
164
  - ext/libsass/Makefile
140
165
  - ext/libsass/Makefile.conf
141
- - ext/libsass/Readme.md
142
- - ext/libsass/SECURITY.md
143
- - ext/libsass/appveyor.yml
144
166
  - ext/libsass/configure.ac
145
167
  - ext/libsass/contrib/libsass.spec
146
168
  - ext/libsass/contrib/plugin.cpp
147
- - ext/libsass/docs/README.md
148
- - ext/libsass/docs/api-context-example.md
149
- - ext/libsass/docs/api-context-internal.md
150
- - ext/libsass/docs/api-context.md
151
- - ext/libsass/docs/api-doc.md
152
- - ext/libsass/docs/api-function-example.md
153
- - ext/libsass/docs/api-function-internal.md
154
- - ext/libsass/docs/api-function.md
155
- - ext/libsass/docs/api-importer-example.md
156
- - ext/libsass/docs/api-importer-internal.md
157
- - ext/libsass/docs/api-importer.md
158
- - ext/libsass/docs/api-value-example.md
159
- - ext/libsass/docs/api-value-internal.md
160
- - ext/libsass/docs/api-value.md
161
- - ext/libsass/docs/build-on-darwin.md
162
- - ext/libsass/docs/build-on-gentoo.md
163
- - ext/libsass/docs/build-on-windows.md
164
- - ext/libsass/docs/build-shared-library.md
165
- - ext/libsass/docs/build-with-autotools.md
166
- - ext/libsass/docs/build-with-makefiles.md
167
- - ext/libsass/docs/build-with-mingw.md
168
- - ext/libsass/docs/build-with-visual-studio.md
169
- - ext/libsass/docs/build.md
170
- - ext/libsass/docs/compatibility-plan.md
171
- - ext/libsass/docs/contributing.md
172
- - ext/libsass/docs/custom-functions-internal.md
173
- - ext/libsass/docs/dev-ast-memory.md
174
- - ext/libsass/docs/implementations.md
175
- - ext/libsass/docs/plugins.md
176
- - ext/libsass/docs/setup-environment.md
177
- - ext/libsass/docs/source-map-internals.md
178
- - ext/libsass/docs/trace.md
179
- - ext/libsass/docs/triage.md
180
- - ext/libsass/docs/unicode.md
181
- - ext/libsass/extconf.rb
182
169
  - ext/libsass/include/sass.h
183
170
  - ext/libsass/include/sass/base.h
184
171
  - ext/libsass/include/sass/context.h
@@ -190,23 +177,22 @@ files:
190
177
  - ext/libsass/m4/.gitkeep
191
178
  - ext/libsass/m4/m4-ax_cxx_compile_stdcxx_11.m4
192
179
  - ext/libsass/res/resource.rc
193
- - ext/libsass/script/bootstrap
194
- - ext/libsass/script/branding
195
- - ext/libsass/script/ci-build-libsass
196
- - ext/libsass/script/ci-build-plugin
197
- - ext/libsass/script/ci-install-compiler
198
- - ext/libsass/script/ci-install-deps
199
- - ext/libsass/script/ci-report-coverage
200
- - ext/libsass/script/spec
201
- - ext/libsass/script/tap-driver
202
- - ext/libsass/script/tap-runner
203
- - ext/libsass/script/test-leaks.pl
204
180
  - ext/libsass/src/GNUmakefile.am
205
181
  - ext/libsass/src/ast.cpp
206
182
  - ext/libsass/src/ast.hpp
183
+ - ext/libsass/src/ast2c.cpp
184
+ - ext/libsass/src/ast2c.hpp
207
185
  - ext/libsass/src/ast_def_macros.hpp
208
186
  - ext/libsass/src/ast_fwd_decl.cpp
209
187
  - ext/libsass/src/ast_fwd_decl.hpp
188
+ - ext/libsass/src/ast_sel_cmp.cpp
189
+ - ext/libsass/src/ast_sel_unify.cpp
190
+ - ext/libsass/src/ast_selectors.cpp
191
+ - ext/libsass/src/ast_selectors.hpp
192
+ - ext/libsass/src/ast_supports.cpp
193
+ - ext/libsass/src/ast_supports.hpp
194
+ - ext/libsass/src/ast_values.cpp
195
+ - ext/libsass/src/ast_values.hpp
210
196
  - ext/libsass/src/b64/cencode.h
211
197
  - ext/libsass/src/b64/encode.h
212
198
  - ext/libsass/src/backtrace.cpp
@@ -215,6 +201,8 @@ files:
215
201
  - ext/libsass/src/base64vlq.hpp
216
202
  - ext/libsass/src/bind.cpp
217
203
  - ext/libsass/src/bind.hpp
204
+ - ext/libsass/src/c2ast.cpp
205
+ - ext/libsass/src/c2ast.hpp
218
206
  - ext/libsass/src/c99func.c
219
207
  - ext/libsass/src/cencode.c
220
208
  - ext/libsass/src/check_nesting.cpp
@@ -243,8 +231,22 @@ files:
243
231
  - ext/libsass/src/extend.hpp
244
232
  - ext/libsass/src/file.cpp
245
233
  - ext/libsass/src/file.hpp
246
- - ext/libsass/src/functions.cpp
247
- - ext/libsass/src/functions.hpp
234
+ - ext/libsass/src/fn_colors.cpp
235
+ - ext/libsass/src/fn_colors.hpp
236
+ - ext/libsass/src/fn_lists.cpp
237
+ - ext/libsass/src/fn_lists.hpp
238
+ - ext/libsass/src/fn_maps.cpp
239
+ - ext/libsass/src/fn_maps.hpp
240
+ - ext/libsass/src/fn_miscs.cpp
241
+ - ext/libsass/src/fn_miscs.hpp
242
+ - ext/libsass/src/fn_numbers.cpp
243
+ - ext/libsass/src/fn_numbers.hpp
244
+ - ext/libsass/src/fn_selectors.cpp
245
+ - ext/libsass/src/fn_selectors.hpp
246
+ - ext/libsass/src/fn_strings.cpp
247
+ - ext/libsass/src/fn_strings.hpp
248
+ - ext/libsass/src/fn_utils.cpp
249
+ - ext/libsass/src/fn_utils.hpp
248
250
  - ext/libsass/src/inspect.cpp
249
251
  - ext/libsass/src/inspect.hpp
250
252
  - ext/libsass/src/json.cpp
@@ -291,8 +293,6 @@ files:
291
293
  - ext/libsass/src/subset_map.cpp
292
294
  - ext/libsass/src/subset_map.hpp
293
295
  - ext/libsass/src/support/libsass.pc.in
294
- - ext/libsass/src/to_c.cpp
295
- - ext/libsass/src/to_c.hpp
296
296
  - ext/libsass/src/to_value.cpp
297
297
  - ext/libsass/src/to_value.hpp
298
298
  - ext/libsass/src/units.cpp
@@ -305,15 +305,10 @@ files:
305
305
  - ext/libsass/src/utf8_string.hpp
306
306
  - ext/libsass/src/util.cpp
307
307
  - ext/libsass/src/util.hpp
308
+ - ext/libsass/src/util_string.cpp
309
+ - ext/libsass/src/util_string.hpp
308
310
  - ext/libsass/src/values.cpp
309
311
  - ext/libsass/src/values.hpp
310
- - ext/libsass/test/test_node.cpp
311
- - ext/libsass/test/test_paths.cpp
312
- - ext/libsass/test/test_selector_difference.cpp
313
- - ext/libsass/test/test_specificity.cpp
314
- - ext/libsass/test/test_subset_map.cpp
315
- - ext/libsass/test/test_superselector.cpp
316
- - ext/libsass/test/test_unification.cpp
317
312
  - ext/libsass/version.sh
318
313
  - ext/libsass/win/libsass.sln
319
314
  - ext/libsass/win/libsass.sln.DotSettings
@@ -357,7 +352,6 @@ files:
357
352
  - lib/sassc/util.rb
358
353
  - lib/sassc/util/normalized_map.rb
359
354
  - lib/sassc/version.rb
360
- - lib/tasks/libsass.rb
361
355
  - sassc.gemspec
362
356
  - test/custom_importer_test.rb
363
357
  - test/engine_test.rb
@@ -380,12 +374,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
380
374
  requirements:
381
375
  - - ">="
382
376
  - !ruby/object:Gem::Version
383
- version: 2.3.3
377
+ version: 2.0.0
384
378
  required_rubygems_version: !ruby/object:Gem::Requirement
385
379
  requirements:
386
- - - ">="
380
+ - - ">"
387
381
  - !ruby/object:Gem::Version
388
- version: '0'
382
+ version: 1.3.1
389
383
  requirements: []
390
384
  rubyforge_project:
391
385
  rubygems_version: 2.7.6
@@ -1,3 +0,0 @@
1
- require_relative '../lib/tasks/libsass'
2
-
3
- task default: 'libsass:compile'
@@ -1,65 +0,0 @@
1
- # Contributing to LibSass
2
-
3
- :+1::tada: First off, thanks for taking the time to contribute! :tada::+1:
4
-
5
- The following is a set of guidelines for contributing to LibSass, which is hosted in the [Sass Organization](https://github.com/sass) on GitHub.
6
- These are just guidelines, not rules, use your best judgment and feel free to propose changes to this document in a pull request.
7
-
8
- LibSass is a library that implements a [sass language][8] compiler. As such it does not directly interface with end users (frontend developers).
9
- For direct contributions to the LibSass code base you will need to have at least a rough idea of C++, we will not lie about that.
10
- But there are other ways to contribute to the progress of LibSass. All contributions are done via github pull requests.
11
-
12
- You can also contribute to the LibSass [documentation][9] or provide additional [spec tests][10] (and we will gladly point you in the
13
- direction for corners that lack test coverage). Foremost we rely on good and concise bug reports for issues the spec tests do not yet catch.
14
-
15
- ## Precheck: My Sass isn't compiling
16
- - [ ] Check if you can reproduce the issue via [SourceMap Inspector][5] (updated regularly).
17
- - [ ] Validate official ruby sass compiler via [SassMeister][6] produces your expected result.
18
- - [ ] Search for similar issue in [LibSass][1] and [node-sass][2] (include closed tickets)
19
- - [ ] Optionally test your code directly with [sass][7] or [sassc][3] ([installer][4])
20
-
21
- ## Precheck: My build/install fails
22
- - [ ] Problems with building or installing libsass should be directed to implementors first!
23
- - [ ] Except for issues directly verified via sassc or LibSass own build (make/autotools9
24
-
25
- ## Craft a meaningfull error report
26
- - [ ] Include the version of libsass and the implementor (i.e. node-sass or sassc)
27
- - [ ] Include information about your operating system and environment (i.e. io.js)
28
- - [ ] Either create a self contained sample that shows your issue ...
29
- - [ ] ... or provide it as a fetchable (github preferred) archive/repo
30
- - [ ] ... and include a step by step list of command to get all dependencies
31
- - [ ] Make it clear if you use indented or/and scss syntax
32
-
33
- ## My error is hiding in a big code base
34
- 1. we do not have time to support your code base!
35
- 2. to fix occuring issues we need precise bug reports
36
- 3. the more precise you are, the faster we can help you
37
- 4. lazy reports get overlooked even when exposing serious bugs
38
- 5. it's not hard to do, it only takes time
39
- - [ ] Make sure you saved the current state (i.e. commit to git)
40
- - [ ] Start by uncommenting blocks in the initial source file
41
- - [ ] Check if the problem is still there after each edit
42
- - [ ] Repeat until the problem goes away
43
- - [ ] Inline imported files as you go along
44
- - [ ] Finished once you cannot remove more
45
- - [ ] The emphasis is on the word "repeat" ...
46
-
47
- ## What makes a code test case
48
-
49
- Important is that someone else can get the test case up and running to reproduce it locally. For this
50
- we urge you to verify that your sample yields the expected result by testing it via [SassMeister][6]
51
- or directly via ruby sass or node-sass (or any other libsass implementor) before submitting your bug
52
- report. Once you verified all of the above, you may use the template below to file your bug report.
53
-
54
-
55
- [1]: https://github.com/sass/libsass/issues?utf8=%E2%9C%93&q=is%3Aissue
56
- [2]: https://github.com/sass/node-sass/issues?utf8=%E2%9C%93&q=is%3Aissue
57
- [3]: https://github.com/sass/sassc
58
- [4]: http://libsass.ocbnet.ch/installer/
59
- [5]: http://libsass.ocbnet.ch/srcmap/
60
- [6]: http://www.sassmeister.com/
61
- [7]: https://rubygems.org/gems/sass
62
-
63
- [8]: http://sass-lang.com/
64
- [9]: https://github.com/sass/libsass/tree/master/docs
65
- [10]: https://github.com/sass/sass-spec
@@ -1,54 +0,0 @@
1
- [todo]: # (Title: Be as meaningful as possible)
2
- [todo]: # (Title: Try to use 60 or less chars)
3
-
4
- [todo]: # (This is only a template!)
5
- [todo]: # (remove unneeded bits)
6
- [todo]: # (use github preview!)
7
-
8
- ## input.scss
9
-
10
- [todo]: # (always test and report with scss syntax)
11
- [todo]: # (use sass only when results differ from scss)
12
-
13
- ```scss
14
- test {
15
- content: bar
16
- }
17
- ```
18
-
19
- ## Actual results
20
-
21
- [todo]: # (update version info!)
22
-
23
- [libsass 3.X.y][1]
24
- ```css
25
- test {
26
- content: bar; }
27
- ```
28
-
29
- ## Expected result
30
-
31
- [todo]: # (update version info!)
32
-
33
- ruby sass 3.X.y
34
- ```css
35
- test {
36
- content: bar; }
37
- ```
38
-
39
- [todo]: # (update version info!)
40
- [todo]: # (example for node-sass!)
41
-
42
- version info:
43
- ```cmd
44
- $ node-sass --version
45
- node-sass 3.X.y (Wrapper) [JavaScript]
46
- libsass 3.X.y (Sass Compiler) [C/C++]
47
- ```
48
-
49
- [todo]: # (Go to http://libsass.ocbnet.ch/srcmap)
50
- [todo]: # (Enter your SCSS code and hit compile)
51
- [todo]: # (Click `bookmark` and replace the url)
52
- [todo]: # (link is used in actual results above)
53
-
54
- [1]: http://libsass.ocbnet.ch/srcmap/#dGVzdCB7CiAgY29udGVudDogYmFyOyB9Cg==