Skip to content

Commit c59695b

Browse files
committed
Merge branch 'main' into hd/sponsor-page
* main: (325 commits) i18n(ko-KR): update `plugins.mdx` (#4146) [ci] release (#4137) Fix localisation of Expressive Code UI (#4138) chore: migrate Changesets to v3 (#4139) Add WhatsApp icon (#4142) docs: add starlight-custom-navigation to plugins showcase (#4141) [ci] format i18n(de): update plugins.mdx (#4140) i18n(ko-KR): update `plugins` (#4136) Use a page-specific counter for `<Tabs>` IDs (#4133) Add starlight-pydocs and starlight-quiz (#4130) Remove Vitest native config loader warnings (#4129) i18n(ko-KR): update `authoring-content`, `i18n`, `plugins` (#4125) i18n(fr): update `authoring-content.mdx`, `i18n.mdx` & `plugins.md` (#4128) i18n(de): update links to Astro docs (#4126) Update `size-limit` config (#4122) Replace 3 outdated links to Astro Docs (#4120) [ci] release (#4115) Update dependencies (#4113) Add Astro LilyPond to Starlight showcase (#4116) ...
2 parents a489de8 + f1d5807 commit c59695b

416 files changed

Lines changed: 12322 additions & 8236 deletions

File tree

Some content is hidden

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

.changeset/config.json

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"$schema": "https://unpkg.com/@changesets/config@2.3.0/schema.json",
2+
"$schema": "https://unpkg.com/@changesets/config@4.0.0/schema.json",
33
"changelog": [
44
"@changesets/changelog-github",
55
{ "repo": "withastro/starlight" }
@@ -9,7 +9,6 @@
99
"access": "public",
1010
"baseBranch": "origin/main",
1111
"updateInternalDependencies": "patch",
12-
"ignore": ["starlight-docs", "@example/*", "starlight-file-icons-generator", "@e2e/*"],
1312
"___experimentalUnsafeOptions_WILL_CHANGE_IN_PATCH": {
1413
"onlyUpdatePeerDependentsWhenOutOfRange": true
1514
}

.devcontainer/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# Based on https://github.com/withastro/astro/blob/main/.devcontainer/Dockerfile
2-
FROM mcr.microsoft.com/devcontainers/javascript-node:0-18
2+
FROM mcr.microsoft.com/devcontainers/javascript-node:0-22
33

44
# We uninstall pnpm here, since we enable the corepack version in the postCreateCommand
55
# This ensures we respect the "packageManager" version in package.json

.github/ISSUE_TEMPLATE/---01-bug-report.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ body:
99
Thank you for taking the time to file a bug report! Please fill out this form as completely as possible.
1010
1111
✅ I am using the **latest versions of Starlight and Astro**.
12-
✅ I am using a version of Node that supports ESM (`v14.18.0+`, or `v16.12.0+`).
12+
✅ I am using a compatible version of Node.js (`v22.12.0+`).
1313
- type: input
1414
id: starlight-version
1515
attributes:

.github/labeler.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ i18n:
2323
- docs/src/content/docs/hi/**/*
2424
- docs/src/content/docs/da/**/*
2525
- docs/src/content/docs/uk/**/*
26+
- docs/src/content/docs/fa/**/*
2627

2728
'🌟 core':
2829
- changed-files:

.github/renovate.json5

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
],
1111
rangeStrategy: 'bump',
1212
ignorePaths: ['**/node_modules/**'],
13+
minimumReleaseAge: '3 days',
1314
packageRules: [
1415
{
1516
groupName: 'github-actions',
@@ -28,10 +29,22 @@
2829
enabled: false,
2930
},
3031
{
31-
description: 'Disable Node.js version updates with actions/setup-node',
32+
description: 'Group Node.js workflow updates',
33+
matchManagers: ['github-actions'],
3234
matchDepNames: ['node'],
3335
matchDepTypes: ['uses-with'],
34-
enabled: false,
36+
groupName: 'node.js',
37+
// Allows Node.js PRs roughly every two weeks only.
38+
schedule: ['* * 1,15 * *'],
39+
},
40+
{
41+
description: 'Keep CI workflow on the latest patch of the minimum Node.js major supported by Astro',
42+
matchManagers: ['github-actions'],
43+
matchDepNames: ['node'],
44+
matchDepTypes: ['uses-with'],
45+
groupName: 'node.js',
46+
matchFileNames: ['.github/workflows/ci.yml'],
47+
allowedVersions: '/^22\\./',
3548
},
3649
],
3750
}

