Skip to content

fix(deps): update astro monorepo (major)#20

Open
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/major-astro-monorepo
Open

fix(deps): update astro monorepo (major)#20
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/major-astro-monorepo

Conversation

@renovate

@renovate renovate Bot commented May 30, 2026

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Change Age Confidence
@astrojs/cloudflare (source) ^13.5.1^14.0.0 age confidence
@astrojs/mdx (source) ^5.0.4^7.0.0 age confidence

Release Notes

withastro/astro (@​astrojs/cloudflare)

v14.0.0

Compare Source

Major Changes
Minor Changes
  • #​16335 9a53f77 Thanks @​ascorbic! - Adds an opt-in CDN cache provider for Astro route caching on Cloudflare Workers

    [!WARNING]
    This provider requires the Cloudflare Workers Cache feature, which is currently in private beta. It is opt-in: nothing changes unless you import cacheCloudflare() and set it as your provider. But without beta access it does not work and should not be used. Cloudflare Workers run in front of the cache, so cached responses are never served, and calling cache.invalidate() throws an error.

Setup

Import cacheCloudflare() from @astrojs/cloudflare/cache and set it as your cache provider:

import { defineConfig } from 'astro/config';
import cloudflare from '@​astrojs/cloudflare';
import { cacheCloudflare } from '@​astrojs/cloudflare/cache';

export default defineConfig({
  adapter: cloudflare(),
  cache: {
    provider: cacheCloudflare(),
  },
});

The adapter automatically enables the Worker caching layer when a Cloudflare cache provider is configured. No manual wrangler.jsonc changes are needed.

Caching responses

Use Astro.cache.set() in your pages and API routes to cache responses. The provider sets Cloudflare-CDN-Cache-Control and Cache-Tag headers, which are read by Cloudflare's built-in caching layer. Cache hits bypass Worker execution entirely, meaning your Worker is not invoked for cached responses.

---
Astro.cache.set({ maxAge: 300, tags: ['products'] });
const data = await fetchProducts();
---

<ProductList items={data} />

You can also set cache rules for groups of routes in your config:

cache: { provider: cacheCloudflare() },
routeRules: {
  '/products/[...slug]': { maxAge: 3600, tags: ['products'] },
  '/api/[...path]': { maxAge: 60, swr: 600 },
},
Invalidation

Purge cached responses by tag or path from any API route or server endpoint:

// src/pages/api/purge.ts
export async function POST({ request, cache }) {
  await cache.invalidate({ tags: ['products'] });
  return new Response('Purged');
}

// Path-based invalidation (implemented via an auto-generated path tag)
await cache.invalidate({ path: '/products/123' });

Both tag-based and path-based invalidation are supported.

Patch Changes

v13.7.0

Compare Source

Minor Changes
  • #​16571 d4b0cd1 Thanks @​MA2153! - Sets immutable cache headers for static assets

    Static assets under _astro can be cached to improve performance. The adapter now automatically injects a Cache-Control header at build time when possible.

Patch Changes
  • #​16968 7a5c001 Thanks @​astrobot-houston! - Fixes a build crash when using experimental.advancedRouting with a custom fetchFile that statically imports cf from @astrojs/cloudflare/fetch. The circular dependency between @astrojs/cloudflare/fetch and astro/app/entrypoint caused createApp or createGetEnv to be undefined at module evaluation time. Initialization is now deferred to the first cf() call, breaking the cycle.

  • Updated dependencies []:

v13.6.1

Compare Source

Patch Changes

v13.6.0

Compare Source

Minor Changes
  • #​16729 01aa164 Thanks @​matthewp! - Adds @astrojs/cloudflare/fetch and @astrojs/cloudflare/hono exports for composing Cloudflare-specific setup with Astro's advanced routing handlers.
@astrojs/cloudflare/fetch

For use with astro/fetch in a custom fetch handler:

import { astro, FetchState } from 'astro/fetch';
import { cf } from '@&#8203;astrojs/cloudflare/fetch';

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

For use with astro/hono as Hono middleware:

import { Hono } from 'hono';
import { actions, middleware, pages, i18n } from 'astro/hono';
import { cf } from '@&#8203;astrojs/cloudflare/hono';

const app = new Hono<{ Bindings: Env }>();

app.use(cf());
app.use(actions());
app.use(middleware());
app.use(pages());
app.use(i18n());

