@@ -5,7 +5,7 @@ defaults:
5
5
6
6
env :
7
7
PROTOC_VERSION : 3.x
8
- DEFAULT_NODE_VERSION : 15 .x # If changing this, also change jobs.tests.strategy.matrix.node_version
8
+ DEFAULT_NODE_VERSION : 18 .x # If changing this, also change jobs.tests.strategy.matrix.node_version
9
9
10
10
on :
11
11
push :
@@ -24,24 +24,15 @@ jobs:
24
24
with :
25
25
node-version : ${{ env.DEFAULT_NODE_VERSION }}
26
26
check-latest : true
27
- - uses : arduino/setup-protoc@v1
28
- with :
29
- version : ${{ env.PROTOC_VERSION }}
30
- repo-token : ' ${{ github.token }}'
31
-
32
- - name : Check out the embedded protocol
33
- uses : sass/clone-linked-repo@v1
34
- with : {repo: sass/embedded-protocol, default-ref: null}
35
27
36
- - name : Check out the JS API definition
28
+ - name : Check out the language repo
37
29
uses : sass/clone-linked-repo@v1
38
30
with : {repo: sass/sass, path: language}
39
31
40
32
- run : npm install
41
33
- name : npm run init
42
34
run : |
43
- if [[ -d embedded-protocol ]]; then args=--protocol-path=embedded-protocol; fi
44
- npm run init -- --skip-compiler --api-path=language $args
35
+ npm run init -- --skip-compiler --language-path=language $args
45
36
46
37
- run : npm run check
47
38
52
43
strategy :
53
44
matrix :
54
45
os : [ubuntu, macos, windows]
55
- node-version : [15 .x, 14 .x, 12 .x] # If changing this, also change env.DEFAULT_NODE_VERSION
46
+ node-version : [18 .x, 16 .x, 14 .x] # If changing this, also change env.DEFAULT_NODE_VERSION
56
47
fail-fast : false
57
48
58
49
steps :
@@ -61,44 +52,26 @@ jobs:
61
52
with :
62
53
node-version : ${{ matrix.node-version }}
63
54
check-latest : true
64
- - uses : frenck/action-setup-yq@v1
65
- with : {version: v4.30.5} # frenck/action-setup-yq#35
66
- - uses : arduino/setup-protoc@v1
67
- with :
68
- version : ${{ env.PROTOC_VERSION }}
69
- repo-token : ' ${{ github.token }}'
70
55
- uses : dart-lang/setup-dart@v1
71
56
with : {sdk: stable}
72
57
- run : dart --version
73
58
74
- - name : Check out the embedded protocol
75
- uses : sass/clone-linked-repo@v1
76
- with : {repo: sass/embedded-protocol, default-ref: null}
77
-
78
59
- name : Check out Dart Sass
79
60
uses : sass/clone-linked-repo@v1
80
61
with : {repo: sass/dart-sass}
81
62
82
- - name : Check out the embedded compiler
83
- uses : sass/clone-linked-repo@v1
84
- with : {repo: sass/dart-sass-embedded}
85
-
86
- - name : Link the embedded compiler to Dart Sass
87
- run : |
88
- yq -i '.dependency_overrides.sass = {"path": "../dart-sass"}' \
89
- dart-sass-embedded/pubspec.yaml
90
-
91
- - name : Check out the JS API definition
63
+ - name : Check out the language repo
92
64
uses : sass/clone-linked-repo@v1
93
65
with : {repo: sass/sass, path: language}
94
66
95
67
- run : npm install
96
68
- name : npm run init
97
69
run : |
98
- if [[ -d embedded-protocol ]]; then args=--protocol-path=embedded-protocol; fi
99
- npm run init -- --compiler-path=dart-sass-embedded --api-path=language $args
70
+ npm run init -- --compiler-path=dart-sass --language-path=language $args
100
71
101
72
- run : npm run test
73
+ - run : npm run compile
74
+ - run : node test/after-compile-test.mjs
102
75
103
76
# The versions should be kept up-to-date with the latest LTS Node releases.
104
77
# They next need to be rotated October 2021. See
@@ -111,53 +84,33 @@ jobs:
111
84
fail-fast : false
112
85
matrix :
113
86
os : [ubuntu, windows, macos]
114
- node_version : [16 ]
87
+ node_version : [18 ]
115
88
include :
116
89
# Include LTS versions on Ubuntu
117
90
- os : ubuntu
118
- node_version : 14
91
+ node_version : 16
119
92
- os : ubuntu
120
- node_version : 12
93
+ node_version : 14
121
94
122
95
steps :
123
96
- uses : actions/checkout@v2
124
97
- uses : dart-lang/setup-dart@v1
125
98
with : {sdk: stable}
126
99
- uses : actions/setup-node@v2
127
100
with : {node-version: "${{ matrix.node_version }}"}
128
- - uses : frenck/action-setup-yq@v1
129
- with : {version: v4.30.5} # frenck/action-setup-yq#35
130
- - uses : arduino/setup-protoc@v1
131
- with :
132
- version : ${{ env.PROTOC_VERSION }}
133
- repo-token : ' ${{ github.token }}'
134
-
135
- - name : Check out the embedded protocol
136
- uses : sass/clone-linked-repo@v1
137
- with : {repo: sass/embedded-protocol, default-ref: null}
138
101
139
102
- name : Check out Dart Sass
140
103
uses : sass/clone-linked-repo@v1
141
104
with : {repo: sass/dart-sass}
142
105
143
- - name : Check out the embedded compiler
144
- uses : sass/clone-linked-repo@v1
145
- with : {repo: sass/dart-sass-embedded}
146
-
147
- - name : Link the embedded compiler to Dart Sass
148
- run : |
149
- yq -i '.dependency_overrides.sass = {"path": "../dart-sass"}' \
150
- dart-sass-embedded/pubspec.yaml
151
-
152
- - name : Check out the JS API definition
106
+ - name : Check out the language repo
153
107
uses : sass/clone-linked-repo@v1
154
108
with : {repo: sass/sass, path: language}
155
109
156
110
- run : npm install
157
111
- name : npm run init
158
112
run : |
159
- if [[ -d embedded-protocol ]]; then args=--protocol-path=embedded-protocol; fi
160
- npm run init -- --compiler-path=dart-sass-embedded --api-path=language $args
113
+ npm run init -- --compiler-path=dart-sass --language-path=language $args
161
114
162
115
- name : Check out sass-spec
163
116
uses : sass/clone-linked-repo@v1
@@ -170,7 +123,15 @@ jobs:
170
123
- name : Compile
171
124
run : |
172
125
npm run compile
173
- ln -s {`pwd`/,dist/}lib/src/vendor/dart-sass-embedded
126
+ if [[ "$RUNNER_OS" == "Windows" ]]; then
127
+ # Avoid copying the entire Dart Sass build directory on Windows,
128
+ # since it may contain symlinks that cp will choke on.
129
+ mkdir -p dist/lib/src/vendor/dart-sass/
130
+ cp {`pwd`/,dist/}lib/src/vendor/dart-sass/sass.bat
131
+ cp {`pwd`/,dist/}lib/src/vendor/dart-sass/sass.snapshot
132
+ else
133
+ ln -s {`pwd`/,dist/}lib/src/vendor/dart-sass
134
+ fi
174
135
175
136
- name : Run tests
176
137
run : npm run js-api-spec -- --sassPackage .. --sassSassRepo ../language
0 commit comments