Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: widen ownership when calling setContext #15153

Merged
merged 1 commit into from
Jan 30, 2025

Conversation

dummdidumm
Copy link
Member

Instead of doing ownership addition at each getContext call site, we do it once as the setContext call site and make the state basically global.

  • avoids potential false positives in edge cases
  • makes the whole thing more performant, especially around things like calling getContext inside a list item component
  • false negatives are unlikely from this (as shown by no current tests failing)

No new test added because this is mainly about performance.

fixes #15072

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

Instead of doing ownership addition at each `getContext` call site, we do it once as the `setContext` call site and make the state basically global.
- avoids potential false positives in edge cases
- makes the whole thing more performant, especially around things like calling `getContext` inside a list item component
- false negatives are unlikely from this

fixes #15072
Copy link

changeset-bot bot commented Jan 30, 2025

🦋 Changeset detected

Latest commit: 8291cd9

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

Copy link
Contributor

Playground

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

@dummdidumm dummdidumm merged commit f5406c9 into main Jan 30, 2025
10 checks passed
@dummdidumm dummdidumm deleted the ownership-widening-context branch January 30, 2025 18:14
This was referenced Jan 30, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants