Skip to content

AstroEco is Releasing…

Display your GitHub releases using astro-loader-github-releases

withastro/starlight

Patch Changes

withastro/astro

Patch Changes

  • #17985 7a6e7f7 Thanks @astro-factory! - Fixes Vue render-function components failing to build when @astrojs/react is also enabled. React's renderer check no longer crashes on non-React object components, and Vue's check now recognizes defineComponent() components that use a setup function returning a render function.
withastro/astro

Patch Changes

  • #17971 0037c1a Thanks @matthewp! - Fixes aborted request bodies causing duplicate unhandled rejection logs in standalone mode when using src/fetch.ts

  • #17964 01395b8 Thanks @astro-factory! - Fixes trailing-slash redirects truncating query strings that contain a second ? character

withastro/astro

Patch Changes

  • #17978 7a698ca Thanks @astro-factory! - Fixes skew protection to include the build assets directory (/_astro/ by default) in skew-protection.json patterns, preventing lazy-hydrated islands from loading duplicate framework instances after a redeploy
  • Updated dependencies []:
    • @astrojs/underscore-redirects@1.0.4
withastro/astro

Patch Changes

  • #17958 b95c574 Thanks @astro-factory! - Fixes a build failure when the wrangler config uses the exports field to declare Durable Object classes

  • #18022 24946f7 Thanks @matthewp! - Fixes cold astro dev crashes when using the passthrough image service

  • #17842 d68db73 Thanks @adamchal! - Fixes broken images on static sites by transforming prerendered images at build time with the default Cloudflare Images binding

  • #17945 750b4db Thanks @matthewp! - Pre-bundles renderer server entrypoints and the default console logger during dev so they are included in the initial optimization pass, preventing a mid-request re-optimization that could crash the dev server on Cloudflare (workerd).

  • Updated dependencies []:

    • @astrojs/underscore-redirects@1.0.4
withastro/astro

Patch Changes

  • #17651 504333c Thanks @sxzz! - Refactors internal version handling to use a smaller, ESM-native dependency
withastro/astro

Minor Changes

  • #17676 49d4294 Thanks @Princesseuh! - Improves type checking and editor support for .astro files.

    The language server now uses our all-new Biome powered astro2tsx implementation. This new version has much better support for incomplete syntax, generic types and various edge cases.

    In the vast majority of cases, no changes should be required to your code, and any change should be the result of more accurate types or behavior.

Patch Changes

  • #17916 8eaa4f2 Thanks @matthewp! - Fixes organize imports across frontmatter and multiple script tags

  • #17542 fae64dd Thanks @IAmYhvr! - Fixes the AstroComponent suffix not being removed from Svelte and Vue imports in .astro files.

withastro/astro

Patch Changes

  • #17651 504333c Thanks @sxzz! - Refactors internal version handling to use a smaller, ESM-native dependency
withastro/astro

Minor Changes

  • #17676 49d4294 Thanks @Princesseuh! - Improves type checking and editor support for .astro files.

    The language server now uses our all-new Biome powered astro2tsx implementation. This new version has much better support for incomplete syntax, generic types and various edge cases.

    In the vast majority of cases, no changes should be required to your code, and any change should be the result of more accurate types or behavior.

Patch Changes

  • #17542 fae64dd Thanks @IAmYhvr! - Fixes the AstroComponent suffix not being removed from Svelte and Vue imports in .astro files.
withastro/astro

Patch Changes

  • #17985 7a6e7f7 Thanks @astro-factory! - Fixes Vue render-function components failing to build when @astrojs/react is also enabled. React's renderer check no longer crashes on non-React object components, and Vue's check now recognizes defineComponent() components that use a setup function returning a render function.
withastro/astro

