run microtasks before ticks
This resolve multiple timing issues related to promises and nextTick. As well as resolving zaldo in promise only code, i.e. our current best practice of using process.nextTick will always apply and work.
Enable experimental task ordering. Always drain micro task queue before running process.nextTick
to avoid unintuitive behavior and unexpected logical deadlocks when mixing async callback and event API's with Promise
, async
/await
and queueMicroTask
.
Refs: https://github.com/nodejs/node/issues/51156 Refs: https://github.com/nodejs/node/issues/51156 Refs: https://github.com/nodejs/node/pull/51114#issuecomment-1868240741 Refs: https://github.com/nodejs/node/pull/51070 Refs: https://github.com/nodejs/node/issues/51156