From 68ab906a9d69c7eecbbf3ea4931ef991a3111f42 Mon Sep 17 00:00:00 2001 From: HiDeoo <494699+HiDeoo@users.noreply.github.com> Date: Thu, 25 Jun 2026 19:30:57 +0200 Subject: [PATCH] docs: brings back links validation --- docs/package.json | 4 +- pnpm-lock.yaml | 137 +++++++++++++++++++++++++++++++++++++++++--- pnpm-workspace.yaml | 3 + 3 files changed, 135 insertions(+), 9 deletions(-) diff --git a/docs/package.json b/docs/package.json index 2fa27c27300..e3e5dc3627b 100644 --- a/docs/package.json +++ b/docs/package.json @@ -11,7 +11,7 @@ "build": "astro build", "preview": "astro preview", "typecheck": "tsc --noEmit", - "linkcheck": "echo \"Skipping link validation: starlight-links-validator is not compatible with Sätteri yet.\"", + "linkcheck": "CHECK_LINKS=true pnpm build", "astro": "astro", "lunaria:build": "lunaria build", "grammars": "node grammars/generate.mjs" @@ -29,6 +29,6 @@ "@playwright/test": "^1.59.1", "axe-playwright": "^2.2.2", "sitemapper": "^4.1.5", - "starlight-links-validator": "^0.24.1" + "starlight-links-validator": "^0.25.1" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 83d4217c5ed..88424f2ad30 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -85,8 +85,8 @@ importers: specifier: ^4.1.5 version: 4.1.5 starlight-links-validator: - specifier: ^0.24.1 - version: 0.24.1(@astrojs/starlight@packages+starlight)(astro@7.0.2(@astrojs/markdown-remark@7.2.0)(@emnapi/core@1.11.1)(@emnapi/runtime@1.11.1)(@types/node@24.12.4)(jiti@2.6.1)(yaml@2.8.3)) + specifier: ^0.25.1 + version: 0.25.1(@astrojs/starlight@packages+starlight)(astro@7.0.2(@astrojs/markdown-remark@7.2.0)(@emnapi/core@1.11.1)(@emnapi/runtime@1.11.1)(@types/node@24.12.4)(jiti@2.6.1)(yaml@2.8.3)) examples/basics: dependencies: @@ -572,50 +572,99 @@ packages: cpu: [arm64] os: [darwin] + '@bruits/satteri-darwin-arm64@0.9.3': + resolution: {integrity: sha512-dRUZZrdwh1asfTOyM1nDNmzolhnHtlIFpqYrl1Tdd3YVcaebKmrfJgGL7NAoGPjbEwYmZxaugrxA0uzw83c0dw==} + cpu: [arm64] + os: [darwin] + '@bruits/satteri-darwin-x64@0.9.2': resolution: {integrity: sha512-oLSI0+Upq3Nd1brOdRSl044TMKgy7S6cF4sM7a9/Ms6/IADvuey+9yG3GBXxLGAzSYzR0/hh7PPSP1QBfsBKwA==} cpu: [x64] os: [darwin] + '@bruits/satteri-darwin-x64@0.9.3': + resolution: {integrity: sha512-wgNCTRp2hPSpNMGFv5A4+6+VXgRJIlBZ7XKb3iwjV8YjRWNIjzE5zV2fUeYynyZYVRkuJ9aYFqQmWhc1e5H+UQ==} + cpu: [x64] + os: [darwin] + '@bruits/satteri-linux-arm64-gnu@0.9.2': resolution: {integrity: sha512-G+G6uYscRc4VUTNgZgS6SSfTHh04q/d5WiH66Jg39eftMzTAsT5cLSEHDTvDpleUT6BMNHdunx927WbddDgw7A==} cpu: [arm64] os: [linux] libc: [glibc] + '@bruits/satteri-linux-arm64-gnu@0.9.3': + resolution: {integrity: sha512-A/pWy8Jb/PhDYc2/JFuYh06gFJcsfBUBDl81YydGYBrL/Z4nItDfhNDNOibyeSN/lKKDRlycIHEIajjErk00sQ==} + cpu: [arm64] + os: [linux] + libc: [glibc] + '@bruits/satteri-linux-arm64-musl@0.9.2': resolution: {integrity: sha512-wRaKSHCRXwzAZwlieCiv3u8pWEE2t9FmhZ0X59YZvHCGin56YUBOTyEQqSOrRfXs6fhUb8ylprisGYJC6J8mFQ==} cpu: [arm64] os: [linux] libc: [musl] + '@bruits/satteri-linux-arm64-musl@0.9.3': + resolution: {integrity: sha512-L6YxmyOSickzo4pE5WmZfNTJnjX0MtgKOsuwQfNZECTx9Ir5vl2B37EIwnxe2AybuPPHl+FqVQtthNDUdH4Vgg==} + cpu: [arm64] + os: [linux] + libc: [musl] + '@bruits/satteri-linux-x64-gnu@0.9.2': resolution: {integrity: sha512-hxEq3g/kS3tm3GKc2aRYnLMFI5IjxYzcd2sCwEH2C0V+m9TTAf+7Snt/+AZZklpxDOBrI+zthJHip9xnk9uM3g==} cpu: [x64] os: [linux] libc: [glibc] + '@bruits/satteri-linux-x64-gnu@0.9.3': + resolution: {integrity: sha512-RgH6GPihg9Lzs2yHUsMjqiLxfLyOdmBty8sg9pBY9B4CBnvdOzvg8vklqN+C4qrEEdA9TwpbDpHr1AshLKyRpw==} + cpu: [x64] + os: [linux] + libc: [glibc] + '@bruits/satteri-linux-x64-musl@0.9.2': resolution: {integrity: sha512-ZSu+a07Efn8sOeA1k9ZM9CO9J3sAeG37Sf2YYxi/unFGgkFe+Y8MHDQlUNtngpC8pkYIjkojkLFT6v1yiHNxOg==} cpu: [x64] os: [linux] libc: [musl] + '@bruits/satteri-linux-x64-musl@0.9.3': + resolution: {integrity: sha512-BeWhVORjNTIomePznUKiMbHZTqC0j7sMXZFsISmbX+po5d33KLkqBqKh6K332CHJ8KUmCWx16FfPjwsoysttQg==} + cpu: [x64] + os: [linux] + libc: [musl] + '@bruits/satteri-wasm32-wasi@0.9.2': resolution: {integrity: sha512-Q/d7OIwXb5UGaiKUuPp2E6Bm41xD3sW8ts5L6l2m0Wi9uu9WKsv7CDc1ge6AVd6OC6g4nlSKWECFfPa7MkJchg==} engines: {node: '>=14.0.0'} cpu: [wasm32] + '@bruits/satteri-wasm32-wasi@0.9.3': + resolution: {integrity: sha512-dFNcOHKWV2cztCPnYTn7kZ9D7kNOt8N239z5ysFkNHLxJrfK7zaKIXQbfXYN32C+JoVFqAcTIOeWH2+VnsCOHg==} + engines: {node: '>=14.0.0'} + cpu: [wasm32] + '@bruits/satteri-win32-arm64-msvc@0.9.2': resolution: {integrity: sha512-QeaVjw+2IZeDRU7dU0KFlECTAwbL4fRUIXxZYQc4a16ejPzwizChEsKzoUBduyOJSDjyzvZxAmcdUYsSOUmR9A==} cpu: [arm64] os: [win32] + '@bruits/satteri-win32-arm64-msvc@0.9.3': + resolution: {integrity: sha512-VnwjBHiAra/PNNEza8eSZdQiG4A3PtTJJwUDtOPAc6iTs0BWZwZX8+OPUZE7//yQCBhgvEMcI8vpwsAwCb6qGQ==} + cpu: [arm64] + os: [win32] + '@bruits/satteri-win32-x64-msvc@0.9.2': resolution: {integrity: sha512-+hVrOLFtGgXakKO38F6afcc9/uuWvRGghPmiA6/ez5XGnWaM9VjQxqvogam5aOa7Nvl4V65P8Vpj5RsLzYeO8g==} cpu: [x64] os: [win32] + '@bruits/satteri-win32-x64-msvc@0.9.3': + resolution: {integrity: sha512-Dsoe4reWe69MyILmMwU6iISIceTW7YIFqbyym7haf9DhUvqkYfMAyp7GMM21JzV0SpG9A2BwzFVP7iq9mmxrpA==} + cpu: [x64] + os: [win32] + '@capsizecss/unpack@4.0.0': resolution: {integrity: sha512-VERIM64vtTP1C4mxQ5thVT9fK0apjPFobqybMtA1UdUujWka24ERHbRHFGmpbbhp73MhV+KSsHQH9C6uOTdEQA==} engines: {node: '>=18'} @@ -1206,6 +1255,12 @@ packages: '@emnapi/core': ^1.7.1 '@emnapi/runtime': ^1.7.1 + '@napi-rs/wasm-runtime@1.1.6': + resolution: {integrity: sha512-ZLv/JdUfkvOy9eCnnBaGfiO+XimbjebAeO+MRQqD/B+FR1tnRN0tpKSJHRbE8sFfS6aqsXZ67TQjfwfsxULVbg==} + peerDependencies: + '@emnapi/core': ^1.7.1 + '@emnapi/runtime': ^1.7.1 + '@nodable/entities@2.1.0': resolution: {integrity: sha512-nyT7T3nbMyBI/lvr6L5TyWbFJAI9FTgVRakNoBqCD+PmID8DzFrrNdLLtHMwMszOtqZa8PAOV24ZqDnQrhQINA==} @@ -1522,6 +1577,9 @@ packages: '@tybys/wasm-util@0.10.2': resolution: {integrity: sha512-RoBvJ2X0wuKlWFIjrwffGw1IqZHKQqzIchKaadZZfnNpsAYp2mM0h36JtPCjNDAHGgYez/15uMBpfGwchhiMgg==} + '@tybys/wasm-util@0.10.3': + resolution: {integrity: sha512-F3fo1MYrRJYL3zER0OUOmkutjr1Vp23m7OsSgp7nq4SP6OqX6C/56XFIPAl5bt3zaBRjmW7SGz3u/6LwFpYcOg==} + '@types/chai@5.2.3': resolution: {integrity: sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==} @@ -3428,6 +3486,9 @@ packages: satteri@0.9.2: resolution: {integrity: sha512-IDJTE5SzEg9PqtdZEToQ3bjlfQ/zM+/HNaBFrwPdZbtk9IL1RWVFvzR8EMIrC0JYybJNKZS8FL45GNSAMX/6Xg==} + satteri@0.9.3: + resolution: {integrity: sha512-2XfBh89LCnBMFkNOeVKkBLelAZcIA17VLHsgJum1tJ2fXiPZDN/TDXv4ku46rFOQXYd41LJ0kiZh5gPqExcCsg==} + sax@1.6.0: resolution: {integrity: sha512-6R3J5M4AcbtLUdZmRv2SygeVaM7IhrLXu9BmnOGmmACak8fiUtOsYNWUS4uK7upbmHIBbLBeFeI//477BKLBzA==} engines: {node: '>=11.0.0'} @@ -3528,12 +3589,12 @@ packages: stackback@0.0.2: resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} - starlight-links-validator@0.24.1: - resolution: {integrity: sha512-nATZ0xMLYnmO1YDBGEy9PdjF/WxhbKR7/gQo0dFs5UELcorKLPXcNLM62xbqII7g0AF7/D9wSzD4qSwIGTu8sw==} + starlight-links-validator@0.25.1: + resolution: {integrity: sha512-49F1JRvaJmvKSnM/jPFTjDVVwDJBUJ78jZE+fOResTRwYSa8MzPQzsJlSS1FeolsdqAat1evAu//WgIm65uyzw==} engines: {node: '>=22.12.0'} peerDependencies: - '@astrojs/starlight': '>=0.38.0' - astro: '>=6.0.0' + '@astrojs/starlight': '>=0.41.0' + astro: '>=7.0.2' statuses@2.0.2: resolution: {integrity: sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==} @@ -4406,21 +4467,39 @@ snapshots: '@bruits/satteri-darwin-arm64@0.9.2': optional: true + '@bruits/satteri-darwin-arm64@0.9.3': + optional: true + '@bruits/satteri-darwin-x64@0.9.2': optional: true + '@bruits/satteri-darwin-x64@0.9.3': + optional: true + '@bruits/satteri-linux-arm64-gnu@0.9.2': optional: true + '@bruits/satteri-linux-arm64-gnu@0.9.3': + optional: true + '@bruits/satteri-linux-arm64-musl@0.9.2': optional: true + '@bruits/satteri-linux-arm64-musl@0.9.3': + optional: true + '@bruits/satteri-linux-x64-gnu@0.9.2': optional: true + '@bruits/satteri-linux-x64-gnu@0.9.3': + optional: true + '@bruits/satteri-linux-x64-musl@0.9.2': optional: true + '@bruits/satteri-linux-x64-musl@0.9.3': + optional: true + '@bruits/satteri-wasm32-wasi@0.9.2': dependencies: '@emnapi/core': 1.11.1 @@ -4428,12 +4507,25 @@ snapshots: '@napi-rs/wasm-runtime': 1.1.5(@emnapi/core@1.11.1)(@emnapi/runtime@1.11.1) optional: true + '@bruits/satteri-wasm32-wasi@0.9.3': + dependencies: + '@emnapi/core': 1.11.1 + '@emnapi/runtime': 1.11.1 + '@napi-rs/wasm-runtime': 1.1.6(@emnapi/core@1.11.1)(@emnapi/runtime@1.11.1) + optional: true + '@bruits/satteri-win32-arm64-msvc@0.9.2': optional: true + '@bruits/satteri-win32-arm64-msvc@0.9.3': + optional: true + '@bruits/satteri-win32-x64-msvc@0.9.2': optional: true + '@bruits/satteri-win32-x64-msvc@0.9.3': + optional: true + '@capsizecss/unpack@4.0.0': dependencies: fontkitten: 1.0.3 @@ -5055,6 +5147,13 @@ snapshots: '@tybys/wasm-util': 0.10.2 optional: true + '@napi-rs/wasm-runtime@1.1.6(@emnapi/core@1.11.1)(@emnapi/runtime@1.11.1)': + dependencies: + '@emnapi/core': 1.11.1 + '@emnapi/runtime': 1.11.1 + '@tybys/wasm-util': 0.10.3 + optional: true + '@nodable/entities@2.1.0': {} '@nodelib/fs.scandir@2.1.5': @@ -5282,6 +5381,11 @@ snapshots: tslib: 2.8.1 optional: true + '@tybys/wasm-util@0.10.3': + dependencies: + tslib: 2.8.1 + optional: true + '@types/chai@5.2.3': dependencies: '@types/deep-eql': 4.0.2 @@ -7863,6 +7967,23 @@ snapshots: '@bruits/satteri-win32-arm64-msvc': 0.9.2 '@bruits/satteri-win32-x64-msvc': 0.9.2 + satteri@0.9.3: + dependencies: + '@types/estree-jsx': 1.0.5 + '@types/hast': 3.0.4 + '@types/mdast': 4.0.4 + '@types/unist': 3.0.3 + optionalDependencies: + '@bruits/satteri-darwin-arm64': 0.9.3 + '@bruits/satteri-darwin-x64': 0.9.3 + '@bruits/satteri-linux-arm64-gnu': 0.9.3 + '@bruits/satteri-linux-arm64-musl': 0.9.3 + '@bruits/satteri-linux-x64-gnu': 0.9.3 + '@bruits/satteri-linux-x64-musl': 0.9.3 + '@bruits/satteri-wasm32-wasi': 0.9.3 + '@bruits/satteri-win32-arm64-msvc': 0.9.3 + '@bruits/satteri-win32-x64-msvc': 0.9.3 + sax@1.6.0: {} semver@6.3.1: {} @@ -7993,8 +8114,9 @@ snapshots: stackback@0.0.2: {} - starlight-links-validator@0.24.1(@astrojs/starlight@packages+starlight)(astro@7.0.2(@astrojs/markdown-remark@7.2.0)(@emnapi/core@1.11.1)(@emnapi/runtime@1.11.1)(@types/node@24.12.4)(jiti@2.6.1)(yaml@2.8.3)): + starlight-links-validator@0.25.1(@astrojs/starlight@packages+starlight)(astro@7.0.2(@astrojs/markdown-remark@7.2.0)(@emnapi/core@1.11.1)(@emnapi/runtime@1.11.1)(@types/node@24.12.4)(jiti@2.6.1)(yaml@2.8.3)): dependencies: + '@astrojs/markdown-satteri': 0.3.2 '@astrojs/starlight': link:packages/starlight '@types/picomatch': 4.0.2 astro: 7.0.2(@astrojs/markdown-remark@7.2.0)(@emnapi/core@1.11.1)(@emnapi/runtime@1.11.1)(@types/node@24.12.4)(jiti@2.6.1)(yaml@2.8.3) @@ -8004,6 +8126,7 @@ snapshots: mdast-util-mdx-jsx: 3.2.0 mdast-util-to-hast: 13.2.1 picomatch: 4.0.4 + satteri: 0.9.3 terminal-link: 5.0.0 unist-util-visit: 5.1.0 yaml: 2.8.3 diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index a827556c79e..71e4f8eb4c5 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -37,3 +37,6 @@ minimumReleaseAgeExclude: - 'expressive-code' - 'astro-expressive-code' - 'rehype-expressive-code' + - 'starlight-links-validator' + - '@napi-rs/wasm-runtime' + - '@tybys/wasm-util'