sass-embedded 0.7.12 → 0.7.16
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.
- checksums.yaml +4 -4
- data/README.md +1 -0
- data/ext/dependencies.rb +1 -1
- data/ext/extconf.rb +15 -10
- data/lib/sass/compile.rb +5 -1
- data/lib/sass/transport.rb +15 -8
- data/lib/sass/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 30cfad0f8ab506763c7651c5f603279bbba1a533584298baf3095fa3052c3297
|
4
|
+
data.tar.gz: bc9c76ed6991d5663fe2c62b445b9e7a498eb791599c9d8523b97add5bb44202
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c83c480f0a41a6b7603989613e43009ec0ed1f36eb160aa6eafe877ef6f319f68274db04065fc7eeb74593fc12bbfbe9a79fddcbcb8d1768d03f3bcf02e6199f
|
7
|
+
data.tar.gz: 3caac14ead5a14e165b1759f424b392f353ef7881a50ae78afb0edc22edd7cf9b49fa8c81d52d0f3ecca7832879e5a342c5cecd83d5f407cefb7758c1d20b02d
|
data/README.md
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
# Embedded Sass Host for Ruby
|
2
2
|
|
3
3
|
[](https://github.com/ntkme/embedded-host-ruby/actions/workflows/build.yml)
|
4
|
+
[](https://rubygems.org/gems/sass-embedded)
|
4
5
|
|
5
6
|
This is a Ruby library that implements the host side of the [Embedded Sass protocol](https://github.com/sass/sass-embedded-protocol).
|
6
7
|
|
data/ext/dependencies.rb
CHANGED
data/ext/extconf.rb
CHANGED
@@ -63,7 +63,7 @@ module Sass
|
|
63
63
|
raise
|
64
64
|
end
|
65
65
|
rescue StandardError
|
66
|
-
raise "Failed to get: #{
|
66
|
+
raise "Failed to get: #{uri_s}"
|
67
67
|
end
|
68
68
|
|
69
69
|
def resolve_tag_name(repo, *requirements, gh_release: true)
|
@@ -74,16 +74,21 @@ module Sass
|
|
74
74
|
File.basename file.base_uri.to_s
|
75
75
|
end
|
76
76
|
else
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
77
|
+
begin
|
78
|
+
headers = {}
|
79
|
+
headers['Authorization'] = "token #{ENV['GITHUB_TOKEN']}" if ENV['GITHUB_TOKEN']
|
80
|
+
if gh_release
|
81
|
+
URI.parse("https://api.github.com/repos/#{repo}/releases?per_page=100").open(headers) do |file|
|
82
|
+
JSON.parse(file.read).map { |release| release['tag_name'] }
|
83
|
+
end
|
84
|
+
else
|
85
|
+
URI.parse("https://api.github.com/repos/#{repo}/tags?per_page=100").open(headers) do |file|
|
86
|
+
JSON.parse(file.read).map { |tag| tag['name'] }
|
87
|
+
end
|
86
88
|
end
|
89
|
+
rescue OpenURI::HTTPError
|
90
|
+
requirements.requirements
|
91
|
+
.map { |requirement| requirement.last.to_s.gsub('.pre.', '-') }
|
87
92
|
end
|
88
93
|
.find { |version| Gem::Version.correct?(version) && requirements.satisfied_by?(Gem::Version.new(version)) }
|
89
94
|
&.to_s
|
data/lib/sass/compile.rb
CHANGED
@@ -161,9 +161,13 @@ module Sass
|
|
161
161
|
end
|
162
162
|
|
163
163
|
def function_call_response(function_call_request)
|
164
|
+
# TODO: convert argument_list to **kwargs
|
164
165
|
EmbeddedProtocol::InboundMessage::FunctionCallResponse.new(
|
165
166
|
id: function_call_request.id,
|
166
|
-
success: @functions[function_call_request.name].call(*function_call_request.arguments)
|
167
|
+
success: @functions[function_call_request.name].call(*function_call_request.arguments),
|
168
|
+
accessed_argument_lists: function_call_request.arguments
|
169
|
+
.filter { |argument| argument.value == :argument_list }
|
170
|
+
.map { |argument| argument.argument_list.id }
|
167
171
|
)
|
168
172
|
rescue StandardError => e
|
169
173
|
EmbeddedProtocol::InboundMessage::FunctionCallResponse.new(
|
data/lib/sass/transport.rb
CHANGED
@@ -30,6 +30,10 @@ module Sass
|
|
30
30
|
@observerable_mutex = Mutex.new
|
31
31
|
@stdin_mutex = Mutex.new
|
32
32
|
@stdin, @stdout, @stderr, @wait_thread = Open3.popen3(DART_SASS_EMBEDDED)
|
33
|
+
|
34
|
+
@stdin.set_encoding(Encoding::ASCII_8BIT)
|
35
|
+
@stdout.set_encoding(Encoding::ASCII_8BIT)
|
36
|
+
|
33
37
|
poll do
|
34
38
|
warn(@stderr.readline, uplevel: 1)
|
35
39
|
end
|
@@ -107,21 +111,24 @@ module Sass
|
|
107
111
|
end
|
108
112
|
|
109
113
|
def read_varint(readable)
|
110
|
-
|
114
|
+
value = bits = 0
|
111
115
|
loop do
|
112
116
|
byte = readable.readbyte
|
113
|
-
|
117
|
+
value |= (byte & 0x7f) << bits
|
114
118
|
bits += 7
|
115
|
-
break if byte
|
119
|
+
break if byte < 0x80
|
116
120
|
end
|
117
|
-
|
121
|
+
value
|
118
122
|
end
|
119
123
|
|
120
|
-
def write_varint(writeable,
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
+
def write_varint(writeable, value)
|
125
|
+
bytes = []
|
126
|
+
until value < 0x80
|
127
|
+
bytes << (0x80 | (value & 0x7f))
|
128
|
+
value >>= 7
|
124
129
|
end
|
130
|
+
bytes << value
|
131
|
+
writeable.write bytes.pack('C*')
|
125
132
|
end
|
126
133
|
end
|
127
134
|
end
|
data/lib/sass/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sass-embedded
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.7.
|
4
|
+
version: 0.7.16
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- なつき
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-08-
|
11
|
+
date: 2021-08-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: google-protobuf
|
@@ -166,7 +166,7 @@ homepage: https://github.com/ntkme/sass-embedded-host-ruby
|
|
166
166
|
licenses:
|
167
167
|
- MIT
|
168
168
|
metadata:
|
169
|
-
source_code_uri: https://github.com/ntkme/sass-embedded-host-ruby/tree/v0.7.
|
169
|
+
source_code_uri: https://github.com/ntkme/sass-embedded-host-ruby/tree/v0.7.16
|
170
170
|
post_install_message:
|
171
171
|
rdoc_options: []
|
172
172
|
require_paths:
|