There are several major changes to the state package:
Add WaitStatus support that allows a task to wait until further action to continue its execution. The WaitStatus is treated mostly as DoneStatus, except it is not ready status.
Add Change.AbortUnreadyLanes.
Add Change.CheckTaskDependencies to check if tasks have circular dependencies.
Add task and change callbacks invoked on a status change.
Update clients of the State.Get to use a new NoStateError to check if a desired key is present.
There are several major changes to the state package: