Skip to content

fix(deps): update astro monorepo (major) - #527

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

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

Conversation

@renovate

@renovate renovate Bot commented Jun 22, 2026

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Change Age Confidence
@astrojs/cloudflare (source) ^13.5.0^14.0.0 age confidence
@astrojs/react (source) ^5.0.4^6.0.0 age confidence

Release Notes

withastro/astro (@​astrojs/cloudflare)

v14.2.1

Compare Source

Patch Changes
  • #​17627 ba6a9f6 Thanks @​astrobot-houston! - Fixes the astro peer dependency range from ^7.0.0 to ^7.2.0. The adapter imports symbols (beginContentEntryCollection, beginImageCollection, endContentEntryCollection, endImageCollection) from astro/app that were added in Astro 7.2.0, so earlier versions fail at build time with a MISSING_EXPORT error.

  • Updated dependencies [0891ac9]:

v14.2.0

Compare Source

Minor Changes
  • #​16194 2a59663 Thanks @​Daedalus-Icarus! - Adds opt-in build-time image optimization for the cloudflare-binding image service.

    When enabled, the Cloudflare IMAGES binding transforms static images in the workerd prerender environment, and the optimized bytes are written directly to the output directory. If the binding fails, it falls back to Sharp.

    To opt in, use the compound configuration form:

    export default defineConfig({
      adapter: cloudflare({
        imageService: { build: 'cloudflare-binding', runtime: 'cloudflare-binding' },
      }),
    });

    The string shorthand imageService: 'cloudflare-binding' preserves the current runtime-only behavior and is unaffected.

  • #​16871 90c98ae Thanks @​adamchal! - When session: false is set in astro.config, the adapter no longer auto-wires the Cloudflare KV session driver. Combined with the matching astro change, this lets the session runtime tree-shake out of the Worker bundle.

  • #​17084 961bbe5 Thanks @​matthewp! - Supports Astro's experimental incremental static builds. When experimental.incrementalBuild is enabled, the adapter skips unchanged pages between builds.

Patch Changes
  • #​17576 0a79753 Thanks @​alexanderniebuhr! - Fixes /_image returning 500 in dev mode when using imageService: 'custom'. Astro's default dev image endpoint imports vite and node:fs, which cannot be loaded inside workerd. The custom and fallback cases now use the generic fetch-based endpoint in dev, matching the other image service modes. A user-configured image.endpoint is left untouched.

    Additionally, a dev-time warning is now logged when imageService: 'custom' resolves to the Sharp service (including when no image.service is configured), since Sharp's native binding cannot run inside workerd in dev or production.

  • #​17481 0c32649 Thanks @​ondraulehla! - Fixes a crash on /_image cache hits when the Cloudflare cache provider is enabled. Responses served from the Workers Cache API have immutable headers, and the request handler crashed with "Can't modify immutable headers" when applying its default Cloudflare-CDN-Cache-Control: no-store header to them. The handler now rebuilds the response with mutable headers when needed.

  • #​17347 ce83c39 Thanks @​astrobot-houston! - Fixes imageService: 'compile' producing unoptimized images when prerenderEnvironment is set to 'node'

  • #​17594 2b8915a Thanks @​astrobot-houston! - Fixes a type-checking error when using app.use(cf()) from @astrojs/cloudflare/hono in projects with wrangler types-generated ExecutionContext declarations

  • Updated dependencies []:

v14.1.7

Compare Source

Patch Changes

v14.1.6

Compare Source

Patch Changes

v14.1.5

Compare Source

Patch Changes

v14.1.4

Compare Source

Patch Changes

v14.1.3

Compare Source

Patch Changes

v14.1.2

Compare Source

Patch Changes
  • #​17323 4298883 Thanks @​ematipico! - Fixes build-time image optimization ignoring a custom image service registered by an integration

    Previously, when using imageService: 'compile' or imageService: 'custom', a custom image service was only respected if it was set directly in the image.service option of astro.config. If an integration registered the service instead, images were silently optimized with the default Sharp service at build time. A custom image service now transforms your images at build time no matter how it was configured.

  • #​17323 4298883 Thanks @​ematipico! - Prebundles astro/components and the <ClientRouter /> transition runtime modules in the dev server environment so pages using them no longer trigger a mid-session dep optimizer reload, which caused React "Invalid hook call" errors in islands on the first request after a cold cache

  • #​17323 4298883 Thanks @​ematipico! - Fixes an issue where vars weren't available at build time. Now the adapter loads vars from the Wrangler config so astro:env public variables resolve at build time

  • Updated dependencies []:

