Skip to content

chore: null out current_batch before committing branches#17809

Merged
dummdidumm merged 2 commits intomainfrom
tweak-branch-manager
Feb 26, 2026
Merged

chore: null out current_batch before committing branches#17809
dummdidumm merged 2 commits intomainfrom
tweak-branch-manager

Conversation

@Rich-Harris
Copy link
Copy Markdown
Member

Another small tweak extracted from #17805, just to make that diff a bit more legible.

By passing the batch to the branch commit callback, we don't need to rely on the value of current_batch being the same as the batch currently being processed. That gives us more control over the order of operations — for example we can null out current_batch before committing branches, which is important (at present, if a state change occurs while those branches are being committed, it will belong to the current batch, but the resulting effects will happen in the context of a new batch, which is something we need to avoid for the sake of #17805).

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

@changeset-bot
Copy link
Copy Markdown

changeset-bot bot commented Feb 26, 2026

🦋 Changeset detected

Latest commit: fe8f658

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
Copy Markdown
Contributor

Playground

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

@dummdidumm dummdidumm merged commit b76cd5c into main Feb 26, 2026
22 checks passed
@dummdidumm dummdidumm deleted the tweak-branch-manager branch February 26, 2026 17:20
@github-actions github-actions bot mentioned this pull request Feb 26, 2026
@Rich-Harris Rich-Harris mentioned this pull request Feb 26, 2026
6 tasks
Rich-Harris added a commit that referenced this pull request Feb 26, 2026
another extraction from #17805. I always felt bad about
`this.process([])`, and this PR replaces it with the steps that actually
occur — even though this is arguably duplicative, I find it much easier
to understand.

It also allows us to avoid activating batches with no queued effects,
thanks to the change in #17809. This saves us a bit of work in a
not-that-uncommon case.

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

- [x] 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
- [x] Prefix your PR title with `feat:`, `fix:`, `chore:`, or `docs:`.
- [x] 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

- [x] Run the tests with `pnpm test` and lint the project with `pnpm
lint`
Rich-Harris pushed a commit that referenced this pull request Feb 27, 2026
This PR was opened by the [Changesets
release](https://github.com/changesets/action) GitHub action. When
you're ready to do a release, you can merge this and the packages will
be published to npm automatically. If you're not ready to do a release
yet, that's fine, whenever you add more changesets to main, this PR will
be updated.


# Releases
## svelte@5.53.6

### Patch Changes

- perf: optimize parser hot paths for faster compilation
([#17811](#17811))

- fix: `SvelteMap` incorrectly handles keys with `undefined` values
([#17826](#17826))

- fix: SvelteURL `search` setter now returns the normalized value,
matching native URL behavior
([#17828](#17828))

- fix: visit synthetic value node during ssr
([#17824](#17824))

- fix: always case insensitive event handlers during ssr
([#17822](#17822))

- chore: more efficient effect scheduling
([#17808](#17808))

- perf: optimize compiler analysis phase
([#17823](#17823))

- fix: skip redundant batch.apply
([#17816](#17816))

- chore: null out current_batch before committing branches
([#17809](#17809))

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.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.

2 participants