export default app;

Both handlers configure SESSION KV bindings, static asset serving via the ASSETS binding, locals.cfContext, client address, waitUntil, and prerendered error page fetch.

Patch Changes
  • #​16868 f9bae95 Thanks @​helio-cf! - Fixes user options passed to cloudflare({...}) (remoteBindings, inspectorPort, persistState, configPath, auxiliaryWorkers) being silently ignored during astro preview. The adapter now resolves the full @cloudflare/vite-plugin config once at integration setup time and reuses that single resolved value across the dev/build plugin, the prerenderer's preview server, and the astro preview entrypoint, so user options can no longer be dropped at one of the call sites.

  • #​16468 4cff3a1 Thanks @​matthewp! - Fixes static Cloudflare builds with server islands or image endpoints that failed at preview time due to mismatched output directories.

  • Updated dependencies [f732f3c]:

v13.5.5

Compare Source

Patch Changes

v13.5.4

Compare Source

Patch Changes
  • #​16769 428cb1b Thanks @​astrobot-houston! - Forwards user-provided optimizeDeps settings (exclude, include, esbuildOptions.loader) to SSR/prerender environments. Previously, top-level vite.optimizeDeps in the Astro config was silently ignored for server environments because Vite 6 scopes it to client-only and the adapter's configEnvironment hook did not forward it. This caused packages with non-standard file types (e.g. .data files) to fail during dev-mode dependency optimization with errors like "No loader is configured for '.data' files".

  • Updated dependencies []:

v13.5.3

Compare Source

Patch Changes

v13.5.2

Compare Source

Patch Changes
withastro/astro (@​astrojs/mdx)

v7.0.0

Compare Source

Major Changes
Minor Changes
  • #​17093 4585fe5 Thanks @​Princesseuh! - Replaces the import entrypoint of getContainerRenderer()

    A new container-renderer entrypoint exporting getContainerRenderer() has been added to the following integrations: React, Preact, Svelte, SolidJS, Vue, and MDX. This prevents bundlers from trying to bundle unrelated exports from the package root when only the Container API is used.

    If you are using the Container API, update your import statements to use the new entrypoint. The following example updates the getContainerRenderer() import for React:

    - import { getContainerRenderer } from '@&#8203;astrojs/react';
    + import { getContainerRenderer } from '@&#8203;astrojs/react/container-renderer';

    Importing getContainerRenderer() from the package root still works, but is now deprecated and logs a warning.

  • #​17129 ff7b718 Thanks @​Princesseuh! - Adds support for modifying frontmatter programmatically with the default Markdown processor.

    A Sätteri plugin can now read and mutate ctx.data.astro.frontmatter, and Astro uses the result as the page's frontmatter, in both Markdown and MDX.

Patch Changes

v6.0.3

Compare Source

Patch Changes
  • #​16969 4a31f90 Thanks @​Princesseuh! - Adds support for Prism syntax highlighting to the Sätteri Markdown and MDX processors. Setting markdown.syntaxHighlight to 'prism' now highlights your code blocks with Prism.

    // astro.config.mjs
    import { satteri } from '@&#8203;astrojs/markdown-satteri';
    
    export default defineConfig({
      markdown: {
        processor: satteri(),
        syntaxHighlight: 'prism',
      },
    });

v6.0.2

Patch Changes

v6.0.1

Patch Changes

v6.0.0

Compare Source

