From a838223a35377da307fe4552f052fede022a65bd Mon Sep 17 00:00:00 2001 From: Samuel Degueldre Date: Mon, 3 Apr 2023 08:59:55 +0000 Subject: [PATCH] [REF] web: remove dependency of js module system on guardedCatch MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit guardedCatch is a legacy feature meant to differenciate promises rejected as control flow from promises rejected because of an error. In recent years we have settled on the stance that using promise rejections, which are treated as errors by the language in many ways, is a bad idea. This commit removes the dependency of the odoo module system on this legacy feature. closes odoo/odoo#117457 Signed-off-by: Géry Debongnie --- addons/web/static/src/boot.js | 31 +++---------------------------- 1 file changed, 3 insertions(+), 28 deletions(-) diff --git a/addons/web/static/src/boot.js b/addons/web/static/src/boot.js index 2b5e13266e1..22d71a145bd 100644 --- a/addons/web/static/src/boot.js +++ b/addons/web/static/src/boot.js @@ -120,10 +120,6 @@ resolve(); odoo.__DEBUG__.processJobs(); }) - .guardedCatch(function (e) { - job.rejected = e || true; - jobs.push(job); - }) .catch(function (e) { if (e instanceof Error) { onError(e); @@ -141,7 +137,6 @@ function isReady(job) { return ( !job.error && - !job.rejected && job.factory.deps.every(function (name) { return name in services; }) @@ -243,8 +238,6 @@ if (jobs.length) { var debugJobs = {}; - var rejected = []; - var rejectedLinked = []; var job; var jobdep; @@ -260,10 +253,6 @@ if (jobs[k].error) { job.error = jobs[k].error; } - if (jobs[k].rejected) { - job.rejected = jobs[k].rejected; - rejected.push(job.name); - } var deps = odoo.__DEBUG__.getDependencies(job.name); for (var i = 0; i < deps.length; i++) { if (job.name !== deps[i] && !(deps[i] in services)) { @@ -276,18 +265,10 @@ } } } - if (jobdep && jobdep.rejected) { - if (!job.rejected) { - job.rejected = []; - rejectedLinked.push(job.name); - } - job.rejected.push(deps[i]); - } else { - if (!job.missing) { - job.missing = []; - } - job.missing.push(deps[i]); + if (!job.missing) { + job.missing = []; } + job.missing.push(deps[i]); } } } @@ -319,12 +300,6 @@ }) ); } - if (rejected.length) { - log("Rejected modules: ", rejected); - } - if (rejectedLinked.length) { - log("Rejected linked modules: ", rejectedLinked); - } if (unloaded.length) { cycle = findCycle(unloaded); if (cycle) {