From 793cdc67e17ca8856af91eb0009d5b14bcb04125 Mon Sep 17 00:00:00 2001 From: bezmuth Date: Fri, 26 Aug 2022 01:31:09 +0100 Subject: [PATCH 1/2] Remove projects when discovered translators do not match user specified translators --- src/default.nix | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/src/default.nix b/src/default.nix index 29abcfe4c..920cc3055 100644 --- a/src/default.nix +++ b/src/default.nix @@ -458,6 +458,16 @@ in let getProjectKey = project: "${project.name}_|_${project.subsystem}_|_${project.relPath}"; + # Remove projects whose translator's do not match with the translator + # specified by the user + discoveredProjectsStrict = + if b.hasAttr "translator" (b.elemAt settings 0) + then + l.filter + (project: b.elem (b.elemAt settings 0).translator project.translators) + discoveredProjects + else discoveredProjects; + # list of projects extended with some information requried for processing projectsList = l.map @@ -478,7 +488,7 @@ in let }; in self)) - discoveredProjects; + discoveredProjectsStrict; # projects without existing valid dream-lock.json projectsPureUnresolved = @@ -498,7 +508,7 @@ in let (proj: let translator = getTranslator proj.translator; dreamLock'' = translator.translate { - inherit source tree discoveredProjects; + inherit source tree discoveredProjectsStrict; project = proj; }; From 3cee217d94ee074f72cfb774ba611fae3dc09d0c Mon Sep 17 00:00:00 2001 From: bezmuth Date: Sun, 28 Aug 2022 19:43:59 +0100 Subject: [PATCH 2/2] Check length of settings before access --- src/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/default.nix b/src/default.nix index 920cc3055..af40fefd2 100644 --- a/src/default.nix +++ b/src/default.nix @@ -461,7 +461,7 @@ in let # Remove projects whose translator's do not match with the translator # specified by the user discoveredProjectsStrict = - if b.hasAttr "translator" (b.elemAt settings 0) + if l.length settings != 0 && b.hasAttr "translator" (b.elemAt settings 0) then l.filter (project: b.elem (b.elemAt settings 0).translator project.translators)