Skip to content

fix(core): fix batch finalization when effect disposal throws - #988

Open
SisyphusZheng wants to merge 2 commits into
preactjs:mainfrom
SisyphusZheng:codex/fix-effect-disposal-batch-cleanup
Open

SisyphusZheng wants to merge 2 commits into
preactjs:mainfrom
SisyphusZheng:codex/fix-effect-disposal-batch-cleanup

Conversation

@SisyphusZheng

Copy link
Copy Markdown
Contributor

Summary

Ensure endBatch() runs in finally when disposing an effect in endEffect. Previously, a throwing cleanup could skip batch finalization and prevent unrelated effects from updating.

Testing

  • Added one regression test: fails before the fix and passes afterward.
  • Core and Preact/React runtime tests: 313 passed, 5 skipped.
  • Core build, type checking, and formatting checks passed.

Developed with AI assistance.

Developed with assistance from OpenAI Codex.
@changeset-bot

changeset-bot Bot commented Sep 26, 2026 •

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: a2052dd

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

This PR includes changesets to release 2 packages
Name Type
@preact/signals-core Patch
preact-signals-devtools 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

@netlify

netlify Bot commented Sep 26, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for preact-signals-demo ready!

Name Link
🔨 Latest commit a2052dd
🔍 Latest deploy log https://app.netlify.com/projects/preact-signals-demo/deploys/6abe8b98853b630007baf1d2
😎 Deploy Preview https://deploy-preview-988--preact-signals-demo.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

This branch has not been deployed

No deployments
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