diff --git a/gradle/changelog/duplicate_module_execution.yaml b/gradle/changelog/duplicate_module_execution.yaml new file mode 100644 index 0000000000..b18a4f5460 --- /dev/null +++ b/gradle/changelog/duplicate_module_execution.yaml @@ -0,0 +1,2 @@ +- type: fixed + description: Some plugin bundles are executed multiple times ([#1980](https://github.com/scm-manager/scm-manager/pull/1980)) diff --git a/scm-ui/ui-modules/src/index.ts b/scm-ui/ui-modules/src/index.ts index bbea92c15b..20c256779f 100644 --- a/scm-ui/ui-modules/src/index.ts +++ b/scm-ui/ui-modules/src/index.ts @@ -59,12 +59,11 @@ const resolveModule = (name: string) => { const defineModule = (name: string, module: Module) => { Promise.all(module.dependencies.map(resolveModule)) .then(resolvedDependencies => { - delete queue[name]; - modules["@scm-manager/" + name] = module.fn(...resolvedDependencies); Object.keys(queue).forEach(queuedModuleName => { const queueModule = queue[queuedModuleName]; + delete queue[queuedModuleName]; defineModule(queuedModuleName, queueModule); }); })