.github/workflows/ci.yml

Lines changed: 49 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ concurrency:
1313
cancel-in-progress: true
1414

1515
env:
16-
NODE_VERSION: 18
1716
ASTRO_TELEMETRY_DISABLED: true
1817

1918
jobs:
@@ -23,21 +22,24 @@ jobs:
2322
pull-requests: read
2423
outputs:
2524
docs: ${{ steps.filter.outputs.docs }}
25+
docs_fa: ${{ steps.filter.outputs.docs_fa }}
2626
docs_ja: ${{ steps.filter.outputs.docs_ja }}
2727
docs_en: ${{ steps.filter.outputs.docs_en }}
2828
docs_not_content: ${{ steps.filter.outputs.docs_not_content }}
2929
packages: ${{ steps.filter.outputs.packages }}
3030
ci: ${{ steps.filter.outputs.ci }}
3131
steps:
32-
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
33-
- uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
32+
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
33+
- uses: dorny/paths-filter@7b450fff21473bca461d4b92ce414b9d0420d706 # v4.0.2
3434
id: filter
3535
# When updating filters here, make sure to also add or remove them from the
3636
# outputs block above.
3737
with:
3838
filters: |
3939
docs:
4040
- 'docs/**'
41+
docs_fa:
42+
- 'docs/src/content/docs/fa/**'
4143
docs_ja:
4244
- 'docs/src/content/docs/ja/**'
4345
docs_en:
@@ -51,6 +53,9 @@ jobs:
5153
- '!docs/src/content/docs/**'
5254
packages:
5355
- 'packages/**'
56+
- 'package.json'
57+
- 'pnpm-lock.yaml'
58+
- 'pnpm-workspace.yaml'
5459
ci:
5560
- '.github/workflows/ci.yml'
5661
@@ -60,18 +65,15 @@ jobs:
6065
if: ${{ needs.changes.outputs.packages == 'true' || needs.changes.outputs.ci == 'true' }}
6166
runs-on: ubuntu-latest
6267
steps:
63-
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
64-
- uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
65-
- uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
68+
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
69+
- uses: pnpm/action-setup@0ebf47130e4866e96fce0953f49152a61190b271 # v6.0.9
70+
- uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
6671
with:
67-
node-version: ${{ env.NODE_VERSION }}
72+
node-version: 22.23.1
6873
cache: 'pnpm'
6974
- run: pnpm i
7075
- name: Test packages
7176
run: pnpm -r test:coverage
72-
- name: Test legacy collections support
73-
working-directory: packages/starlight
74-
run: pnpm test:legacy
7577

7678
e2e-test:
7779
name: 'Run E2E tests (${{ matrix.os }})'
@@ -83,41 +85,25 @@ jobs:
8385
os: [ubuntu-latest, windows-latest]
8486
runs-on: ${{ matrix.os }}
8587
steps:
86-
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
87-
# Uninstall man-db to prevent man page updates taking a long time after package installations
88-
# on Ubuntu 24.04.
89-
# https://github.com/actions/runner/issues/4030
90-
# https://github.com/actions/runner-images/issues/10977
91-
- name: Uninstall man-db
92-
if: matrix.os == 'ubuntu-latest'
93-
run: |
94-
sudo apt-get update
95-
sudo apt-get remove man-db
96-
- uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
97-
- uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
88+
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
89+
- uses: pnpm/action-setup@0ebf47130e4866e96fce0953f49152a61190b271 # v6.0.9
90+
- uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
9891
with:
99-
node-version: ${{ env.NODE_VERSION }}
92+
node-version: 22.23.1
10093
cache: 'pnpm'
101-
- run: pnpm i
102-
- name: Test packages (Linux)
103-
if: matrix.os == 'ubuntu-latest'
104-
run: pnpm -r test:e2e:chrome
105-
# Firefox is used for Windows E2E tests as Chrome on Windows requires the installation of the
106-
# Server Media Foundation windows feature, which can take up to 3 minutes to install on CI.
107-
# https://github.com/microsoft/playwright/blob/e7bff526433b6dcb02801763ab5b1c6407902d47/packages/playwright-core/src/server/registry/dependencies.ts#L79-L89
108-
- name: Test packages (Windows)
109-
if: matrix.os == 'windows-latest'
110-
run: pnpm -r test:e2e:firefox
94+
- run: pnpm i --filter @astrojs/starlight --filter "@e2e/*"
95+
- name: Test packages
96+
run: pnpm -r test:e2e:ci
11197

