Use the embedded protocol from the Sass language repo (#1966)

This commit is contained in:
Natalie Weizenbaum 2023-05-17 13:12:44 -07:00 committed by GitHub
parent cb039c7efd
commit eb18526913
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 14 additions and 13 deletions

View File

@ -26,9 +26,9 @@ runs:
- uses: bufbuild/buf-setup-action@v1.13.1
with: {github_token: "${{ inputs.github-token }}"}
- name: Check out embedded Sass protocol
- name: Check out the language repo
uses: sass/clone-linked-repo@v1
with: {repo: sass/embedded-protocol, path: build/embedded-protocol}
with: {repo: sass/sass, path: build/language}
- name: Generate Dart from protobuf
run: dart run grinder protobuf

View File

@ -162,15 +162,14 @@ jobs:
uses: sass/clone-linked-repo@v1
with: {repo: sass/embedded-host-node}
- name: Check out the JS API definition
- name: Check out the language repo
uses: sass/clone-linked-repo@v1
with: {repo: sass/sass, path: language}
with: {repo: sass/sass, path: build/language}
- name: Initialize embedded host
run: |
npm install
npm run init -- --protocol-path=../build/embedded-protocol \
--compiler-path=.. --api-path=../language
npm run init -- --compiler-path=.. --language-path=../build/language
npm run compile
mv {`pwd`/,dist/}lib/src/vendor/dart-sass
working-directory: embedded-host-node
@ -185,7 +184,7 @@ jobs:
fi
- name: Run tests
run: npm run js-api-spec -- --sassPackage ../embedded-host-node --sassSassRepo ../language
run: npm run js-api-spec -- --sassPackage ../embedded-host-node --sassSassRepo ../build/language
working-directory: sass-spec
dart_tests:

View File

@ -316,7 +316,7 @@ Dart Sass includes an implementation of the compiler side of the [Embedded Sass
protocol]. It's designed to be embedded in a host language, which then exposes
an API for users to invoke Sass and define custom functions and importers.
[Embedded Sass protocol]: https://github.com/sass/sass-embedded-protocol/blob/master/README.md#readme
[Embedded Sass protocol]: https://github.com/sass/sass/blob/main/spec/embedded-protocol.md
### Usage

View File

@ -1,2 +1,2 @@
version: v1
directories: [build/embedded-protocol]
directories: [build/language/spec]

View File

@ -58,15 +58,16 @@ void main(List<String> args) {
"${pkg.githubReleaseNotes.defaultValue}";
pkg.environmentConstants.fn = () {
if (!Directory('build/embedded-protocol').existsSync()) {
if (!Directory('build/language').existsSync()) {
fail('Run `dart run grinder protobuf` before building Dart Sass '
'executables.');
}
return {
...pkg.environmentConstants.defaultValue,
"protocol-version":
File('build/embedded-protocol/VERSION').readAsStringSync().trim(),
"protocol-version": File('build/language/spec/EMBEDDED_PROTOCOL_VERSION')
.readAsStringSync()
.trim(),
"compiler-version": pkg.pubspec.version!.toString(),
};
};
@ -202,7 +203,8 @@ dart run protoc_plugin "\$@"
}
if (Platform.environment['UPDATE_SASS_PROTOCOL'] != 'false') {
cloneOrCheckout("https://github.com/sass/embedded-protocol.git", "main");
cloneOrCheckout("https://github.com/sass/sass.git", "main",
name: 'language');
}
await runAsync("buf",