sassc 2.1.0-x86-mingw32 → 2.2.0-x86-mingw32

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ef91191f09999bc5603739bed05c03cdea09b5d152c8fa0ec1a0c2fc3055d6df
4
- data.tar.gz: 8b64d27d1314ba96b0b61ff4b201cd2e823b76b9ef3ea7b0314c7cdd480e37ee
3
+ metadata.gz: 86611e090b3290b980b1abe16ebe0bf775be64abfe9f436d92407a51c40fce57
4
+ data.tar.gz: e2bff48f2b486cb8f5b05a4fd8235e9c9bcde639ef5454ca1baed55c49e6c843
5
5
  SHA512:
6
- metadata.gz: 88a5b1685d2271d04b5db79cf4e16212f4a0072f13b692770f8be1fa6aacbf2e1d66b83baffd7cb63b8b402c58059c0fe1c712590ddbf4c5f822e3d5811afa20
7
- data.tar.gz: e452b28b26d48ba55c59ee854a89f8a9766644e858de38d6d13b697483a995a9237ef98863483fe9856558a73af8adb181350580d203dd8ddad9f52753b0b8cc
6
+ metadata.gz: 2a6a2356c2c5a712e4c531b156f787b2a5fc698e4c24bf93b2f1a994474debccc8a03e391dc205dd6da5f8b5622293aa5338770fc745013e38b84171338d3e0c
7
+ data.tar.gz: 2084a6cd8efaa74a0dcd960db2b3a1a5871538ac2b77740fc26de89adb98977f8f5908e55ae944cd5cfb9eb811ad3e338cd74009935a28883c0421b16296680b
data/CHANGELOG.md CHANGED
@@ -1,3 +1,5 @@
1
+ - **2.2.0**
2
+ - [Do not build precompiled gems for Linux](https://github.com/sass/sassc-ruby/pull/145)
1
3
  - **2.1.0**
2
4
  - Equivalent to 2.1.0.pre3
3
5
  - **2.1.0.pre3**
data/Rakefile CHANGED
@@ -18,7 +18,7 @@ Rake::ExtensionTask.new('libsass', gem_spec) do |ext|
18
18
  ext.ext_dir = 'ext'
19
19
  ext.lib_dir = 'lib/sassc'
20
20
  ext.cross_compile = true
21
- ext.cross_platform = %w[x86-mingw32 x64-mingw32 x86-linux x86_64-linux]
21
+ ext.cross_platform = %w[x86-mingw32 x64-mingw32]
22
22
 
23
23
  # Link C++ stdlib statically when building binary gems.
24
24
  ext.cross_config_options << '--enable-static-stdlib'
@@ -38,7 +38,7 @@ task 'gem:native' do
38
38
  # Only one version should be specified, as the shared library is Ruby-agnostic.
39
39
  #
40
40
  # g++-multilib is installed for 64->32-bit cross-compilation.
41
- RakeCompilerDock.sh "sudo apt-get install -y g++-multilib && bundle && gem i rake --no-document && "\
41
+ RakeCompilerDock.sh "sudo apt-get install -y g++-multilib && gem i rake bundler --no-document && bundle && "\
42
42
  "rake clean && rake cross native gem MAKE='nice make -j`nproc`' "\
43
43
  "RUBY_CC_VERSION=2.6.0 CLEAN=1"
44
44
  end
@@ -12,7 +12,11 @@ module SassC
12
12
 
13
13
  list = Native.make_function_list(Script.custom_functions.count)
14
14
 
15
- functions = FunctionWrapper.extend(Script::Functions)
15
+ # use an anonymous class wrapper to avoid mutations in a threaded environment
16
+ functions = Class.new do
17
+ attr_accessor :options
18
+ include Script::Functions
19
+ end.new
16
20
  functions.options = @options
17
21
 
18
22
  Script.custom_functions.each_with_index do |custom_function, i|
@@ -65,11 +69,5 @@ module SassC
65
69
  $stderr.puts "[SassC::FunctionsHandler] #{message}"
66
70
  Native.make_error(message)
67
71
  end
68
-
69
- class FunctionWrapper
70
- class << self
71
- attr_accessor :options
72
- end
73
- end
74
72
  end
75
73
  end
data/lib/sassc/script.rb CHANGED
@@ -4,9 +4,7 @@ module SassC
4
4
  module Script
5
5
 
6
6
  def self.custom_functions
7
- Functions.instance_methods.select do |function|
8
- Functions.public_method_defined?(function)
9
- end
7
+ Functions.public_instance_methods
10
8
  end
11
9
 
12
10
  def self.formatted_function_name(function_name)
data/lib/sassc/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module SassC
4
- VERSION = "2.1.0"
4
+ VERSION = "2.2.0"
5
5
  end
@@ -185,6 +185,22 @@ module SassC
185
185
  CSS
186
186
  end
187
187
 
188
+ def test_concurrency
189
+ 10.times do
190
+ threads = []
191
+ 10.times do |i|
192
+ threads << Thread.new(i) do |id|
193
+ out = Engine.new("div { url: inspect_options(); }", {test_key1: 'test_value', test_key2: id}).render
194
+ assert_match /test_key1/, out
195
+ assert_match /test_key2/, out
196
+ assert_match /test_value/, out
197
+ assert_match /#{id}/, out
198
+ end
199
+ end
200
+ threads.each(&:join)
201
+ end
202
+ end
203
+
188
204
  private
189
205
 
190
206
  def assert_sass(sass, expected_css)
@@ -279,6 +295,10 @@ module SassC
279
295
  return argument
280
296
  end
281
297
 
298
+ def inspect_options
299
+ SassC::Script::Value::String.new(self.options.inspect, :string)
300
+ end
301
+
282
302
  def returns_sass_value
283
303
  return SassC::Script::Value::Color.new(red: 0, green: 0, blue: 0)
284
304
  end
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.1.0
4
+ version: 2.2.0
5
5
  platform: x86-mingw32
6
6
  authors:
7
7
  - Ryan Boland
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-08-19 00:00:00.000000000 Z
11
+ date: 2019-08-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: minitest