11298
type-check:
11399
name: Run type checks
114100
runs-on: ubuntu-latest
115101
steps:
116-
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
117-
- uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
118-
- uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
102+
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
103+
- uses: pnpm/action-setup@0ebf47130e4866e96fce0953f49152a61190b271 # v6.0.9
104+
- uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
119105
with:
120-
node-version: ${{ env.NODE_VERSION }}
106+
node-version: 22.23.1
121107
cache: 'pnpm'
122108
- run: pnpm i
123109
- name: Generate docs types
@@ -130,11 +116,11 @@ jobs:
130116
name: Lint code
131117
runs-on: ubuntu-latest
132118
steps:
133-
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
134-
- uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
135-
- uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
119+
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
120+
- uses: pnpm/action-setup@0ebf47130e4866e96fce0953f49152a61190b271 # v6.0.9
121+
- uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
136122
with:
137-
node-version: ${{ env.NODE_VERSION }}
123+
node-version: 22.23.1
138124
cache: 'pnpm'
139125
- run: pnpm i
140126
- name: Generate types
@@ -146,46 +132,45 @@ jobs:
146132
a11y:
147133
name: Check for accessibility issues
148134
needs: changes
149-
if: ${{ needs.changes.outputs.docs_not_content == 'true' || needs.changes.outputs.docs_ja == 'true' || needs.changes.outputs.docs_en == 'true' || needs.changes.outputs.ci == 'true' || needs.changes.outputs.packages == 'true' }}
135+
if: >
136+
needs.changes.outputs.docs_not_content == 'true' ||
137+
needs.changes.outputs.docs_fa == 'true' ||
138+
needs.changes.outputs.docs_ja == 'true' ||
139+
needs.changes.outputs.docs_en == 'true' ||
140+
needs.changes.outputs.ci == 'true' ||
141+
needs.changes.outputs.packages == 'true'
150142
runs-on: ubuntu-latest
151143
steps:
152144
- name: Checkout
153-
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
154-
155-
# Uninstall man-db to prevent man page updates taking a long time after package installations
156-
# on Ubuntu 24.04.
157-
# https://github.com/actions/runner/issues/4030
158-
# https://github.com/actions/runner-images/issues/10977
159-
- name: Uninstall man-db
160-
run: |
161-
sudo apt-get update
162-
sudo apt-get remove man-db
145+
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
163146

164147
- name: Setup PNPM
165-
uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
148+
uses: pnpm/action-setup@0ebf47130e4866e96fce0953f49152a61190b271 # v6.0.9
166149

167150
- name: Setup Node
168-
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
151+
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
169152
with:
170-
node-version: ${{ env.NODE_VERSION }}
153+
node-version: 22.23.1
171154
cache: 'pnpm'
172155

173156
- name: Install Dependencies
174157
run: pnpm i
175158

176159
- name: Run accessibility audit
177160
working-directory: ./docs
178-
run: pnpm t
161+
run: pnpm test:ci
179162

180163
windows-smoke:
181164
name: Docs site builds on Windows
165+
needs: changes
166+
if: ${{ needs.changes.outputs.packages == 'true' || needs.changes.outputs.ci == 'true' || needs.changes.outputs.docs_not_content == 'true' }}
182167
runs-on: windows-latest
183168
steps:
184-
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
185-
- uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
186-
- uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
169+
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
170+
- uses: pnpm/action-setup@0ebf47130e4866e96fce0953f49152a61190b271 # v6.0.9
171+
- uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
187172
with:
188-
node-version: ${{ env.NODE_VERSION }}
173+
node-version: 22.23.1
189174
cache: 'pnpm'
190175
- run: pnpm i
191176
- name: Build docs site
@@ -199,15 +184,15 @@ jobs:
199184
runs-on: ubuntu-latest
200185
steps:
201186
- name: Checkout
202-
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
187+
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
203188

204189
- name: Setup PNPM
205-
uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
190+
uses: pnpm/action-setup@0ebf47130e4866e96fce0953f49152a61190b271 # v6.0.9
206191

