Skip to content

Commit 5768bb7

Browse files
authored
Merge branch 'main' into fix/62133-and-and-generic-
2 parents a07c16a + e635bb9 commit 5768bb7

File tree

54 files changed

+2414
-1826
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

54 files changed

+2414
-1826
lines changed

.github/pr_owners.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,3 +9,4 @@ jakebailey
99
DanielRosenwasser
1010
navya9singh
1111
iisaduan
12+
johnfav03

.github/workflows/accept-baselines-fix-lints.yaml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: Accept Baselines and Fix Lints
1+
name: Accept Baselines, Fix Lints, and Format
22

33
on:
44
workflow_dispatch: {}
@@ -17,7 +17,7 @@ jobs:
1717
runs-on: ubuntu-latest
1818

1919
steps:
20-
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
20+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
2121
with:
2222
token: ${{ secrets.TS_BOT_GITHUB_TOKEN }}
2323
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
@@ -32,8 +32,9 @@ jobs:
3232
git rm -r --quiet tests/baselines/reference
3333
npx hereby runtests-parallel --ci --fix || true
3434
npx hereby baseline-accept
35+
npx hereby format
3536
git add ./src
3637
git add ./tests/baselines/reference
3738
git diff --cached
38-
git commit -m "Update Baselines and/or Applied Lint Fixes"
39+
git commit -m "Update Baselines, Applied Lint Fixes, and/or Formatted"
3940
git push

.github/workflows/ci.yml

Lines changed: 133 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,10 @@ on:
99
branches:
1010
- main
1111
- release-*
12+
merge_group:
13+
branches:
14+
- main
15+
# - release-*
1216

1317
permissions:
1418
contents: read
@@ -24,43 +28,107 @@ jobs:
2428
strategy:
2529
fail-fast: false
2630
matrix:
27-
os:
28-
- ubuntu-latest
29-
- windows-latest
30-
- macos-latest
31-
node-version:
32-
- '22'
33-
- '20'
34-
- '18'
35-
- '16'
36-
- '14'
37-
bundle:
38-
- 'true'
39-
include:
40-
- node-version: 'lts/*'
31+
config:
32+
# Main builds
33+
- os: ubuntu-latest
34+
node-version: '24'
35+
bundle: true
36+
37+
# Other builds (skipped in merge queues)
38+
- os: windows-latest
39+
node-version: '24'
40+
bundle: true
41+
skip: ${{ github.event_name == 'merge_group' }}
42+
- os: macos-latest
43+
node-version: '24'
44+
bundle: true
45+
skip: ${{ github.event_name == 'merge_group' }}
46+
- os: ubuntu-latest
47+
node-version: '22'
48+
bundle: true
49+
- os: windows-latest
50+
node-version: '22'
51+
bundle: true
52+
skip: ${{ github.event_name == 'merge_group' }}
53+
# Skip macOS for this version; resources are limited.
54+
# - os: macos-latest
55+
# node-version: '22'
56+
# bundle: true
57+
# skip: ${{ github.event_name == 'merge_group' }}
58+
- os: ubuntu-latest
59+
node-version: '20'
60+
bundle: true
61+
- os: windows-latest
62+
node-version: '20'
63+
bundle: true
64+
skip: ${{ github.event_name == 'merge_group' }}
65+
# Skip macOS for this version; resources are limited.
66+
# - os: macos-latest
67+
# node-version: '20'
68+
# bundle: true
69+
# skip: ${{ github.event_name == 'merge_group' }}
70+
- os: ubuntu-latest
71+
node-version: '18'
72+
bundle: true
73+
- os: windows-latest
74+
node-version: '18'
75+
bundle: true
76+
skip: ${{ github.event_name == 'merge_group' }}
77+
# Skip macOS for this version; resources are limited.
78+
# - os: macos-latest
79+
# node-version: '18'
80+
# bundle: true
81+
# skip: ${{ github.event_name == 'merge_group' }}
82+
- os: ubuntu-latest
83+
node-version: '16'
84+
bundle: true
85+
- os: windows-latest
86+
node-version: '16'
87+
bundle: true
88+
skip: ${{ github.event_name == 'merge_group' }}
89+
- os: macos-latest
90+
node-version: '16'
91+
bundle: true
92+
skip: ${{ github.event_name == 'merge_group' }}
93+
- os: ubuntu-latest
94+
node-version: '14'
95+
bundle: true
96+
skip: ${{ github.event_name == 'merge_group' }}
97+
- os: windows-latest
98+
node-version: '14'
99+
bundle: true
100+
skip: ${{ github.event_name == 'merge_group' }}
101+
# No Node 14 on ARM macOS
102+
# - os: macos-latest
103+
# node-version: '14'
104+
# bundle: true
105+
# skip: ${{ github.event_name == 'merge_group' }}
106+
107+
- os: ubuntu-latest
108+
node-version: 'lts/*'
41109
bundle: false
42-
os: ubuntu-latest
110+
skip: ${{ github.event_name == 'merge_group' }}
111+
43112
exclude:
44-
# No Node 14 on ARM macOS
45-
- node-version: '14'
46-
os: macos-latest
113+
- config:
114+
skip: true
47115

