#175845462b81 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.
#172700142964 Thanks @FrancoKaddour! - Fix @astrojs/solid-js incorrectly claiming Svelte 5 components compiled with the newer $$renderer prop (instead of the legacy $$payload). Projects mixing Solid and Svelte could see Svelte components silently rendered as empty strings by the Solid renderer.
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
#17027241250b Thanks @ocavue! - Triggers beta prereleases for packages that are still on alpha
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.
#147153d55c5d Thanks @ascorbic! - Adds support for client hydration in getContainerRenderer()
The getContainerRenderer() function is exported by Astro framework integrations to simplify the process of rendering framework components when using the experimental Container API inside a Vite or Vitest environment. This update adds the client hydration entrypoint to the returned object, enabling client-side interactivity for components rendered using this function. Previously this required users to manually call container.addClientRenderer() with the appropriate client renderer entrypoint.
Node.js 18 has now reached end-of-life and should not be used. For now, Astro will continue to support Node.js 18.20.8, which is the final LTS release of Node.js 18, as well as Node.js 20 and Node.js 22 or later. We will drop support for Node.js 18 in a future release, so we recommend upgrading to Node.js 22 as soon as possible. See Astroβs Node.js support policy for more details.
:warning: Important note for users of Cloudflare Pages: The current build image for Cloudflare Pages uses Node.js 18.17.1 by default, which is no longer supported by Astro. If you are using Cloudflare Pages you should override the default Node.js version to Node.js 22. This does not affect users of Cloudflare Workers, which uses Node.js 22 by default.