Patch Changes

  • #17651 504333c Thanks @sxzz! - Refactors internal version handling to use a smaller, ESM-native dependency

  • #17942 0bc5715 Thanks @matthewp! - Returns appropriate 400 and 404 responses from the image endpoint for invalid and missing local image paths

  • #17700 b2222fc Thanks @winklemad! - Fixes Astro.preferredLocaleList returning an empty list when a locale is configured with the object form ({ path, codes }) and the browser sends the code with different casing or an underscore, such as en-US matching a configured en-us

  • #17941 394ff79 Thanks @matthewp! - Fixes astro preview --ignore-lock (and astro dev --ignore-lock) being refused when run from an AI agent environment. The flag now starts the server in the foreground instead of erroring, since agent detection only inferred background mode and was never explicitly requested. An explicit --background combined with --ignore-lock still errors.

  • #17928 3277927 Thanks @ArmandPhilippot! - Fixes TypeScript autocompletion for getImage() to suggest all available predefined options.

  • #17928 3277927 Thanks @ArmandPhilippot! - Fixes a type error in getImage() options that allowed passing both widths and densities at the same time.

  • #17857 2637ed1 Thanks @Princesseuh! - Improves rendering performance

  • #17943 2fc7ce9 Thanks @matthewp! - Fixes a WebAssembly error when importing astro:actions in tests that run under @cloudflare/vitest-pool-workers

  • #18018 1b5a234 Thanks @astro-factory! - Fixes trailing-slash redirect response body pointing to the incoming URL instead of the redirect target. The location header was correct, but the HTML body (<meta http-equiv="refresh">, <title>, and <a> tag) contained the original request path without the trailing-slash correction or query string.

  • #17905 eaf70fa Thanks @SudoDevStudio! - Fixes custom dev toolbar apps losing their UI after client-side navigation with <ClientRouter />.

  • #18011 558b301 Thanks @astro-factory! - Fixes prerendered Cloudflare pages rendering as [object Object] when nodejs_compat is enabled in wrangler.toml

  • #17944 ba08e35 Thanks @matthewp! - Fixes a regression in astro dev where writes outside the module graph (for example, @astrojs/cloudflare's .wrangler/state files) invalidated the middleware on every request, causing repeated SSR reloads. Such writes no longer invalidate the middleware.

  • #17531 ae837db Thanks @danilloestrela! - Updates svgo to 4.0.2 to resolve a security advisory

  • #17953 dbbf10e Thanks @astro-factory! - Fixes a one-time page reload shortly after the first load on cold dev-server starts when a project has framework components imported from MDX content entries. MDX files are now included in the dev dependency pre-bundling scan, so their framework dependencies are bundled up front instead of being discovered (and reloaded for) at runtime.

  • #17955 4e8ad9a Thanks @matthewp! - Improves dev server startup time. The content config and dev server app module graphs now begin compiling during server creation without blocking the server from listening. Request handling waits for the shared setup result when needed, cutting astro dev ready time by roughly a third on projects with a content config.

  • #17960 9838049 Thanks @Chy-Zaber-Bin-Zahid! - Improves the diagnostics of some Astro errors.

  • #17998 0e5478d Thanks @astro-factory! - Fixes SVG <style> elements nested inside <defs> or other container elements not being hashed for CSP

  • #17994 80f9f1d Thanks @astro-factory! - Fixes experimental.incrementalBuild restoring pages with stale CSS after a preprocessor partial changes or missing original images referenced by restored pages

  • #17889 8ae6b46 Thanks @ajfAfg! - Fixes a bug where the dev server stripped the configured base from URLs that only share a prefix with it. With base: '/s', requests to /src/... were rewritten to /rc/... and failed, breaking those pages during development.

  • #17980 cfccafa Thanks @gameroman! - Improves JSDoc for fonts api

  • #17953 dbbf10e Thanks @astro-factory! - Fixes CSS HMR for framework components rendered through content entries after ClientRouter navigation

  • #17970 0b4dc3a Thanks @matthewp! - Improves serialization of transition animation values in generated CSS

  • #17999 30ef3cb Thanks @astro-factory! - Fixes content collection HMR not updating prerendered pages when an adapter enables a separate prerender environment (e.g. @astrojs/cloudflare with prerenderEnvironment: 'node')

  • #18002 312ab49 Thanks @shoutoutuoadi325! - Fixes redirect targets being corrupted when a dynamic route parameter value contains $ replacement patterns like $&

  • #17937 e294953 Thanks @matthewp! - Fixes a bug where the glob() content loader kept stale entries in the data store after the last file in a collection was deleted. Empty collections are now pruned correctly, and the file watcher is registered in dev so the first file added to an empty collection is picked up without a restart.

  • #17945 750b4db Thanks @matthewp! - Pre-bundles renderer server entrypoints and the default console logger during dev so they are included in the initial optimization pass, preventing a mid-request re-optimization that could crash the dev server on Cloudflare (workerd).