48-
runs-on: ${{ matrix.os }}
49-
name: Test Node ${{ matrix.node-version }} on ${{ matrix.os }}${{ (!matrix.bundle && ' with --no-bundle') || '' }}
116+
runs-on: ${{ matrix.config.os }}
117+
name: Test Node ${{ matrix.config.node-version }} on ${{ matrix.config.os }}${{ (!matrix.config.bundle && ' with --no-bundle') || '' }}
50118

51119
steps:
52-
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
53-
- name: Use node version ${{ matrix.node-version }}
120+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
121+
- name: Use node version ${{ matrix.config.node-version }}
54122
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
55123
with:
56-
node-version: ${{ matrix.node-version }}
124+
node-version: ${{ matrix.config.node-version }}
57125
check-latest: true
58126
- run: npm ci
59127

60128
- name: Tests
61129
id: test
62130
# run tests, but lint separately
63-
run: npm run test -- --no-lint --bundle=${{ matrix.bundle }}
131+
run: npm run test -- --no-lint --bundle=${{ matrix.config.bundle }}
64132

65133
- name: Print baseline diff on failure
66134
if: ${{ failure() && steps.test.conclusion == 'failure' }}
@@ -70,6 +138,8 @@ jobs:
70138
git diff --staged --exit-code
71139
72140
coverage:
141+
if: ${{ github.event_name != 'merge_group' }}
142+
73143
runs-on:
74144
- 'self-hosted'
75145
- '1ES.Pool=TypeScript-1ES-GitHub-Large'
@@ -80,7 +150,7 @@ jobs:
80150
contents: read
81151

82152
steps:
83-
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
153+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
84154
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
85155
with:
86156
node-version: 'lts/*'
@@ -105,7 +175,7 @@ jobs:
105175
runs-on: ubuntu-latest
106176

107177
steps:
108-
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
178+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
109179
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
110180
with:
111181
node-version: 'lts/*'
@@ -118,7 +188,7 @@ jobs:
118188
runs-on: ubuntu-latest
119189

120190
steps:
121-
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
191+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
122192
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
123193
with:
124194
node-version: 'lts/*'
@@ -131,13 +201,13 @@ jobs:
131201
runs-on: ubuntu-latest
132202

133203
steps:
134-
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
204+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
135205
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
136206
with:
137207
node-version: 'lts/*'
138208
- run: npm ci
139209

140-
- uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
210+
- uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4.2.4
141211
with:
142212
path: ~/.cache/dprint
143213
key: ${{ runner.os }}-dprint-${{ hashFiles('package-lock.json', '.dprint.jsonc') }}
@@ -151,7 +221,7 @@ jobs:
151221
runs-on: ubuntu-latest
152222

153223
steps:
154-
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
224+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
155225
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
156226
with:
157227
node-version: 'lts/*'
@@ -167,7 +237,7 @@ jobs:
167237
runs-on: ubuntu-latest
168238

169239
steps:
170-
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
240+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
171241
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
172242
with:
173243
node-version: 'lts/*'
@@ -180,7 +250,7 @@ jobs:
180250
runs-on: ubuntu-latest
181251

182252
steps:
183-
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
253+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
184254

185255
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
186256
with:
@@ -221,11 +291,11 @@ jobs:
221291
if: github.event_name == 'pull_request'
222292

223293
steps:
224-
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
294+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
225295
with:
226296
path: pr
227297

