Closed benjie closed 3 months ago
Latest commit: 8076500354a3e2bc2de1b6c4e947bd710cc5bddc
The changes in this PR will be included in the next version bump.
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
Description
Fixes https://github.com/benjie/ouch-my-finger/pull/13
Setting
$step.hasSideEffects = true
on a step is only allowed just after the step is created (or during its creation) because we track the fact of a side effect having happened in the layer plan so that all future steps are implicitly "dependent" on the side effect.However, this check was too strict - it's okay for other steps to have been created, so long as
$step
ultimately depends on them. We just want to make it so that future steps (those that$step
does not depend on) will implicitly depend on$step
succeeding. This has been fixed.Related; when a planning error occurs we "roll back" the plan diagram to a previous state (throwing away older steps). However; when we did this, we did not clear the fact that we were tracking a latest side effect step on the LayerPlan, which resulted in attempting to reference said step at runtime even though it had been removed. This has also been resolved.
Performance impact
None known.
Security impact
None known.
Checklist
yarn lint:fix
passes.yarn test
passes.RELEASE_NOTES.md
file (if one exists).