withastro/starlight

Patch Changes

  • #4198 96a44d4 Thanks @mayank99! - Removes the popover attribute from the sidebar pane on desktop viewports. This ensures the desktop sidebar doesn't stay in a "hidden" popover visibility state.
withastro/astro

Patch Changes

  • #17896 a548223 Thanks @matthewp! - Fixes <script>/<style> rendering in MDX so that only literal content (including content injected by remark/rehype plugins) is treated as trusted markup. A dynamic value passed as a <script>/<style> child (e.g. <script>{value}</script>) is now escaped like any other element's content instead of being rendered raw. Use set:html to explicitly opt a dynamic value back into raw rendering.

  • #17931 c1a6a89 Thanks @astro-factory! - Fixes the dev toolbar returning a 504 "Outdated Optimize Dep" error when a workspace-linked package imports a dependency that Vite's initial scan did not discover

  • #17908 42e9188 Thanks @astro-factory! - Fixes i18n fallback routing replacing the first substring match instead of the actual locale segment, which mangled paths like /energy/en/about into /esergy/en/about

  • #17936 4b92ddc Thanks @astro-factory! - Fixes sessions breaking in dev mode with the Cloudflare adapter when middleware is present

  • Updated dependencies [a548223]:

    • @astrojs/markdown-satteri@0.4.1
withastro/astro

Patch Changes

  • #17896 a548223 Thanks @matthewp! - Fixes <script>/<style> rendering in MDX so that only literal content (including content injected by remark/rehype plugins) is treated as trusted markup. A dynamic value passed as a <script>/<style> child (e.g. <script>{value}</script>) is now escaped like any other element's content instead of being rendered raw. Use set:html to explicitly opt a dynamic value back into raw rendering.
withastro/astro

Patch Changes

  • Updated dependencies [a548223]:
    • @astrojs/markdown-satteri@0.4.1
withastro/astro

Patch Changes

  • #17896 a548223 Thanks @matthewp! - Fixes <script>/<style> rendering in MDX so that only literal content (including content injected by remark/rehype plugins) is treated as trusted markup. A dynamic value passed as a <script>/<style> child (e.g. <script>{value}</script>) is now escaped like any other element's content instead of being rendered raw. Use set:html to explicitly opt a dynamic value back into raw rendering.
withastro/astro

Patch Changes

  • #17914 a400504 Thanks @astro-factory! - Fixes a build crash when a custom worker entrypoint exports Durable Object classes alongside prerendered pages. The prerender worker no longer inherits durable_objects, migrations, or workflows from the entry worker config.

  • Updated dependencies []:

    • @astrojs/underscore-redirects@1.0.4
withastro/astro

Patch Changes

  • #17899 0389640 Thanks @ematipico! - Fixes an error that prevented projects using astro:assets from starting or building
withastro/astro

Minor Changes

  • #17795 15e2deb Thanks @matthewp! - Adds concurrent rendering support for experimental.incrementalBuild, including when using @astrojs/cloudflare

    Incremental builds no longer disable caching when build.concurrency is greater than 1. Projects that set build.concurrency: 1 to keep the cache enabled can remove that workaround. Cloudflare builds also reduce serialization overhead for large prerendered pages.

  • #17887 35aa62e Thanks @matthewp! - Adds a Cloudflare finalize() response handler for custom request handlers

    Call finalize() to apply cookies and Cloudflare CDN cache defaults to the response from an astro/fetch pipeline:

    import { astro, FetchState } from 'astro/fetch';
    import { cf, finalize } from '@astrojs/cloudflare/fetch';
    
    export default {
      async fetch(request: Request, env: Env, context: ExecutionContext) {
        const state = new FetchState(request);
        const asset = await cf(state, env, context);
        if (asset) return asset;
    
        return finalize(state, await astro(state));
      },
    };

    The @astrojs/cloudflare/hono middleware applies these response headers automatically. Cloudflare custom entrypoints also fall back to static assets when no Astro route matches and use the default server entrypoint when prerendering through workerd.