v14.1.1

Compare Source

Patch Changes

v14.1.0

Compare Source

Minor Changes
  • #​17099 fdab7ce Thanks @​adamchal! - Adds configured image service support with the compile and custom options.

    The Cloudflare adapter supports various options that affect how images are processed for both pre-rendered and on-demand routes:

    • Setting imageService: 'compile' now ensures it is used for pre-rendered routes. When no custom image service is defined, the behavior remains unchanged.
    • With imageService: 'custom', assets are now processed at build time for pre-rendered routes. If you have configured an image service, it will be bundled to handle images at runtime; otherwise, the behavior remains unchanged.
    • The other imageService options remain unchanged.

    Learn more about the image service options available in the Cloudflare adapter guide.

Patch Changes

v14.0.2

Compare Source

Patch Changes
  • #​17049 ffceaa2 Thanks @​astrobot-houston! - Fixes prerender errors being silently swallowed when pages throw during rendering in workerd, causing astro build to exit 0 and emit truncated HTML. The response body is now fully buffered inside workerd before being sent back to the build process, so streaming errors are caught and surfaced as build failures with clear error messages.

  • Updated dependencies []:

v14.0.1

Compare Source

Patch Changes

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 '@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 '@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

v13.5.1

Compare Source

Patch Changes
  • #​16707 2ff3f8f Thanks @​helio-cf! - Fixes remoteBindings: false being ignored during astro build. The Cloudflare prerenderer's internal Vite preview server now receives the user's adapter options, so remote-flagged bindings (e.g. a D1 database with remote: true in wrangler.toml) are emulated locally during build, matching the existing astro dev behavior.

  • #​16652 98c32cc Thanks @​greatjourney589! - Fixes user-declared KV namespace bindings being duplicated in the generated dist/server/wrangler.json, which caused wrangler validation to fail with " assigned to multiple KV Namespace bindings." The Astro Cloudflare config customizer now returns only the auto-injected SESSION binding and lets @cloudflare/vite-plugin merge it with the user's wrangler config, instead of pre-merging the user's bindings into the output.

  • #​16272 4f9521e Thanks @​barry3406! - Fixes .astro files failing with No matching export in "html:..." for import "default" when default-imported from a .ts file

  • #​15723 9256345 Thanks @​rururux! - Fixes an issue where the <Prism /> component failed to work in Cloudflare Workers.

  • Updated dependencies [d365c97]:

withastro/astro (@​astrojs/react)

v6.0.2

Compare Source

Patch Changes

v6.0.1

Compare Source

Patch Changes

v6.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 '@astrojs/react';
    + import { getContainerRenderer } from '@astrojs/react/container-renderer';

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

Patch Changes

v5.0.7

Compare Source

Patch Changes

v5.0.6

Compare Source

Patch Changes

Configuration

📅 Schedule: (UTC)

  • 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.

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Jun 22, 2026

Copy link
Copy Markdown

Deploying portfolio with  Cloudflare Pages  Cloudflare Pages

Latest commit: b2c43c5
Status:🚫  Build failed.

View logs

@renovate
renovate Bot force-pushed the renovate/major-astro-monorepo branch 2 times, most recently from d8b0acc to cd449cf Compare June 25, 2026 19:05
@renovate
renovate Bot force-pushed the renovate/major-astro-monorepo branch 6 times, most recently from 9a892df to b2d8334 Compare July 2, 2026 20:10
@renovate
renovate Bot force-pushed the renovate/major-astro-monorepo branch 4 times, most recently from 8274aee to 3e29714 Compare July 12, 2026 22:10
@renovate
renovate Bot force-pushed the renovate/major-astro-monorepo branch 5 times, most recently from 1f2dca6 to 93718ac Compare July 21, 2026 07:50
@renovate
renovate Bot force-pushed the renovate/major-astro-monorepo branch 5 times, most recently from c4a2d8a to 6cd9ad6 Compare July 30, 2026 20:19
@renovate
renovate Bot force-pushed the renovate/major-astro-monorepo branch from 6cd9ad6 to 45800f6 Compare August 6, 2026 17:45
@renovate
renovate Bot force-pushed the renovate/major-astro-monorepo branch from 45800f6 to b2c43c5 Compare August 11, 2026 20:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants