Skip to content

Conversation

Rich-Harris
Copy link
Member

we can simplify things by keeping this stuff local to where it's used, in the server transform visitor

Copy link

changeset-bot bot commented Sep 14, 2025

⚠️ No Changeset found

Latest commit: fda96e2

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@Rich-Harris Rich-Harris mentioned this pull request Sep 14, 2025
6 tasks
Copy link
Contributor

Playground

pnpm add https://pkg.pr.new/svelte@16764

@Rich-Harris Rich-Harris merged commit 3345386 into adjust-boundary-error-message Sep 14, 2025
14 of 15 checks passed
@Rich-Harris Rich-Harris deleted the remove-metadata-pending branch September 14, 2025 23:23
Rich-Harris added a commit that referenced this pull request Sep 17, 2025
* feat: First pass at payload

* first crack

* snapshots

* checkpoint

* fix: cloning

* add test option

* big dumb

* today's hard work; few tests left to fix

* improve

* tests passing no wayyyyy yo

* lots of progress, couple of failing tests around selects

* meh

* solve async tree stuff

* fix select/option stuff

* whoop, tests

* simplify

* feat: hoisting

* fix: `$effect.pending` sends updates to incorrect boundary

* changeset

* stuff from upstream

* feat: first hydrationgaa

* remove docs

* snapshots

* silly fix

* checkpoint

* meh

* ALKASJDFALSKDFJ the test passes

* chore: Update a bunch of tests for hydration markers

* chore: remove snippet and is_async

* naming

* better errors for sync-in-async

* test improvements

* idk man

* merge local branches (#16757)

* use fragment as async hoist boundary

* remove async_hoist_boundary

* only dewaterfall when necessary

* unused

* simplify/fix

* de-waterfall awaits in separate elements

* update snapshots

* remove unnecessary wrapper

* fix

* fix

* remove suspends_without_fallback

---------

Co-authored-by: Rich Harris <rich.harris@vercel.com>

* Update payload.js

Co-authored-by: Rich Harris <rich.harris@vercel.com>

* checkpoint

* got the extra children to go away

* just gonna go ahead and merge this as the review comments take up too much space

* chore: remove hoisted_promises (#16766)

* chore: remove hoisted_promises

* WIP optimise promises

* WIP

* fix <slot> with await in prop

* tweak

* fix type error

* Update packages/svelte/src/compiler/phases/3-transform/server/visitors/SvelteHead.js

* chore: fix hydration treeshaking (#16767)

* chore: fix hydration treeshaking

* fix

* remove await_outside_boundary error (#16762)

* chore: remove unused analysis.boundary (#16763)

* chore: simplify slots (#16765)

* chore: simplify slots

* unused

* Apply suggestions from code review

* chore: remove metadata.pending (#16764)

* Update packages/svelte/src/compiler/phases/3-transform/server/visitors/SnippetBlock.js

* put this back where it was, keep the diff small

* Update packages/svelte/src/compiler/phases/types.d.ts

Co-authored-by: Rich Harris <rich.harris@vercel.com>

* chore: remove analysis.state.title (#16771)

* chore: remove analysis.state.title

* unused

* chore: remove is_async (#16769)

* chore: remove is_async

* unused

* Apply suggestions from code review

Co-authored-by: Rich Harris <rich.harris@vercel.com>

* cleanup

* lint

* clean up payload a bit

* compiler work

* run ssr on sync and async

* prettier

* inline capture

* Update packages/svelte/src/compiler/phases/3-transform/server/visitors/EachBlock.js

* chore: simplify build_template (#16780)

* small tweak to aid greppability

* chore: fix SSR context (#16781)

* at least passing

* cleanup

* fix

* remove push/pop from exports, not needed with payload

* I think this is better but tbh not sure

* async SSR

* qualification

* errors:

* I have lost the plot

* finally

* ugh

* tweak error codes to better align with existing conventions, such as they are

* tweak messages

* remove unused args

* DRY out a bit

* unused

* unused

* unused

* simplify - we can enforce readonly at a type level

* unused

* simplify

* avoid magical accessors

* simplify algorithm

* unused

* unused

* reduce indirection

* TreeState -> SSRState

* mark deprecated methods

* grab this.local from parent directly

* rename render -> fn per conventions (fn indicates 'arbitrary code')

* reduce indirection

* Revert "reduce indirection"

This reverts commit 3ec461b.

* tweak

* okay works this time

* no way chat, it works

* fix context stuff

* tweak

* make it chainable

* lint

* clean up

* lint

* Update packages/svelte/src/internal/server/types.d.ts

Co-authored-by: Rich Harris <rich.harris@vercel.com>

* sunset html for async

* types

* we use 'deprecated' in other messages

* oops

---------

Co-authored-by: Rich Harris <rich.harris@vercel.com>
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.

1 participant