207192
- name: Setup Node
208-
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
193+
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
209194
with:
210-
node-version: ${{ env.NODE_VERSION }}
195+
node-version: 22.23.1
211196
cache: 'pnpm'
212197

213198
- name: Install Dependencies

.github/workflows/congratsbot.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ on:
77
jobs:
88
congrats:
99
if: ${{ github.repository_owner == 'withastro' && github.event.head_commit.message != '[ci] format' }}
10-
uses: withastro/automation/.github/workflows/congratsbot.yml@main
10+
uses: withastro/automation/.github/workflows/congratsbot.yml@8a5969576beae8ae7bdce64167a95237878f4901 # v1.0.1
1111
with:
1212
EMOJIS: '🎉,🎊,🧑‍🚀,🥳,🙌,🚀,🤩,☄️,💫,<:starlight:1107431075543797802>,<:houston_pride:1130504824673284107>'
1313
COAUTHOR_TEMPLATES: >

.github/workflows/file-icons.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,15 +16,15 @@ jobs:
1616
runs-on: ubuntu-latest
1717
steps:
1818
- name: Checkout Repo
19-
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
19+
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
2020

2121
- name: Setup PNPM
22-
uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
22+
uses: pnpm/action-setup@0ebf47130e4866e96fce0953f49152a61190b271 # v6.0.9
2323

2424
- name: Setup Node
25-
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
25+
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
2626
with:
27-
node-version: 18.20.8
27+
node-version: 24.18.0
2828
cache: 'pnpm'
2929

3030
- name: Install Dependencies
@@ -35,7 +35,7 @@ jobs:
3535
working-directory: packages/file-icons-generator
3636

3737
- name: Create Pull Request
38-
uses: peter-evans/create-pull-request@c0f553fe549906ede9cf27b5156039d195d2ece0 # v8.1.0
38+
uses: peter-evans/create-pull-request@5f6978faf089d4d20b00c7766989d076bb2fc7f1 # v8.1.1
3939
with:
4040
branch: ci/file-icons
4141
token: ${{ secrets.FREDKBOT_GITHUB_TOKEN }}

.github/workflows/format.yml

Lines changed: 9 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -5,28 +5,14 @@ on:
55
branches:
66
- main
77

8+
concurrency:
9+
group: ${{ github.workflow }}-${{ github.ref }}
10+
cancel-in-progress: true
11+
812
jobs:
913
format:
10-
runs-on: ubuntu-latest
11-
steps:
12-
- name: Check out code using Git
13-
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
14-
with:
15-
ref: ${{ github.head_ref }}
16-
# Needs access to push to main
17-
token: ${{ secrets.FREDKBOT_GITHUB_TOKEN }}
18-
- uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
19-
- uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
20-
with:
21-
node-version: 18.20.8
22-
cache: 'pnpm'
23-
- run: pnpm i
24-
- name: Format with Prettier
25-
run: pnpm format
26-
- name: Commit changes
27-
uses: stefanzweifel/git-auto-commit-action@04702edda442b2e678b25b537cec683a1493fcb9 # v7.1.0
28-
with:
29-
commit_message: '[ci] format'
30-
branch: ${{ github.head_ref }}
31-
commit_user_name: fredkbot
32-
commit_user_email: fred+astrobot@astro.build
14+
if: github.repository_owner == 'withastro'
15+
uses: withastro/automation/.github/workflows/format.yml@8a5969576beae8ae7bdce64167a95237878f4901 # v1.0.1
16+
with:
17+
command: "format"
18+
secrets: inherit

.github/workflows/lunaria.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,19 +20,19 @@ jobs:
2020

2121
steps:
2222
- name: Checkout
23-
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
23+
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
2424
with:
2525
# Necessary for Lunaria to work properly
2626
# Makes the action clone the entire git history
2727
fetch-depth: 0
2828

2929
- name: Setup PNPM
30-
uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
30+
uses: pnpm/action-setup@0ebf47130e4866e96fce0953f49152a61190b271 # v6.0.9
3131

3232
- name: Setup Node
33-
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
33+
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
3434
with:
35-
node-version: 20.19.4
35+
node-version: 24.18.0
3636
cache: pnpm
3737

3838
- name: Install dependencies

0 commit comments

Comments
 (0)