228-
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
298+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
229299
with:
230300
path: base
231301
ref: ${{ github.base_ref }}
@@ -262,7 +332,7 @@ jobs:
262332
runs-on: ubuntu-latest
263333

264334
steps:
265-
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
335+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
266336
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
267337
with:
268338
node-version: 'lts/*'
@@ -278,7 +348,7 @@ jobs:
278348
runs-on: ubuntu-latest
279349

280350
steps:
281-
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
351+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
282352
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
283353
with:
284354
node-version: 'lts/*'
@@ -294,10 +364,12 @@ jobs:
294364
run: npx hereby build-src --built
295365

296366
baselines:
367+
if: ${{ github.event_name != 'merge_group' }}
368+
297369
runs-on: ubuntu-latest
298370

299371
steps:
300-
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
372+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
301373
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
302374
with:
303375
node-version: 'lts/*'
@@ -338,3 +410,27 @@ jobs:
338410
with:
339411
name: fix_baselines.patch
340412
path: fix_baselines.patch
413+
414+
required:
415+
runs-on: ubuntu-latest
416+
if: ${{ always() }}
417+
needs:
418+
- test
419+
- coverage
420+
- lint
421+
- knip
422+
- format
423+
- browser-integration
424+
- typecheck
425+
- smoke
426+
- package-size
427+
- misc
428+
- self-check
429+
- baselines
430+
431+
steps:
432+
- name: Check required jobs
433+
env:
434+
NEEDS: ${{ toJson(needs) }}
435+
run: |
436+
! echo $NEEDS | jq -e 'to_entries[] | { job: .key, result: .value.result } | select((.result == "success" or .result == "skipped") | not)'

.github/workflows/codeql.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -42,11 +42,11 @@ jobs:
4242

4343
steps:
4444
- name: Checkout repository
45-
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
45+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
4646

4747
# Initializes the CodeQL tools for scanning.
4848
- name: Initialize CodeQL
49-
uses: github/codeql-action/init@39edc492dbe16b1465b0cafca41432d857bdb31a # v3.29.1
49+
uses: github/codeql-action/init@df559355d593797519d70b90fc8edd5db049e7a2 # v3.29.5
5050
with:
5151
config-file: ./.github/codeql/codeql-configuration.yml
5252
# Override language selection by uncommenting this and choosing your languages
@@ -56,7 +56,7 @@ jobs:
5656
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
5757
# If this step fails, then you should remove it and run the build manually (see below).
5858
- name: Autobuild
59-
uses: github/codeql-action/autobuild@39edc492dbe16b1465b0cafca41432d857bdb31a # v3.29.1
59+
uses: github/codeql-action/autobuild@df559355d593797519d70b90fc8edd5db049e7a2 # v3.29.5
6060

6161
# ℹ️ Command-line programs to run using the OS shell.
6262
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun
@@ -70,4 +70,4 @@ jobs:
7070
# make release
7171

7272
- name: Perform CodeQL Analysis
73-
uses: github/codeql-action/analyze@39edc492dbe16b1465b0cafca41432d857bdb31a # v3.29.1
73+
uses: github/codeql-action/analyze@df559355d593797519d70b90fc8edd5db049e7a2 # v3.29.5

.github/workflows/copilot-setup-steps.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ jobs:
1515
# You can define any steps you want, and they will run before the agent starts.
1616
# If you do not check out your code, Copilot will do this for you.
1717
steps:
18-
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
18+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
1919
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
2020
- run: npm ci
2121
# pull dprint caches before network access is blocked

.github/workflows/create-cherry-pick-pr.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ jobs:
4747
if: github.repository == 'microsoft/TypeScript'
4848

4949
steps:
50-
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
50+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
5151
with:
5252
filter: blob:none # https://github.blog/2020-12-21-get-up-to-speed-with-partial-clone-and-shallow-clone/
5353
fetch-depth: 0 # Default is 1; need to set to 0 to get the benefits of blob:none.

.github/workflows/insiders.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ jobs:
2020
if: github.repository == 'microsoft/TypeScript'
2121

2222
steps:
23-
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
23+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
2424
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
2525
with:
2626
node-version: 'lts/*'
@@ -42,7 +42,7 @@ jobs:
4242
if: github.repository == 'microsoft/TypeScript'
4343

4444
steps:
45-
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
45+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
4646
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
4747
with:
4848
node-version: 'lts/*'

0 commit comments

Comments
 (0)