Skip to content

Commit 27edfe3

Browse files
docs(deps)(deps): bump astro and @astrojs/starlight in /docs (sbpp#1346)
* docs(deps)(deps): bump astro and @astrojs/starlight in /docs Bumps [astro](https://github.com/withastro/astro/tree/HEAD/packages/astro) and [@astrojs/starlight](https://github.com/withastro/starlight/tree/HEAD/packages/starlight). These dependencies needed to be updated together. Updates `astro` from 5.18.1 to 6.3.1 - [Release notes](https://github.com/withastro/astro/releases) - [Changelog](https://github.com/withastro/astro/blob/main/packages/astro/CHANGELOG.md) - [Commits](https://github.com/withastro/astro/commits/astro@6.3.1/packages/astro) Updates `@astrojs/starlight` from 0.30.6 to 0.39.2 - [Release notes](https://github.com/withastro/starlight/releases) - [Changelog](https://github.com/withastro/starlight/blob/main/packages/starlight/CHANGELOG.md) - [Commits](https://github.com/withastro/starlight/commits/@astrojs/starlight@0.39.2/packages/starlight) --- updated-dependencies: - dependency-name: astro dependency-version: 6.3.1 dependency-type: direct:production - dependency-name: "@astrojs/starlight" dependency-version: 0.39.2 dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com> * ci(docs): bump runner Node from 20 to 22 for Astro 6 floor Astro 6 raised its Node floor to `>=22.12` (`engines.node` in the astro@6.x manifest, EBADENGINE warning at install time + a hard "Node.js v20 is not supported by Astro!" abort at `astro build`). Bumping the docs-build / docs-screenshots-build / docs-screenshots-capture runners to Node 22 unblocks the paired astro@^5 → ^6 + @astrojs/starlight@^0.30 → ^0.39 dependency bump in this PR. The web panel's runtime stack is unaffected (PHP 8.5; the only client-side TS check runs over `web/scripts/` and stays on Node 20 via `ts-check.yml`). * docs(starlight): migrate social config from record to array shape Starlight 0.33 (in the 0.30 → 0.39 bump landing here) changed the `social` integration option from a `Record<KnownPlatform, url>` map to a `[{icon, label, href}]` array. The old shape now fails the config schema with "Starlight v0.33.0 changed the `social` configuration syntax. Please specify an array of link items instead of an object." Migrating both the GitHub and Discord entries preserves the topbar icon row exactly. The pre-fix comment block at the call site already anticipated this exact migration; the surrounding rationale was moved into the new comment. --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: rumblefrog <contact@zhenyangli.me>
1 parent 07309da commit 27edfe3

6 files changed

Lines changed: 469 additions & 2022 deletions

File tree

.github/workflows/docs-build.yml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,11 @@ jobs:
3535
- name: Setup Node
3636
uses: actions/setup-node@v4
3737
with:
38-
node-version: '20'
38+
# Astro 6 requires Node >=22.12; 20 trips an EBADENGINE on `npm
39+
# ci` and a hard "Node.js v20 is not supported by Astro!" on
40+
# `astro build`. Bumped together with the docs astro+starlight
41+
# group bump (#1346).
42+
node-version: '22'
3943
cache: 'npm'
4044
cache-dependency-path: docs/package-lock.json
4145

.github/workflows/docs-screenshots-build.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,10 @@ jobs:
4343
- name: Setup Node
4444
uses: actions/setup-node@v4
4545
with:
46-
node-version: '20'
46+
# Astro 6 requires Node >=22.12; mirrors the bump in
47+
# docs-build.yml that landed with the docs astro+starlight
48+
# group bump (#1346).
49+
node-version: '22'
4750
cache: 'npm'
4851
cache-dependency-path: docs/package-lock.json
4952

.github/workflows/docs-screenshots-capture.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,10 @@ jobs:
143143
- name: Setup Node
144144
uses: actions/setup-node@v4
145145
with:
146-
node-version: '20'
146+
# Astro 6 requires Node >=22.12; mirrors the bump in
147+
# docs-build.yml that landed with the docs astro+starlight
148+
# group bump (#1346).
149+
node-version: '22'
147150
cache: 'npm'
148151
cache-dependency-path: trusted/docs/package-lock.json
149152

docs/astro.config.mjs

Lines changed: 17 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -58,16 +58,23 @@ export default defineConfig({
5858
attrs: { name: 'theme-color', content: '#ea580c' },
5959
},
6060
],
61-
// Starlight 0.30 takes `social` as a record keyed by platform
62-
// name (the schema is `Record<KnownPlatform, url>` in
63-
// node_modules/@astrojs/starlight/schemas/social.ts). Newer
64-
// Starlight (>= 0.32-ish) expanded this to the
65-
// `[{icon, label, href}]` array shape; bump this when the
66-
// dependency floor moves.
67-
social: {
68-
github: 'https://github.com/sbpp/sourcebans-pp',
69-
discord: 'https://discord.gg/tzqYqmAtF5',
70-
},
61+
// Starlight 0.33 changed `social` from a `Record<KnownPlatform, url>`
62+
// map to a `[{icon, label, href}]` array (see the changelog at
63+
// https://github.com/withastro/starlight/blob/main/packages/starlight/CHANGELOG.md#0330).
64+
// Migrated alongside the @astrojs/starlight ^0.30 → ^0.39 bump
65+
// in this PR.
66+
social: [
67+
{
68+
icon: 'github',
69+
label: 'GitHub',
70+
href: 'https://github.com/sbpp/sourcebans-pp',
71+
},
72+
{
73+
icon: 'discord',
74+
label: 'Discord',
75+
href: 'https://discord.gg/tzqYqmAtF5',
76+
},
77+
],
7178
editLink: {
7279
// Source of truth lives in sourcebans-pp; the deploy shell is
7380
// sbpp.github.io. Edit links point back here.

0 commit comments

Comments
 (0)