sass-embedded 1.93.2 → 1.94.2
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 -1
- data/exe/sass +1 -1
- data/ext/sass/Rakefile +22 -13
- data/ext/sass/package.json +1 -1
- data/ext/sass/sass-1.94.2.tgz +0 -0
- data/lib/sass/compiler/connection.rb +1 -1
- data/lib/sass/compiler.rb +1 -0
- data/lib/sass/embedded/version.rb +1 -1
- data/lib/sass/embedded_protocol.rb +1 -1
- data/lib/sass/gem_package_importer.rb +19 -0
- metadata +6 -4
- /data/{ext → lib}/sass/embedded_sass_pb.rb +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 592760481cef8fc78c82dbf2aa3fae1ee17959b131ffb4aeb837d00560602a14
|
|
4
|
+
data.tar.gz: 6bce6a2b48dcdbb3a507cd7a64249870a6d204382eaa4464c95ee716b66b1d0f
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: ba978f37924c71183725144681c9ef2868238248883dd2ec91257138efae09f3ca2de1cadac04459b8b326290700d2ca295ac3758e8d0acc9a85ca97dd8b7f24
|
|
7
|
+
data.tar.gz: 5e9ffecf35daa73416c0043c8c996be65da95e01501dea74a4de93204797251e3f6ab6765a1a2cfac3681a277d5a57b20051ee193a290b8151b90e4db3b5980c
|
data/README.md
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
This is a Ruby library that implements the host side of the [Embedded Sass protocol](https://github.com/sass/sass/blob/HEAD/spec/embedded-protocol.md).
|
|
7
7
|
|
|
8
|
-
It exposes a Ruby API for Sass that's backed by a native [Dart Sass](https://sass-lang.com/dart-sass) executable.
|
|
8
|
+
It exposes a Ruby API for Sass that's backed by a native [Dart Sass](https://sass-lang.com/dart-sass) executable on [supported hardware architectures and platforms](https://dart.dev/get-dart#system-requirements) or a Node.js Dart Sass executable everywhere else.
|
|
9
9
|
|
|
10
10
|
## Install
|
|
11
11
|
|
data/exe/sass
CHANGED
data/ext/sass/Rakefile
CHANGED
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
+
dest = File.absolute_path('sass', ENV.fetch('RUBYARCHDIR', File.absolute_path('../../lib', __dir__)))
|
|
4
|
+
FileUtils.mkdir_p(dest)
|
|
5
|
+
Dir.chdir(dest)
|
|
6
|
+
|
|
3
7
|
require 'rake/clean'
|
|
4
8
|
|
|
5
9
|
require_relative '../../lib/sass/elf'
|
|
@@ -8,9 +12,7 @@ ELF = Sass.const_get(:ELF)
|
|
|
8
12
|
|
|
9
13
|
task default: %i[install clean]
|
|
10
14
|
|
|
11
|
-
task install: %w[cli.rb]
|
|
12
|
-
Rake::Task['embedded_sass_pb.rb'].invoke unless File.exist?('embedded_sass_pb.rb')
|
|
13
|
-
end
|
|
15
|
+
task install: %w[cli.rb]
|
|
14
16
|
|
|
15
17
|
CLEAN.include %w[
|
|
16
18
|
protoc.exe
|
|
@@ -47,7 +49,7 @@ end
|
|
|
47
49
|
file 'dart-sass/sass' do
|
|
48
50
|
gem_install 'sass-embedded', SassConfig.gem_version, SassConfig.gem_platform do |installer|
|
|
49
51
|
gh_attestation_verify(installer.gem, repo: 'sass-contrib/sass-embedded-host-ruby')
|
|
50
|
-
mv File.absolute_path('
|
|
52
|
+
mv File.absolute_path('lib/sass/dart-sass', installer.gem_dir), 'dart-sass'
|
|
51
53
|
end
|
|
52
54
|
rescue StandardError
|
|
53
55
|
archive = fetch(SassConfig.dart_sass)
|
|
@@ -57,15 +59,22 @@ rescue StandardError
|
|
|
57
59
|
end
|
|
58
60
|
|
|
59
61
|
file 'node_modules/sass' do
|
|
60
|
-
|
|
61
|
-
|
|
62
|
+
cp File.absolute_path('package.json', __dir__), './'
|
|
63
|
+
|
|
64
|
+
# TODO: remove after https://github.com/sass/dart-sass/pull/2413
|
|
65
|
+
cp File.absolute_path("sass-#{SassConfig.dart_sass_version}.tgz", __dir__), './'
|
|
66
|
+
|
|
62
67
|
begin
|
|
63
|
-
sh '
|
|
68
|
+
sh 'npm', 'install'
|
|
64
69
|
rescue StandardError
|
|
65
70
|
begin
|
|
66
|
-
sh '
|
|
71
|
+
sh 'yarn', 'install'
|
|
67
72
|
rescue StandardError
|
|
68
|
-
|
|
73
|
+
begin
|
|
74
|
+
sh 'pnpm', 'install'
|
|
75
|
+
rescue StandardError
|
|
76
|
+
sh 'bun', 'install'
|
|
77
|
+
end
|
|
69
78
|
end
|
|
70
79
|
end
|
|
71
80
|
end
|
|
@@ -135,7 +144,7 @@ file 'cli.rb' => %w[dart-sass] do |t|
|
|
|
135
144
|
File.write(t.name, <<~CLI_RB)
|
|
136
145
|
# frozen_string_literal: true
|
|
137
146
|
|
|
138
|
-
|
|
147
|
+
require 'sass/elf'
|
|
139
148
|
|
|
140
149
|
module Sass
|
|
141
150
|
module CLI
|
|
@@ -487,7 +496,9 @@ module SassConfig
|
|
|
487
496
|
end
|
|
488
497
|
|
|
489
498
|
def dart_sass_version
|
|
490
|
-
package_json['dependencies']['sass']
|
|
499
|
+
package_json(__dir__)['dependencies']['sass']
|
|
500
|
+
# TODO: remove after https://github.com/sass/dart-sass/pull/2413
|
|
501
|
+
.delete_prefix('file:sass-').delete_suffix('.tgz')
|
|
491
502
|
end
|
|
492
503
|
|
|
493
504
|
def dart_sass
|
|
@@ -606,8 +617,6 @@ module SassConfig
|
|
|
606
617
|
tag_name = JSON.parse(version)['protocolVersion']
|
|
607
618
|
|
|
608
619
|
"https://github.com/sass/sass/raw/embedded-protocol-#{tag_name}/spec/embedded_sass.proto"
|
|
609
|
-
rescue StandardError # TODO: remove after https://github.com/sass/dart-sass/pull/2413
|
|
610
|
-
'https://github.com/sass/sass/raw/HEAD/spec/embedded_sass.proto'
|
|
611
620
|
end
|
|
612
621
|
|
|
613
622
|
def development?
|
data/ext/sass/package.json
CHANGED
|
Binary file
|
data/lib/sass/compiler.rb
CHANGED
|
@@ -11,6 +11,7 @@ require_relative 'embedded/version'
|
|
|
11
11
|
require_relative 'embedded_protocol'
|
|
12
12
|
require_relative 'exception'
|
|
13
13
|
require_relative 'fork_tracker'
|
|
14
|
+
require_relative 'gem_package_importer'
|
|
14
15
|
require_relative 'logger/silent'
|
|
15
16
|
require_relative 'logger/source_location'
|
|
16
17
|
require_relative 'logger/source_span'
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Sass
|
|
4
|
+
# The built-in RubyGems package importer. This loads pkg: URLs from gems.
|
|
5
|
+
class GemPackageImporter
|
|
6
|
+
# @!visibility private
|
|
7
|
+
def find_file_url(url, _canonicalize_context)
|
|
8
|
+
return unless url.start_with?('pkg:')
|
|
9
|
+
|
|
10
|
+
library, _, path = url[4..].partition(/[#?]/).first.partition('/')
|
|
11
|
+
gem_dir = Gem::Dependency.new(library).to_spec.gem_dir
|
|
12
|
+
gem_dir = "/#{gem_dir}" unless gem_dir.start_with?('/')
|
|
13
|
+
|
|
14
|
+
"file://#{gem_dir.gsub(/[#%?\\]/, { '#' => '%23', '%' => '%25', '?' => '%3F', '\\' => '%5C' })}/#{path}"
|
|
15
|
+
rescue Gem::MissingSpecError
|
|
16
|
+
nil
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: sass-embedded
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.
|
|
4
|
+
version: 1.94.2
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- なつき
|
|
@@ -51,8 +51,8 @@ files:
|
|
|
51
51
|
- README.md
|
|
52
52
|
- exe/sass
|
|
53
53
|
- ext/sass/Rakefile
|
|
54
|
-
- ext/sass/embedded_sass_pb.rb
|
|
55
54
|
- ext/sass/package.json
|
|
55
|
+
- ext/sass/sass-1.94.2.tgz
|
|
56
56
|
- lib/sass-embedded.rb
|
|
57
57
|
- lib/sass/calculation_value.rb
|
|
58
58
|
- lib/sass/calculation_value/calculation_operation.rb
|
|
@@ -73,8 +73,10 @@ files:
|
|
|
73
73
|
- lib/sass/embedded.rb
|
|
74
74
|
- lib/sass/embedded/version.rb
|
|
75
75
|
- lib/sass/embedded_protocol.rb
|
|
76
|
+
- lib/sass/embedded_sass_pb.rb
|
|
76
77
|
- lib/sass/exception.rb
|
|
77
78
|
- lib/sass/fork_tracker.rb
|
|
79
|
+
- lib/sass/gem_package_importer.rb
|
|
78
80
|
- lib/sass/logger/silent.rb
|
|
79
81
|
- lib/sass/logger/source_location.rb
|
|
80
82
|
- lib/sass/logger/source_span.rb
|
|
@@ -123,8 +125,8 @@ licenses:
|
|
|
123
125
|
- MIT
|
|
124
126
|
metadata:
|
|
125
127
|
bug_tracker_uri: https://github.com/sass-contrib/sass-embedded-host-ruby/issues
|
|
126
|
-
documentation_uri: https://rubydoc.info/gems/sass-embedded/1.
|
|
127
|
-
source_code_uri: https://github.com/sass-contrib/sass-embedded-host-ruby/tree/v1.
|
|
128
|
+
documentation_uri: https://rubydoc.info/gems/sass-embedded/1.94.2
|
|
129
|
+
source_code_uri: https://github.com/sass-contrib/sass-embedded-host-ruby/tree/v1.94.2
|
|
128
130
|
funding_uri: https://github.com/sponsors/ntkme
|
|
129
131
|
rubygems_mfa_required: 'true'
|
|
130
132
|
rdoc_options: []
|
|
File without changes
|