Skip to content

Conversation

@dummdidumm
Copy link
Member

@dummdidumm dummdidumm commented Nov 11, 2025

We didn't properly handle functions (function declarations/expressions/arrow functions) when calculating what is a blocker. More specifically

  • we did defer assignment of variable declarations even for arrow functions and function expressions, which is unnecessary and causes bugs when they're then referenced eagerly further below
  • we did not compute blockers for functions. They could reference blockers themselves, as such other code referencing them should wait on the related blockers

Fixes #17129

For review: The second commit is just moving things around

Also unrelated-but-appeared-in-the-same-issue-fix: take blockers into account when creating #await blocks

Before submitting the PR, please make sure you do the following

  • It's really useful if your PR references an issue where it is discussed ahead of time. In many cases, features are absent for a reason. For large changes, please create an RFC: https://github.com/sveltejs/rfcs
  • Prefix your PR title with feat:, fix:, chore:, or docs:.
  • This message body should clearly illustrate what problems it solves.
  • Ideally, include a test that fails without this PR but passes with it.
  • If this PR changes code within packages/svelte/src, add a changeset (npx changeset).

Tests and linting

  • Run the tests with pnpm test and lint the project with pnpm lint
We didn't properly handle functions (function declarations/expressions/arrow functions) when calculating what is a blocker. More specifically - we did defer assignment of variable declarations even for arrow functions and function expressions, which is unnecessary and causes bugs when they're then referenced eagerly further below - we did not compute blockers for functions. They could reference blockers themselves, as such other code referencing them should wait on the related blockers Fixes #17129
The unrelated-but-in-the-same-issue-referenced-bug
@changeset-bot
Copy link

changeset-bot bot commented Nov 11, 2025

🦋 Changeset detected

Latest commit: a4486b2

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
svelte Patch

Not sure what this means? Click here to learn what changesets are.

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

@github-actions
Copy link
Contributor

Playground

pnpm add https://pkg.pr.new/svelte@17137 
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

2 participants