Major Changes
  • #​16848 f732f3c Thanks @​Princesseuh! - Adds a new markdown.processor configuration option, allowing you to choose an alternative Markdown processor.

    Websites with many Markdown/MDX files tend to be slow to build because the unified ecosystem (e.g., remark, rehype) is slow to process. This feature introduces the ability to replace this part of the build pipeline with another processor.

    The default processor is unified(). This means that existing configurations remain unchanged and your remark/rehype plugins continue to work.

    // astro.config.mjs
    import { defineConfig } from 'astro/config';
    import { unified } from '@&#8203;astrojs/markdown-remark';
    import remarkToc from 'remark-toc';
    
    export default defineConfig({
      markdown: {
        processor: unified({
          remarkPlugins: [remarkToc],
        }),
      },
    });

    In addition to this new configuration option, Astro provides a new alternative processor based on Rust: Sätteri. You can choose to use it now by installing @astrojs/markdown-satteri, importing the satteri() processor, and adapting your existing configuration:

    // astro.config.mjs
    import { defineConfig } from 'astro/config';
    import { satteri } from '@&#8203;astrojs/markdown-satteri';
    
    export default defineConfig({
      markdown: {
        processor: satteri({
          features: { directive: true },
        }),
      },
    });

    This processor does not support the remark and rehype plugins. This means you may need to convert them to MDAST or HAST plugins to retain your current functionality.

    The existing top-level markdown.remarkPlugins, markdown.rehypePlugins, markdown.remarkRehype, markdown.gfm, and markdown.smartypants options still work, but are now deprecated and will be removed in a future major update. The matching remarkPlugins, rehypePlugins, and remarkRehype options on the MDX integration are also deprecated for the same reason. To anticipate their removal, move them onto unified({...}) (or your preferred plugin processor) :

    // astro.config.mjs
    import { defineConfig } from 'astro/config';
    import remarkToc from 'remark-toc';
    import rehypeSlug from 'rehype-slug';
    + import { unified } from '@&#8203;astrojs/markdown-remark';
    
    export default defineConfig({
      markdown: {
    +    processor: unified({
    +      remarkPlugins: [remarkToc],
    +      rehypePlugins: [rehypeSlug],
    +      remarkRehype: true,
    +      gfm: true,
    +      smartypants: true,
    +    }),
    -    remarkPlugins: [remarkToc],
    -    rehypePlugins: [rehypeSlug],
    -    remarkRehype: true,
    -    gfm: true,
    -    smartypants: true,
      },
    });

    For more information on enabling and using this feature in your project, see our Markdown guide. To give feedback on this new Rust processor, see the Native Markdown / MDX parsing and processing RFC.

Minor Changes
  • #​16848 f732f3c Thanks @​Princesseuh! - Adds support for using @astrojs/markdown-satteri to parse .mdx files.

    // astro.config.mjs
    import { defineConfig } from 'astro/config';
    import mdx from '@&#8203;astrojs/mdx';
    import { satteri } from '@&#8203;astrojs/markdown-satteri';
    
    export default defineConfig({
      markdown: {
        processor: satteri({
          features: { directive: true },
        }),
      },
      integrations: [mdx()],
    });

    Note that the recmaPlugins option is not supported when using Sätteri as your MDX processor. If you would like to use Sätteri for Markdown files, but still use Unified for MDX, you can pass a different Markdown processor to the MDX integration:

    // astro.config.mjs
    import { defineConfig } from 'astro/config';
    import mdx from '@&#8203;astrojs/mdx';
    import { satteri } from '@&#8203;astrojs/markdown-satteri';
    import { unified } from '@&#8203;astrojs/markdown-remark';
    import myPlugin from './my-recma-plugin.js';
    
    export default defineConfig({
      markdown: {
        processor: satteri({
          features: { directive: true },
        }),
      },
      integrations: [
        mdx({
          recmaPlugins: [myPlugin],
          processor: unified(),
        }),
      ],
    });
Patch Changes

Configuration

📅 Schedule: (in timezone Asia/Tokyo)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate Bot requested a review from phanect as a code owner May 30, 2026 20:17
@renovate renovate Bot added the deps label May 30, 2026
@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented May 30, 2026

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Updated (UTC)
❌ Deployment failed
View logs
guildkit-website 64d6272 Jun 25 2026, 04:03 PM

@renovate renovate Bot force-pushed the renovate/major-astro-monorepo branch from 3ae578a to 37ab93e Compare June 1, 2026 17:04
@renovate renovate Bot changed the title chore(deps): update dependency @astrojs/mdx to v6 chore(deps): update astro monorepo to v6 Jun 2, 2026
@renovate renovate Bot force-pushed the renovate/major-astro-monorepo branch 4 times, most recently from b7062a4 to ce437d3 Compare June 9, 2026 17:56
@renovate renovate Bot changed the title chore(deps): update astro monorepo to v6 chore(deps): update astro monorepo (major) Jun 22, 2026
@renovate renovate Bot force-pushed the renovate/major-astro-monorepo branch from ce437d3 to 64d6272 Compare June 25, 2026 16:03
@renovate renovate Bot changed the title chore(deps): update astro monorepo (major) fix(deps): update astro monorepo (major) Jun 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants