From 436ba067bc369e62106a8a2e065ea353b243199f Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Wed, 1 Mar 2023 09:23:01 +0100 Subject: [PATCH] reset cps before eval --- packages/core/repl.mjs | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/packages/core/repl.mjs b/packages/core/repl.mjs index f0e6623f..b5d8cb92 100644 --- a/packages/core/repl.mjs +++ b/packages/core/repl.mjs @@ -42,6 +42,17 @@ export function repl({ } try { beforeEval?.({ code }); + scheduler.setCps(1); // reset cps in case the code does not contain a setCps call + // problem: when the code does contain a setCps after an awaited promise, + // the cps will be 1 until the promise resolves + // example: + /* + await new Promise(resolve => setTimeout(resolve,1000)) + setCps(.5) + note("c a f e") + */ + // to make sure the setCps inside the code is called immediately, + // it has to be placed first let { pattern } = await _evaluate(code, transpiler); logger(`[eval] code updated`);