@@ -29,71 +29,60 @@ jobs:
2929 fail-fast : ${{ github.event_name == 'merge_group' }}
3030 matrix :
3131 config :
32- # Main builds
32+ # PRs only check the newest and oldest Node versions.
33+ # macOS only ever checks the neest and oldest Node versions, but never in PR runs.
3334 - os : ubuntu-latest
3435 node-version : ' 24'
3536 bundle : true
36-
37- # Other builds (skipped in merge queues)
3837 - os : windows-latest
3938 node-version : ' 24'
4039 bundle : true
4140 skip : ${{ github.event_name == 'merge_group' }}
4241 - os : macos-latest
4342 node-version : ' 24'
4443 bundle : true
45- skip : ${{ github.event_name == 'merge_group' }}
44+ skip : ${{ github.event_name == 'pull_request' || github.event_name == 'merge_group' }}
45+
4646 - os : ubuntu-latest
4747 node-version : ' 22'
4848 bundle : true
49- skip : ${{ github.event_name == 'merge_group' }}
49+ skip : ${{ github.event_name == 'pull_request' || github.event_name == ' merge_group' }}
5050 - os : windows-latest
5151 node-version : ' 22'
5252 bundle : true
53- skip : ${{ github.event_name == 'merge_group' }}
54- # Skip macOS for this version; resources are limited.
55- # - os: macos-latest
56- # node-version: '22'
57- # bundle: true
58- # skip: ${{ github.event_name == 'merge_group' }}
53+ skip : ${{ github.event_name == 'pull_request' || github.event_name == 'merge_group' }}
54+
5955 - os : ubuntu-latest
6056 node-version : ' 20'
6157 bundle : true
62- skip : ${{ github.event_name == 'merge_group' }}
58+ skip : ${{ github.event_name == 'pull_request' || github.event_name == ' merge_group' }}
6359 - os : windows-latest
6460 node-version : ' 20'
6561 bundle : true
66- skip : ${{ github.event_name == 'merge_group' }}
67- # Skip macOS for this version; resources are limited.
68- # - os: macos-latest
69- # node-version: '20'
70- # bundle: true
71- # skip: ${{ github.event_name == 'merge_group' }}
62+ skip : ${{ github.event_name == 'pull_request' || github.event_name == 'merge_group' }}
63+
7264 - os : ubuntu-latest
7365 node-version : ' 18'
7466 bundle : true
75- skip : ${{ github.event_name == 'merge_group' }}
67+ skip : ${{ github.event_name == 'pull_request' || github.event_name == ' merge_group' }}
7668 - os : windows-latest
7769 node-version : ' 18'
7870 bundle : true
79- skip : ${{ github.event_name == 'merge_group' }}
80- # Skip macOS for this version; resources are limited.
81- # - os: macos-latest
82- # node-version: '18'
83- # bundle: true
84- # skip: ${{ github.event_name == 'merge_group' }}
71+ skip : ${{ github.event_name == 'pull_request' || github.event_name == 'merge_group' }}
72+
8573 - os : ubuntu-latest
8674 node-version : ' 16'
8775 bundle : true
88- skip : ${{ github.event_name == 'merge_group' }}
76+ skip : ${{ github.event_name == 'pull_request' || github.event_name == ' merge_group' }}
8977 - os : windows-latest
9078 node-version : ' 16'
9179 bundle : true
92- skip : ${{ github.event_name == 'merge_group' }}
80+ skip : ${{ github.event_name == 'pull_request' || github.event_name == ' merge_group' }}
9381 - os : macos-latest
9482 node-version : ' 16'
9583 bundle : true
96- skip : ${{ github.event_name == 'merge_group' }}
84+ skip : ${{ github.event_name == 'pull_request' || github.event_name == 'merge_group' }}
85+
9786 - os : ubuntu-latest
9887 node-version : ' 14'
9988 bundle : true
@@ -102,12 +91,9 @@ jobs:
10291 node-version : ' 14'
10392 bundle : true
10493 skip : ${{ github.event_name == 'merge_group' }}
105- # No Node 14 on ARM macOS
106- # - os: macos-latest
107- # node-version: '14'
108- # bundle: true
109- # skip: ${{ github.event_name == 'merge_group' }}
94+ # Node 14 does not support macOS ARM.
11095
96+ # --no-bundle build
11197 - os : ubuntu-latest
11298 node-version : ' lts/*'
11399 bundle : false
@@ -121,9 +107,9 @@ jobs:
121107 name : Test Node ${{ matrix.config.node-version }} on ${{ matrix.config.os }}${{ (!matrix.config.bundle && ' with --no-bundle') || '' }}
122108
123109 steps :
124- - uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
110+ - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
125111 - name : Use node version ${{ matrix.config.node-version }}
126- uses : actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1 .0
112+ uses : actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2 .0
127113 with :
128114 node-version : ${{ matrix.config.node-version }}
129115 check-latest : true
@@ -132,7 +118,9 @@ jobs:
132118 - name : Tests
133119 id : test
134120 # run tests, but lint separately
135- run : npm run test -- --no-lint --bundle=${{ matrix.config.bundle }}
121+ env :
122+ BUNDLE : ${{ matrix.config.bundle }}
123+ run : npm run test -- --no-lint --bundle="$BUNDLE"
136124
137125 - name : Print baseline diff on failure
138126 if : ${{ failure() && steps.test.conclusion == 'failure' }}
@@ -154,8 +142,8 @@ jobs:
154142 contents : read
155143
156144 steps :
157- - uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
158- - uses : actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1 .0
145+ - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
146+ - uses : actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2 .0
159147 with :
160148 node-version : ' lts/*'
161149 - run : npm ci
@@ -179,8 +167,8 @@ jobs:
179167 runs-on : ubuntu-latest
180168
181169 steps :
182- - uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
183- - uses : actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1 .0
170+ - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
171+ - uses : actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2 .0
184172 with :
185173 node-version : ' lts/*'
186174 - run : npm ci
@@ -192,8 +180,8 @@ jobs:
192180 runs-on : ubuntu-latest
193181
194182 steps :
195- - uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
196- - uses : actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1 .0
183+ - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
184+ - uses : actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2 .0
197185 with :
198186 node-version : ' lts/*'
199187 - run : npm ci
@@ -205,13 +193,13 @@ jobs:
205193 runs-on : ubuntu-latest
206194
207195 steps :
208- - uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
209- - uses : actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1 .0
196+ - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
197+ - uses : actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2 .0
210198 with :
211199 node-version : ' lts/*'
212200 - run : npm ci
213201
214- - uses : actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
202+ - uses : actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3
215203 with :
216204 path : ~/.cache/dprint
217205 key : ${{ runner.os }}-dprint-${{ hashFiles('package-lock.json', '.dprint.jsonc') }}
@@ -227,8 +215,8 @@ jobs:
227215 runs-on : ubuntu-latest
228216
229217 steps :
230- - uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
231- - uses : actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1 .0
218+ - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
219+ - uses : actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2 .0
232220 with :
233221 node-version : ' lts/*'
234222 - run : npm ci
@@ -243,8 +231,8 @@ jobs:
243231 runs-on : ubuntu-latest
244232
245233 steps :
246- - uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
247- - uses : actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1 .0
234+ - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
235+ - uses : actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2 .0
248236 with :
249237 node-version : ' lts/*'
250238 - run : npm ci
@@ -256,9 +244,9 @@ jobs:
256244 runs-on : ubuntu-latest
257245
258246 steps :
259- - uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
247+ - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
260248
261- - uses : actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1 .0
249+ - uses : actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2 .0
262250 with :
263251 node-version : ' lts/*'
264252 - run : |
@@ -278,10 +266,12 @@ jobs:
278266 id: pack
279267
280268 - name : Smoke test
269+ env :
270+ PACKAGE : ${{ steps.pack.outputs.package }}
281271 run : |
282272 cd "$(mktemp -d)"
283273 npm init --yes
284- npm install ${{ steps.pack.outputs.package }}
274+ npm install "$PACKAGE"
285275
286276 echo "Testing tsc..."
287277 npx tsc --version
@@ -297,16 +287,16 @@ jobs:
297287 if : github.event_name == 'pull_request'
298288
299289 steps :
300- - uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
290+ - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
301291 with :
302292 path : pr
303293
304- - uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
294+ - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
305295 with :
306296 path : base
307297 ref : ${{ github.base_ref }}
308298
309- - uses : actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1 .0
299+ - uses : actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2 .0
310300 with :
311301 node-version : ' lts/*'
312302 - run : |
@@ -344,8 +334,8 @@ jobs:
344334 runs-on : ubuntu-latest
345335
346336 steps :
347- - uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
348- - uses : actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1 .0
337+ - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
338+ - uses : actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2 .0
349339 with :
350340 node-version : ' lts/*'
351341 - run : npm ci
@@ -360,8 +350,8 @@ jobs:
360350 runs-on : ubuntu-latest
361351
362352 steps :
363- - uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
364- - uses : actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1 .0
353+ - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
354+ - uses : actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2 .0
365355 with :
366356 node-version : ' lts/*'
367357 - run : npm ci
@@ -381,8 +371,8 @@ jobs:
381371 runs-on : ubuntu-latest
382372
383373 steps :
384- - uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
385- - uses : actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1 .0
374+ - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
375+ - uses : actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2 .0
386376 with :
387377 node-version : ' lts/*'
388378 - run : npm ci
0 commit comments