sass-embedded 0.7.11 → 0.7.12
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/ext/dependencies.rb +11 -0
- data/ext/extconf.rb +29 -24
- data/lib/sass/version.rb +1 -1
- metadata +10 -9
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: af7015aac4279ef9b4ea9a4cca2ca236e1722c70db19e4c21a35c9df64d5667e
|
4
|
+
data.tar.gz: 8dcf794cff743d2e5f24b7bcd817d7bcef2867549fe0eda94634966a96e8e8c4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 76a76058b210b7ae057ed71dd25f12625a04396c84c447dd8075ca4ff6ca4d52df009243cbd110009902fa727489e79bd20b1798670222cbe3c312f5ade5aa7d
|
7
|
+
data.tar.gz: f5d40d128f9c9fbaee17728c9092b6b6c86f1908f474a94e6b43918cb2db389154fa246d4b2b9ee083e916d62ba19f9aec767e35cd8d7c39c25462e90a3f9d5c
|
data/ext/dependencies.rb
ADDED
data/ext/extconf.rb
CHANGED
@@ -5,13 +5,14 @@ require 'mkmf'
|
|
5
5
|
require 'json'
|
6
6
|
require 'open-uri'
|
7
7
|
require 'fileutils'
|
8
|
+
require_relative './dependencies'
|
8
9
|
require_relative '../lib/sass/platform'
|
9
10
|
|
10
11
|
module Sass
|
11
12
|
# The dependency downloader. This downloads all the dependencies during gem
|
12
13
|
# installation. The companion Makefile then unpacks all downloaded
|
13
|
-
# dependencies. By default it downloads the
|
14
|
-
#
|
14
|
+
# dependencies. By default it downloads the release of each dependency
|
15
|
+
# from GitHub releases.
|
15
16
|
#
|
16
17
|
# It is possible to specify an alternative source or version of each
|
17
18
|
# dependency. Local sources can be used for offline installation.
|
@@ -23,9 +24,9 @@ module Sass
|
|
23
24
|
# --with-sass-embedded-protocol=file:///path/to/embedded_sass.proto
|
24
25
|
class Extconf
|
25
26
|
def initialize
|
26
|
-
get_with_config('protoc', true) {
|
27
|
-
get_with_config('sass-embedded', true) {
|
28
|
-
get_with_config('sass-embedded-protocol', true) {
|
27
|
+
get_with_config('protoc', true) { default_protoc }
|
28
|
+
get_with_config('sass-embedded', true) { default_sass_embedded }
|
29
|
+
get_with_config('sass-embedded-protocol', true) { default_sass_embedded_protocol }
|
29
30
|
end
|
30
31
|
|
31
32
|
private
|
@@ -65,31 +66,34 @@ module Sass
|
|
65
66
|
raise "Failed to get: #{uri}"
|
66
67
|
end
|
67
68
|
|
68
|
-
def
|
69
|
-
|
69
|
+
def resolve_tag_name(repo, *requirements, gh_release: true)
|
70
|
+
requirements = Gem::Requirement.create(*requirements)
|
71
|
+
|
72
|
+
if requirements == Gem::Requirement.default && gh_release
|
73
|
+
URI.parse("https://github.com/#{repo}/releases/latest").open do |file|
|
74
|
+
File.basename file.base_uri.to_s
|
75
|
+
end
|
76
|
+
else
|
70
77
|
headers = {}
|
71
78
|
headers['Authorization'] = "token #{ENV['GITHUB_TOKEN']}" if ENV['GITHUB_TOKEN']
|
72
|
-
if
|
73
|
-
URI.parse("https://api.github.com/repos/#{repo}/
|
74
|
-
JSON.parse(file.read)[
|
79
|
+
if gh_release
|
80
|
+
URI.parse("https://api.github.com/repos/#{repo}/releases?per_page=100").open(headers) do |file|
|
81
|
+
JSON.parse(file.read).map { |release| release['tag_name'] }
|
75
82
|
end
|
76
83
|
else
|
77
|
-
URI.parse("https://api.github.com/repos/#{repo}/
|
78
|
-
JSON.parse(file.read)[
|
84
|
+
URI.parse("https://api.github.com/repos/#{repo}/tags?per_page=100").open(headers) do |file|
|
85
|
+
JSON.parse(file.read).map { |tag| tag['name'] }
|
79
86
|
end
|
80
87
|
end
|
81
|
-
|
82
|
-
|
83
|
-
File.basename file.base_uri.to_s
|
84
|
-
end
|
88
|
+
.find { |version| Gem::Version.correct?(version) && requirements.satisfied_by?(Gem::Version.new(version)) }
|
89
|
+
&.to_s
|
85
90
|
end
|
86
91
|
end
|
87
92
|
|
88
|
-
def
|
93
|
+
def default_sass_embedded
|
89
94
|
repo = 'sass/dart-sass-embedded'
|
90
95
|
|
91
|
-
|
92
|
-
tag_name = latest_release repo, prerelease: true
|
96
|
+
tag_name = resolve_tag_name(repo, Sass::Dependencies::REQUIREMENTS[repo])
|
93
97
|
|
94
98
|
os = case Platform::OS
|
95
99
|
when 'darwin'
|
@@ -125,10 +129,12 @@ module Sass
|
|
125
129
|
"https://github.com/#{repo}/releases/download/#{tag_name}/sass_embedded-#{tag_name}-#{os}-#{arch}.#{ext}"
|
126
130
|
end
|
127
131
|
|
128
|
-
def
|
132
|
+
def default_protoc
|
129
133
|
repo = 'protocolbuffers/protobuf'
|
130
134
|
|
131
|
-
|
135
|
+
spec = Gem::Dependency.new('google-protobuf', Sass::Dependencies::REQUIREMENTS[repo]).to_spec
|
136
|
+
|
137
|
+
tag_name = "v#{spec.version}"
|
132
138
|
|
133
139
|
os = case Platform::OS
|
134
140
|
when 'darwin'
|
@@ -172,11 +178,10 @@ module Sass
|
|
172
178
|
"https://github.com/#{repo}/releases/download/#{tag_name}/protoc-#{tag_name[1..]}-#{os_arch}.#{ext}"
|
173
179
|
end
|
174
180
|
|
175
|
-
def
|
181
|
+
def default_sass_embedded_protocol
|
176
182
|
repo = 'sass/embedded-protocol'
|
177
183
|
|
178
|
-
|
179
|
-
tag_name = latest_release repo, tag: true
|
184
|
+
tag_name = resolve_tag_name(repo, Sass::Dependencies::REQUIREMENTS[repo], gh_release: false)
|
180
185
|
|
181
186
|
"https://raw.githubusercontent.com/#{repo}/#{tag_name}/embedded_sass.proto"
|
182
187
|
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.12
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- なつき
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-08-
|
11
|
+
date: 2021-08-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: google-protobuf
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 3.17
|
19
|
+
version: '3.17'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 3.17
|
26
|
+
version: '3.17'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: bundler
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -148,6 +148,7 @@ files:
|
|
148
148
|
- LICENSE
|
149
149
|
- README.md
|
150
150
|
- ext/Makefile
|
151
|
+
- ext/dependencies.rb
|
151
152
|
- ext/extconf.rb
|
152
153
|
- lib/sass.rb
|
153
154
|
- lib/sass/compile.rb
|
@@ -165,8 +166,8 @@ homepage: https://github.com/ntkme/sass-embedded-host-ruby
|
|
165
166
|
licenses:
|
166
167
|
- MIT
|
167
168
|
metadata:
|
168
|
-
source_code_uri: https://github.com/ntkme/sass-embedded-host-ruby/tree/v0.7.
|
169
|
-
post_install_message:
|
169
|
+
source_code_uri: https://github.com/ntkme/sass-embedded-host-ruby/tree/v0.7.12
|
170
|
+
post_install_message:
|
170
171
|
rdoc_options: []
|
171
172
|
require_paths:
|
172
173
|
- lib
|
@@ -181,8 +182,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
181
182
|
- !ruby/object:Gem::Version
|
182
183
|
version: '0'
|
183
184
|
requirements: []
|
184
|
-
rubygems_version: 3.2.
|
185
|
-
signing_key:
|
185
|
+
rubygems_version: 3.2.26
|
186
|
+
signing_key:
|
186
187
|
specification_version: 4
|
187
188
|
summary: Use dart-sass with Ruby!
|
188
189
|
test_files: []
|