Open Anber opened 3 months ago
Latest commit: b2895cb5628fc538e090fc9df45ea2d640cc70e1
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.
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
Motivation
wtlin1228 found an issue with handlers and actions: if multiple handlers are passed to an action, side effects from all handlers except the first one will be ignored. It's not a problem because, by design, an action should be run with the same instance of a handler. However, the fast check showed that it's not true for
resolveImports
actions that are constantly recreated because ofresolve
functions passed from bundlers. In some cases, it may break HMR in Webpack and lead to inconsistent logs in Vite/Rollup.Summary
action.run
now checks that it is run with the same handler instance.resolveImports
won't be recreated if it's unnecessary.