From d58d9f6d88b124a5754ff93827525c9799288437 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 24 Jul 2026 17:23:33 +0000 Subject: [PATCH] Release packages --- .changeset/atproto-comments-external-svelte.md | 17 ----------------- components/atproto-comments/CHANGELOG.md | 18 ++++++++++++++++++ components/atproto-comments/package.json | 2 +- 3 files changed, 19 insertions(+), 18 deletions(-) delete mode 100644 .changeset/atproto-comments-external-svelte.md diff --git a/.changeset/atproto-comments-external-svelte.md b/.changeset/atproto-comments-external-svelte.md deleted file mode 100644 index 807ac8e..0000000 --- a/.changeset/atproto-comments-external-svelte.md +++ /dev/null @@ -1,17 +0,0 @@ ---- -"@svebcomponents/atproto.comments": patch ---- - -Ship a Svelte-external build and route bundler consumers to it via the `svelte` -export condition, fixing a hydration crash (`Cannot read properties of null -(reading 'f')`) that wiped a correctly server-rendered thread on the client. - -The client build bundled its own Svelte runtime. In a SvelteKit/Vite app — -which has its own Svelte — that put **two** Svelte runtimes on the page, and -under `experimental.async` the app's async-boundary hydration would cross into -the component's separate runtime and dereference a null effect. The component -now also emits `dist/client-svelte`/`dist/server-svelte` (Svelte marked -external), and its package `exports` declare a `svelte` condition pointing at -them, so bundlers dedupe the component onto the app's single Svelte runtime. -The default `dist/client` (Svelte bundled) is unchanged and still serves the -CDN / bare-`import` drop-in, which has no app Svelte to dedupe against. diff --git a/components/atproto-comments/CHANGELOG.md b/components/atproto-comments/CHANGELOG.md index 4257798..c8231b4 100644 --- a/components/atproto-comments/CHANGELOG.md +++ b/components/atproto-comments/CHANGELOG.md @@ -1,5 +1,23 @@ # @svebcomponents/atproto.comments +## 0.2.1 + +### Patch Changes + +- a8212eb: Ship a Svelte-external build and route bundler consumers to it via the `svelte` + export condition, fixing a hydration crash (`Cannot read properties of null +(reading 'f')`) that wiped a correctly server-rendered thread on the client. + + The client build bundled its own Svelte runtime. In a SvelteKit/Vite app — + which has its own Svelte — that put **two** Svelte runtimes on the page, and + under `experimental.async` the app's async-boundary hydration would cross into + the component's separate runtime and dereference a null effect. The component + now also emits `dist/client-svelte`/`dist/server-svelte` (Svelte marked + external), and its package `exports` declare a `svelte` condition pointing at + them, so bundlers dedupe the component onto the app's single Svelte runtime. + The default `dist/client` (Svelte bundled) is unchanged and still serves the + CDN / bare-`import` drop-in, which has no app Svelte to dedupe against. + ## 0.2.0 ### Minor Changes diff --git a/components/atproto-comments/package.json b/components/atproto-comments/package.json index 830ed61..c612ac2 100644 --- a/components/atproto-comments/package.json +++ b/components/atproto-comments/package.json @@ -1,6 +1,6 @@ { "name": "@svebcomponents/atproto.comments", - "version": "0.2.0", + "version": "0.2.1", "type": "module", "jsdelivr": "./dist/client/index.js", "description": "Web component rendering ATProto/Bluesky threads as blog comments",