Starlight Changelog
0.30.0
Minor Changes
-
#2612
8d5a4e8Thanks @HiDeoo! - Adds support for Astro v5, drops support for Astro v4.Upgrade Astro and dependencies
⚠️ BREAKING CHANGE: Astro v4 is no longer supported. Make sure you update Astro and any other official integrations at the same time as updating Starlight:
Terminal window npx @astrojs/upgradeCommunity Starlight plugins and Astro integrations may also need to be manually updated to work with Astro v5. If you encounter any issues, please reach out to the plugin or integration author to see if it is a known issue or if an updated version is being worked on.
Update your collections
⚠️ BREAKING CHANGE: Starlight’s internal content collections, which organize, validate, and render your content, have been updated to use Astro’s new Content Layer API and require configuration changes in your project.
-
Move the content config file. This file no longer lives within the
src/content/config.tsfolder and should now exist atsrc/content.config.ts. -
Edit the collection definition(s). To update the
docscollection, aloaderis now required:src/content.config.ts import { defineCollection } from "astro:content";import { docsLoader } from "@astrojs/starlight/loaders";import { docsSchema } from "@astrojs/starlight/schema";export const collections = {docs: defineCollection({ schema: docsSchema() }),docs: defineCollection({ loader: docsLoader(), schema: docsSchema() }),};If you are using the
i18ncollection to provide translations for additional languages you support or override our default labels, you will need to update the collection definition in a similar way and remove the collectiontypewhich is no longer available:src/content.config.ts import { defineCollection } from "astro:content";import { docsLoader, i18nLoader } from "@astrojs/starlight/loaders";import { docsSchema, i18nSchema } from "@astrojs/starlight/schema";export const collections = {docs: defineCollection({ schema: docsSchema() }),docs: defineCollection({ loader: docsLoader(), schema: docsSchema() }),i18n: defineCollection({ type: 'data', schema: i18nSchema() }),i18n: defineCollection({ loader: i18nLoader(), schema: i18nSchema() }),}; -
Update other collections. To update any other collections you may have, follow the “Updating existing collections” section in the Astro 5 upgrade guide.
If you are unable to make any changes to your collections at this time, including Starlight’s default
docsandi18ncollections, you can enable thelegacy.collectionsflag to upgrade to v5 without updating your collections. This legacy flag exists to provide temporary backwards compatibility, and will allow you to keep your collections in their current state until the legacy flag is no longer supported. -
Patch Changes
-
#2669
310df7dThanks @aaronperezaguilera! - Adds Catalan UI translations -
#2664
62ff007Thanks @HiDeoo! - Publishes provenance containing verifiable data to link a package back to its source repository and the specific build instructions used to publish it. -
#2670
0223b42Thanks @aaronperezaguilera! - Adds Spanish UI translations for the Pagefind search modal
0.29.3
Patch Changes
-
#2642
12750aeThanks @dragomano! - Updates Russian UI translations -
#2656
4d543beThanks @HiDeoo! - Improves error message when an invalid configuration or no configuration is provided to the Starlight integration. -
#2645
cf12bebThanks @techfg! - Fixes support for favicon URLs that contain a search query and/or hash -
#2650
38db4ecThanks @raviqqe! - Moves@types/js-yamlpackage to non-dev dependencies -
#2633
5adb720Thanks @HiDeoo! - Fixes a VoiceOver issue with Safari where the content of a<script>element could be read before the sidebar content. -
#2663
34755f9Thanks @astrobot-houston! - Adds a newseti:viteicon for Vite configuration files in the<FileTree>component
0.29.2
Patch Changes
- #2616
128cc51Thanks @delucis! - Fixes an edge case to correctly avoid a trailing slash when navigating from a root locale homepage to another language via Starlight’s language switcher whentrailingSlash: 'never'is set
0.29.1
Patch Changes
-
#2611
6059d96Thanks @HiDeoo! - Fixes a UI string type issue in projects with multiple data content collections. -
#2606
10b15a7Thanks @delucis! - Makes<CardGrid>more resilient to complex child content on smaller viewports -
#2605
ec7ab4fThanks @brianzelip! - ExposesSidebarPersistercomponent in package exports for use in custom overrides -
#2614
9a31980Thanks @HiDeoo! - Fixes an issue with custom pages using the<StarlightPage />component and a custom sidebar missing highlighting for the active page and navigation links. -
#2613
a73780fThanks @delucis! - Fixes support forsidebarfrontmatter options in sidebar entries usingslugor the string shorthand for internal links
0.29.0
Minor Changes
-
#2551
154c8e3Thanks @hippotastic! - Updates theastro-expressive-codedependency to the latest version (0.38).The new version allows using
ec.config.mjsto selectively override individual Expressive Code styles and settings provided by Starlight themes and plugins, speeds up Shiki language loading, and adds the config optionexpressiveCode.shiki.injectLangsIntoNestedCodeBlocks. See the Expressive Code release notes for full details. -
#2252
6116db0Thanks @HiDeoo! - Improves build performance for sites with large sidebarsThis release adds a caching layer to Starlight’s sidebar generation logic, reducing the number of times sidebars need to be regenerated while building a site. Some benchmarks for projects with a complex sidebar saw builds complete more than 35% faster with this change.
-
#2503
a4c8eddThanks @HiDeoo! - Improves the accessibility of asides and tabs by removing some unnecessary HTML landmarks.
Patch Changes
- #2579
241966bThanks @RafidMuhymin! - Adds social link icon for Nostr
0.28.6
Patch Changes
- #2565
236467bThanks @HiDeoo! - Fixes an issue with custom UI strings defined in YAML files not being loaded in some contexts.
0.28.5
Patch Changes
-
#2546
bf42300Thanks @HiDeoo! - Fixes an issue where i18n content collection related errors, e.g. malformed JSON or YAML, would not be reported. -
#2548
07673c8Thanks @HiDeoo! - Fixes a URL localization edge case. In projects without a root locale configured, slugs without a locale prefix did not fall back to the default locale as expected. -
#2547
91e1dd7Thanks @HiDeoo! - Fixes a Firefox Markdown content rendering issue for text sentences separated by a line break. -
#2524
1b46783Thanks @jsparkdev! - Fixes a broken link to Astro’s Docs in an error message
0.28.4
Patch Changes
-
#2444
d585b3eThanks @HiDeoo! - Fixes a UI string translation issue for languages with a region subtag. -
#2518
0f69db8Thanks @morinokami! - Updates Japanese UI translations -
#2507
bd6ced5Thanks @HiDeoo! - Fixes a table of contents highlighting issue after resizing the window. -
#2444
d585b3eThanks @HiDeoo! - Refactors various components to use the new built-in localization system to access translated UI strings.
0.28.3
Patch Changes
-
#2408
0b4823dThanks @HiDeoo! - Fixes a link formatting issue when using the Astrobuild.formatoption set tofilewith abase. -
#2380
7b451cfThanks @delucis! - Loosen Starlight’s i18n schema to pass through unknown keys -
#2388
6bba3d8Thanks @HiDeoo! - Fixes a potential type-checking issue in Starlight projects. -
#2443
a0f40b3Thanks @kevinzunigacuellar! - Fixes CSS issue where bottom padding is not applied in the search dialog.