2e4d110a876efc4ddcdeda403259317d1cbb742d
Thanks @marvin-j97! - Upgrades vite-plugin-solid
to ^2.8.0
37021044dd4382a9b214f89b7c221bf1c93f3e7d
Thanks @patdx! - Render SolidJS components using renderToStringAsync
.This changes the renderer of SolidJS components from renderToString
to renderToStringAsync
. It also injects the actual SolidJS hydration script generated by generateHydrationScript
, so that Suspense
, ErrorBoundary
and similar components can be hydrated correctly.
The server render phase will now wait for Suspense boundaries to resolve instead of always rendering the Suspense fallback.
If you use the APIs createResource
or lazy
, their functionalities will now be executed on the server side, not just the client side.
This increases the flexibility of the SolidJS integration. Server-side components can now safely fetch remote data, call async Astro server functions like getImage()
or load other components dynamically. Even server-only components that do not hydrate in the browser will benefit.
It is very unlikely that a server-only component would have used the Suspense feature until now, so this should not be a breaking change for server-only components.
This could be a breaking change for components that meet the following conditions:
Suspense
, lazy
or createResource
, andclient:load
client:idle
client:visible
client:media
These components will now first try to resolve the Suspense boundaries on the server side instead of the client side.
If you do not want Suspense boundaries to be resolved on the server (for example, if you are using createResource to do an HTTP fetch that relies on a browser-side cookie), you may consider:
client:only
to skip server side rendering completelyonMount()
to detect server mode and render a server fallback without using Suspense.#9482 72b26daf694b213918f02d0fcbf90ab5b7ebc31f
Thanks @natemoo-re! - Improves compatability with the Qwik adapter
#9479 1baf0b0d3cbd0564954c2366a7278794fad6726e
Thanks @sarah11918! - Updates README
6f60da805
Thanks @ematipico! - Add provenance statement when publishing the library from CIa525d5db1
Thanks @ryansolid! - Fix hydration in Solid renderer#8188 d0679a666
Thanks @ematipico! - Remove support for Node 16. The lowest supported version by Astro and all integrations is now v18.14.1. As a reminder, Node 16 will be deprecated on the 11th September 2023.
#7924 519a1c4e8
Thanks @matthewp! - New include
and exclude
config options
The Solid integration now has new include
and exclude
config options. Use these if you want to use Solid alongside another JSX framework; include specifies files to be compiled for Solid and exclude
does the opposite.
1f58a7a1b
Thanks @natemoo-re! - Automatically unmount islands when astro:unmount
is fired1f58a7a1b
Thanks @natemoo-re! - Automatically unmount islands when astro:unmount
is fired5b4b78245
Thanks @natemoo-re! - Update babel-preset-solid
dependency to ^1.7.7
The Solid integration now has new include
and exclude
config options. Use these if you want to use Solid alongside another JSX framework; include specifies files to be compiled for Solid and exclude
does the opposite.
1eae2e3f7
Thanks @Princesseuh! - Remove support for Node 16. The lowest supported version by Astro and all integrations is now v18.14.1. As a reminder, Node 16 will be deprecated on the 11th September 2023.5b4b78245
Thanks @natemoo-re! - Update babel-preset-solid
dependency to ^1.7.7
This change introduces a new flag that renderers can add called supportsAstroStaticSlot
. What this does is let Astro know that the render is sending <astro-static-slot>
as placeholder values for static (non-hydrated) slots which Astro will then remove.
This change is completely backwards compatible, but fixes bugs caused by combining ssr-only and client-side framework components like so:
<Component>
<div>
<Component client:load>
<span>Nested</span>
</Component>
</div>
</Component>
#7101 2994bc52d
Thanks @bluwy! - Always build edge/worker runtime with Vite webworker
SSR target
#7104 826e02890
Thanks @bluwy! - Specify "files"
field to only publish necessary files
b6797fc85
Thanks @matthewp! - Allow Solid ecosystem packages to not need special export map configuration. By default Solid is now treated as an external package in SSR, so any other dependent packages will receive the same instance.afbbc4d5b
Thanks @Princesseuh! - Updated compilation settings to disable downlevelling for Node 148c80e78dd
Thanks @yasserhennawi! - Bump vitefu for peerDep warning with Vite 41f92d64ea
Thanks @Princesseuh! - Remove support for Node 14. Minimum supported Node version is now >=16.12.01f92d64ea
`](https://github.com/withastro/astro/commit/1f92d64ea3
) Thanks [@Princesseuh](https://github.com/Princesseuh)! - Remove support for Node 14. Minimum supported Node version is now >=16.12.0
2dc582ac5
Thanks @AirBorne04! - adjusting the build settings for cloudflare (reverting back to platform browser over neutral)
adjusting the ssr settings for solidjs (to build for node)04ad44563
- > Astro v1.0 is out! Read the official announcement post.No breaking changes. This package is now officially stable and compatible with astro@1.0.0
!
b48767985
Thanks @ran-dall! - Rollback supported node@16
version. Minimum versions are now node@14.20.0
or node@16.14.0
.1cc5b7890
Thanks @natemoo-re! - Update supported node
versions. Minimum versions are now node@14.20.0
or node@16.16.0
.#3854 b012ee55
Thanks @bholmesdev! - [astro add] Support adapters and third party packages
515e8765
Thanks @FredKSchott! - Update peerDependencies to "solid@^1.4.3"
7373d61c
Thanks @natemoo-re! - Add support for passing named slots from .astro
=> framework components.Each slot
is be passed as a top-level prop. For example:
// From .astro
<Component>
<h2 slot="title">Hello world!</h2>
<h2 slot="slot-with-dash">Dash</h2>
<div>Default</div>
</Component>;
// For .jsx
export default function Component({ title, slotWithDash, children }) {
return (
<>
<div id="title">{title}</div>
<div id="slot-with-dash">{slotWithDash}</div>
<div id="main">{children}</div>
</>
);
}
2b35650b
Thanks @bholmesdev! - Fix newline characters in SolidJS JSX attributes (ex: multiline CSS classes)e9a77d86
Thanks @natemoo-re! - Update client hydration to check for ssr
attribute. Requires astro@^1.0.0-beta.36
.5e28b790
Thanks @hippotastic! - Fix location of SolidJS pre-hydration code815d62f1
Thanks @FredKSchott! - no changes.13b782f4
Thanks @ryansolid! - Improve nested hydration with Solid13b782f4
Thanks @ryansolid! - Improve nested hydration with Solid71c12b90
Thanks @zadeviggers! - Correct package name in README. Package is @astrojs/solid-js
, not @astrojs/solid
.#2885 6b004363
Thanks @bholmesdev! - Add README across Astro built-in integrations
#2847 3b621f7a
Thanks @tony-sull! - Adds keywords to the official integrations to support discoverability on Astro's Integrations site
3b621f7a
Thanks @tony-sull! - Adds keywords to the official integrations to support discoverability on Astro's Integrations site