Patch Changes

  • #17895 41b88ac Thanks @astro-factory! - Fixes cold astro dev crashes by adding astro/app/manifest and @astrojs/cloudflare/cache/provider to the optimizeDeps.include list

  • Updated dependencies []:

    • @astrojs/underscore-redirects@1.0.4
withastro/astro

Minor Changes

  • #17767 ce7c91f Thanks @astro-factory! - Adds --ignore-lock flag to astro preview, allowing multiple preview servers to run simultaneously on different ports. This is useful for E2E testing workflows (e.g., Playwright) that need to run several preview servers at once.

  • #17818 c0b6581 Thanks @florian-lefebvre! - Adds a logger parameter to image services hooks

    Custom image services now receive Astro's runtime logger as an extra argument. Messages logged with it are routed through the destination configured in logger and respect your log level, instead of being written straight to the console:

    import type { LocalImageService } from 'astro';
    
    const service: LocalImageService = {
      // ...
      async transform(inputBuffer, transform, imageConfig, logger) {
        logger.warn(`Could not optimize "${transform.src}". Passing it through unchanged.`);
        return { data: inputBuffer, format: 'png' };
      },
    };

    Astro's built-in Sharp service now uses this logger for the warnings it emits when it encounters an unexpected or unsupported source format.

  • #17818 c0b6581 Thanks @florian-lefebvre! - Adds logger to the context object passed to cache providers

    Custom cache providers now receive Astro's runtime logger on the context passed to onRequest(). Messages logged with it are routed through the destination configured in logger and respect your log level, instead of being written straight to the console:

    import type { CacheProvider } from 'astro';
    
    const provider: CacheProvider = {
      name: 'my-cache',
      async onRequest({ request, url, logger }, next) {
        logger.warn(`Skipping cache for ${url.pathname} because the response sets a cookie.`);
        return next();
      },
      // ...
    };

    Astro's built-in memoryCache() provider now uses this logger for the warnings it emits when it skips caching a response that sets cookies, and when a background revalidation fails.

Patch Changes

  • #17818 c0b6581 Thanks @florian-lefebvre! - Updates Astro's remaining internal warnings and errors to be written through the configured logger instead of directly to the console, when possible

  • #17886 e747cba Thanks @matthewp! - Fixes the memory cache provider to skip responses with Vary: Cookie or Vary: *

  • #17885 916b738 Thanks @Princesseuh! - Improves build performance for sites with a large number of pages coming from a large amount of different modules.

  • #17795 15e2deb Thanks @matthewp! - Adds concurrent rendering support for experimental.incrementalBuild, including when using @astrojs/cloudflare

    Incremental builds no longer disable caching when build.concurrency is greater than 1. Projects that set build.concurrency: 1 to keep the cache enabled can remove that workaround. Cloudflare builds also reduce serialization overhead for large prerendered pages.

  • #17879 21c34a6 Thanks @matthewp! - Fixes missing styles, links, and scripts from content collection entries rendered inside server islands

  • #17861 3193988 Thanks @ethanstoner! - Fixes i18n fallback routes being generated with a corrupted path when the locale code also appears at the start of a later path segment. A page such as src/pages/en/enterprise.astro with fallback: { es: 'en' } produced the route /es/esterprise instead of /es/enterprise, so the fallback never matched the intended URL. Only the leading locale segment is rewritten now.

withastro/astro

Patch Changes

  • #17818 c0b6581 Thanks @florian-lefebvre! - Updates the development image service to forward every argument it receives to Astro's Sharp service, including the new logger parameter
withastro/starlight

Minor Changes

  • #3572 292fb17 Thanks @HiDeoo! - Distributes package as JavaScript files with dedicated type declaration files instead of TypeScript source files.
withastro/starlight

Minor Changes

  • #3572 292fb17 Thanks @HiDeoo! - Distributes package as JavaScript files with dedicated type declaration files instead of TypeScript source files.

  • #4121 2623ae6 Thanks @delucis! - Simplifies markup for Starlight’s mobile menu toggle

    ⚠️ Potentially breaking change: If you use a theme plugin, custom styles, or component overrides targeting the MobileMenuToggle button or PageFrame components, you may need to adjust these for the new markup. The button is no longer wrapped in a <starlight-menu-button> custom element and no longer uses the aria-expanded attribute. Instead, you can use the .sl-menu-button class name to target the button and the :popover-open pseudo-class to style the menu open state specifically.

    In the following example, custom styles for the menu button are updated for the new approach:

    - starlight-menu-button button {
    + .sl-menu-button {
      color: var(--sl-color-text);
    }
    
    - starlight-menu-button[aria-expanded='true'] button {
    + .sl-menu-button:has(~ :popover-open) {
      color: var(--sl-color-text-accent-high);
    }

    See MobileMenuToggle.astro and PageFrame.astro on GitHub for the full source code of the updated components.

  • #3572 292fb17 Thanks @HiDeoo! - Removes the tagline configuration option, which was never used.

    If your configuration included a tagline option, you can safely remove it without any replacement.

  • #4134 6135f01 Thanks @HiDeoo! - Updates internal @astrojs/mdx, @astrojs/markdown-satteri, and satteri dependencies.

    ⚠️ BREAKING CHANGE: The following minimum versions are now required:

    • astro v7.2.10 or later
    • @astrojs/markdown-satteri 0.4.0 or later (if you use it)
    • @astrojs/markdown-remark 7.3.0 or later (if you use it)

    Please update Starlight and Astro together:

    npx @astrojs/upgrade
  • #4121 2623ae6 Thanks @delucis! - Refactors Starlight’s mobile menu toggle to work when JavaScript fails or is disabled

    ⚠️ BREAKING CHANGE: This release drops official support for Chromium-based browsers prior to version 116 (released August 2023), Safari-based browsers prior to version 17.0 (released September 2023), and Firefox prior to version 125 (released April 2024). You can find a list of currently supported browsers and their versions using this browserslist query.

    This change also removes the data-mobile-menu-expanded attribute, which was previously added to <body> while the mobile menu is open. If you have custom code that was depending on this attribute, you will need to update it to use a new selector to check if the mobile menu is open.

    In the following example, a custom background colour for the site header while the menu is open is updated for the new approach:

    - [data-mobile-menu-expanded] header {
    + body:has(sl-sidebar-pane:popover-open) header {
      background-color: var(--sl-color-bg);
    }
withastro/starlight

Patch Changes

  • #4167 32a5e29 Thanks @HiDeoo! - Fixes a layout issue and anchor links appearing for hidden headings, e.g. footnote headings, when markdown.headingLinks is enabled or the <AnchorHeading> component is used.

  • #4148 cdfafd8 Thanks @ematipico! - Optimizes sidebar data generation logic to speed up sites with large sidebars

withastro/astro

Patch Changes

  • Updated dependencies [f8e9458]:
    • @astrojs/internal-helpers@0.11.0
withastro/astro

Major Changes

  • #17262 f8e9458 Thanks @Princesseuh! - Moves MDX file processing to the Markdown processors.

    '@astrojs/mdx' is still required to add MDX support to your project. However, it now delegates the MDX files processing to Markdown processors.

    What should I do?

    If you haven't explicitly installed a Markdown processor, you don't need to do anything.

    Otherwise, ensure that your configured Markdown processor uses the following version:

    • @astrojs/markdown-satteri 0.4.0 or later if you use satteri()
    • @astrojs/markdown-remark 7.3.0 or later if you use unified()

Patch Changes

  • #17262 f8e9458 Thanks @Princesseuh! - Fixes .mdx files still using markdown.processor when extendMarkdownConfig is false. They now use a clean default processor instead; pass mdx({ processor }) to choose one explicitly.

  • #17262 f8e9458 Thanks @Princesseuh! - Adds a warning when the deprecated remarkPlugins, rehypePlugins, recmaPlugins and remarkRehype options are ignored because your Markdown processor does not run them. They still apply when your processor is unified(), and were previously dropped silently otherwise.

  • Updated dependencies [f8e9458, f8e9458]:

    • @astrojs/internal-helpers@0.11.0
    • @astrojs/markdown-satteri@0.4.0
withastro/astro

Minor Changes

  • #17262 f8e9458 Thanks @Princesseuh! - Adds an @astrojs/internal-helpers/mdx entrypoint with the shared helpers the Markdown processor packages use to render .mdx files.
withastro/astro

Patch Changes

  • Updated dependencies [f8e9458]:
    • @astrojs/internal-helpers@0.11.0
withastro/astro

Patch Changes

  • Updated dependencies [f8e9458]:
    • @astrojs/internal-helpers@0.11.0
withastro/astro

Minor Changes

  • #17262 f8e9458 Thanks @Princesseuh! - Adds MDX rendering to the unified() and satteri() processors.

    Both processors now compile .mdx files themselves. You still need to install @astrojs/mdx to add MDX support to your project.

Patch Changes

  • Updated dependencies [f8e9458]:
    • @astrojs/internal-helpers@0.11.0
withastro/astro

Patch Changes

  • Updated dependencies [f8e9458]:
    • @astrojs/internal-helpers@0.11.0
    • @astrojs/underscore-redirects@1.0.4
withastro/astro

Patch Changes

  • #17854 07b919f Thanks @ematipico! - Added @astrojs/prism to the list of dependencies to optimise. The dev server is now faster for sites that use Prism as code highlighter.

  • #17850 1301c37 Thanks @matthewp! - Fixes React SSR failures on the first Cloudflare dev request when JSON logging is enabled

  • Updated dependencies [f8e9458]:

    • @astrojs/internal-helpers@0.11.0
    • @astrojs/underscore-redirects@1.0.4
withastro/astro

Patch Changes

  • #17450 19dae21 Thanks @ocavue! - Updates dependency @vercel/analytics to v2. See the changelog for more details.
    Updates dependency @vercel/routing-utils to v6. See the changelog for more details.
  • Updated dependencies [f8e9458]:
    • @astrojs/internal-helpers@0.11.0
withastro/astro

Minor Changes

  • #17262 f8e9458 Thanks @Princesseuh! - Adds MDX rendering to the unified() and satteri() processors.

    Both processors now compile .mdx files themselves. You still need to install @astrojs/mdx to add MDX support to your project.

  • #17262 f8e9458 Thanks @Princesseuh! - Adds a recmaPlugins option to unified() for adding recma (estree/JSX) plugins to the MDX compiler.

Patch Changes

  • Updated dependencies [f8e9458]:
    • @astrojs/internal-helpers@0.11.0
withastro/astro

Patch Changes

  • #17262 f8e9458 Thanks @Princesseuh! - Fixes @astrojs/markdown-remark being pinned to an exact version.

  • #17874 10c7e63 Thanks @astro-factory! - Fixes SSR manifest placeholder not being replaced when the server build is minified, which caused a runtime Invalid URL crash at server boot

  • #17869 2548abf Thanks @ematipico! - Fixes a case where the logger was improperly initialized at runtime in dev.

  • #17878 76eff3d Thanks @ematipico! - Fixes browser heuristic caching for cached responses that include Last-Modified or ETag validators

  • #17833 413a6e7 Thanks @astro-factory! - Fixes prerender conflict warnings to correctly identify the route that first rendered a duplicate pathname, instead of misattributing the conflict to an unrelated route that merely matches the URL pattern

  • #17872 f7191cc Thanks @jx-grxf! - Fixes Markdown images in content collections rendering an empty srcset attribute when no responsive candidates are generated.

  • #17755 157c500 Thanks @matthewp! - Fixes a bug where editing a content collection entry during astro dev on Windows kept serving stale content until the dev server was restarted. The data store now notifies the dev server directly after each write instead of relying only on the file watcher, which can miss the atomic rename that commits the write on some platforms.

  • Updated dependencies [f8e9458, f8e9458]:

    • @astrojs/internal-helpers@0.11.0
    • @astrojs/markdown-satteri@0.4.0
withastro/astro

Patch Changes

  • Updated dependencies [f8e9458]:
    • @astrojs/internal-helpers@0.11.0
withastro/astro

Patch Changes

  • #17851 52d3f56 Thanks @astro-factory! - Fixes the sitemap outputting a URL with an empty path for the homepage (e.g. https://example.com instead of https://example.com/) when trailingSlash is set to "never" or build.format is set to "file"
withastro/astro

Patch Changes

  • #17715 a51c533 Thanks @wakqasahmed! - Fixes astro check silently skipping .astro files that are only reachable through a TypeScript project reference (a tsconfig referenced via references in another tsconfig). These files are now checked and reported like any other .astro file.
withastro/starlight

Patch Changes

withastro/astro

Patch Changes

  • #17792 6a46994 Thanks @matthewp! - Fixes syntax highlighting for multiline <script> and <style> tags with a lang or type attribute
withastro/astro

Patch Changes

  • #17819 633855b Thanks @matthewp! - Updates generated and default Cloudflare compatibility_date values to match the installed runtime and requires Wrangler ^4.125.0

  • #17675 44d384c Thanks @danielmlr! - Adds the Worker version to the cache metadata of cached responses when the CF_VERSION_METADATA binding is configured. Responses carry an astro-version:<id> cache tag for version-specific purging, and responses that already send Last-Modified get a weak ETag that folds the version in. Conditional revalidation then returns fresh content after a deploy that changes rendered output but not content — most commonly the hashed asset URLs in server-rendered HTML. Without the binding, nothing changes.

  • Updated dependencies []:

    • @astrojs/underscore-redirects@1.0.4
withastro/astro

Patch Changes

  • #17820 89e5349 Thanks @matthewp! - Fixes source.organizeImports leaking generated Astro component exports into .astro files
withastro/astro

Patch Changes

  • #17794 dd29ce8 Thanks @astro-factory! - Fixes a bug where @vercel/nft file tracing silently dropped all dependency files when outDir was configured outside root, causing deployed functions to crash with ERR_MODULE_NOT_FOUND
withastro/astro

Patch Changes

  • #17766 0762a83 Thanks @HiDeoo! - Fixes Sätteri processor option types to accept all plugin entries supported by Sätteri v0.10.3.

  • #17314 0c99615 Thanks @barry166! - Fixes the editor tooltip for smartPunctuation claiming it defaults to false when Astro enables it by default.

withastro/astro

Patch Changes

  • #17752 e362d4c Thanks @matthewp! - Fixes generated Netlify Image CDN allowlists to reject remote URLs that contain an allowed image origin only within their path or query string

  • Updated dependencies []:

    • @astrojs/underscore-redirects@1.0.4
withastro/astro

Patch Changes

  • #17756 f88c875 Thanks @astro-factory! - Fixes npm install warnings on npm v11+ about esbuild's install scripts not being covered by allowScripts. Adds ensureNpmScriptsAllowed() to pre-approve esbuild in package.json before running npm install, matching the existing pnpm v11 compatibility fix.
withastro/astro

Patch Changes

  • #17757 660991c Thanks @astro-factory! - Fixes build errors showing wrong file location, missing line:col, and misleading hints when a plugin error (e.g. from MDX) is wrapped by Vite's build error

  • #17766 0762a83 Thanks @HiDeoo! - Fixes Sätteri processor option types to accept all plugin entries supported by Sätteri v0.10.3.

withastro/astro

Patch Changes

  • #17791 426eaa1 Thanks @matthewp! - Fixes missing Vue template auto-import completions when the Astro extension loads first
withastro/astro

Patch Changes

  • Updated dependencies [05763a0]:
    • @astrojs/internal-helpers@0.10.4
withastro/astro

Patch Changes

withastro/astro

Patch Changes

  • Updated dependencies [05763a0]:
    • @astrojs/internal-helpers@0.10.4
withastro/astro

Patch Changes

  • Updated dependencies [05763a0]:
    • @astrojs/internal-helpers@0.10.4
    • @astrojs/underscore-redirects@1.0.4
withastro/astro

Patch Changes

  • #17687 0a22ff5 Thanks @asmyshlyaev177! - Fixes middlewareMode: 'edge' not running your middleware when isr is also enabled

    Previously, enabling both options deployed the edge middleware but never reached it: requests went straight to the ISR function, which skips rendering entirely on a cache hit. Middleware now runs at the edge for ISR-backed routes before the cached response is served, and query strings are preserved when it forwards the request.

  • Updated dependencies [05763a0]:

    • @astrojs/internal-helpers@0.10.4
withastro/astro

Patch Changes

  • #17731 bc171af Thanks @Princesseuh! - Updates Sätteri processor to v0.10.3. See its changelog for details on bugs fixed and features added.

  • Updated dependencies [05763a0]:

    • @astrojs/internal-helpers@0.10.4
    • @astrojs/markdown-remark@7.2.4
withastro/astro

Patch Changes

  • Updated dependencies [05763a0]:
    • @astrojs/internal-helpers@0.10.4
withastro/astro

Patch Changes

  • Updated dependencies [05763a0]:
    • @astrojs/internal-helpers@0.10.4
withastro/astro

Patch Changes

  • #17701 05763a0 Thanks @matthewp! - Fixes base path stripping to respect path-segment boundaries. With a configured base such as /docs, a request like /docs-archive/page is no longer treated as being under the base, so routing and context.url.pathname now agree on the same pathname.
withastro/astro

Patch Changes

  • Updated dependencies [05763a0]:
    • @astrojs/internal-helpers@0.10.4
withastro/astro

Patch Changes

  • Updated dependencies [8c193f6]:
    • @astrojs/internal-helpers@0.10.3
withastro/astro

Patch Changes

  • Updated dependencies [8c193f6]:
    • @astrojs/internal-helpers@0.10.3
withastro/astro

Patch Changes

  • Updated dependencies [8c193f6]:
    • @astrojs/internal-helpers@0.10.3
withastro/astro

Patch Changes

  • Updated dependencies [8c193f6]:
    • @astrojs/internal-helpers@0.10.3
    • @astrojs/markdown-remark@7.2.3
withastro/astro

Patch Changes

  • #17680 ce9f1da Thanks @astrobot-houston! - Fixes server islands returning 404 responses in Vercel deployments using output: "static"

  • Updated dependencies [8c193f6]:

    • @astrojs/internal-helpers@0.10.3
withastro/astro

Patch Changes

  • Updated dependencies [8c193f6]:
    • @astrojs/internal-helpers@0.10.3
    • @astrojs/underscore-redirects@1.0.4
withastro/astro

Patch Changes

  • #17636 51723b1 Thanks @matthewp! - Updates the adapter to wait for the configured log destination through Astro's new app.getLogger() API. This release requires Astro 7.2.1 or later.

  • Updated dependencies [8c193f6]:

    • @astrojs/internal-helpers@0.10.3
withastro/astro

Patch Changes

  • Updated dependencies [8c193f6]:
    • @astrojs/internal-helpers@0.10.3
withastro/astro

Patch Changes

  • #17668 bef9db5 Thanks @lazerg! - Fixes Astro's ambient types leaking into unrelated TypeScript projects. In a monorepo with hoisted node_modules, the plugin found the shared astro install from any project and injected env.d.ts and astro-jsx.d.ts into it, which pulled @types/node into projects that never asked for it. The plugin now only injects those types when the project actually depends on astro or has an astro.config.* file.
withastro/astro

Patch Changes

  • #17696 8c193f6 Thanks @astrobot-houston! - Fixes incremental build cache invalidation caused by Shiki mutating the langAlias config object when loading languages
withastro/astro

Patch Changes

  • Updated dependencies [8c193f6]:
    • @astrojs/internal-helpers@0.10.3
withastro/astro

Patch Changes

  • #17400 c1cf110 Thanks @tianrking! - Return a 404 instead of a 500 for unknown parameters that match a prerendered dynamic endpoint.
withastro/astro

Patch Changes

  • #17618 2630631 Thanks @lazerg! - Fixes the missing "Add all missing imports" and "Add import from" quick fixes for Astro components
withastro/astro

Patch Changes

  • #17620 0891ac9 Thanks @astrobot-houston! - Fixes dynamic redirect routes to honour user-configured status codes instead of hardcoding 301. Previously, a redirect configured with { destination: '/new', status: 302 } would be emitted as 301 in the _redirects file when the route was dynamic.
withastro/astro

Patch Changes

  • #17584 5462b81 Thanks @astrobot-houston! - Fixes a build crash when a Solid island imports a package that ships pre-compiled browser artifacts via the exports.solid condition (e.g. @kobalte/core). Solid ecosystem packages are now bundled in non-client environments so that Vite resolves the correct export condition during prerendering.
withastro/astro

Patch Changes

withastro/astro

Patch Changes

  • #17579 3ea55ce Thanks @bluwy! - Supports the devEngines field in package.json when detecting the package manager for install commands

Last fetched:  | Scheduled refresh: Every Saturday

See Customizing GitHub Activity Pages to configure your own

Inspired by releases.antfu.me