From 583c74b28c9f49e9d44f887872da45d04cabebe2 Mon Sep 17 00:00:00 2001 From: Sam Gammon Date: Sun, 3 Sep 2023 15:54:04 -0700 Subject: [PATCH] fix: install requested components plus deps - fix: add requested component to list of effective components installed via bindist Fixes and closes sgammon/rules_graalvm#100. Thanks to @mantasindrasius for reporting! Relates-To: sgammon/rules_graalvm#100 Relates-To: sgammon/rules_graalvm#99 Signed-off-by: Sam Gammon --- internal/graalvm_bindist.bzl | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/internal/graalvm_bindist.bzl b/internal/graalvm_bindist.bzl index 3378653c..1f229609 100644 --- a/internal/graalvm_bindist.bzl +++ b/internal/graalvm_bindist.bzl @@ -175,10 +175,13 @@ def _build_component_graph(components): for component in components: deps = ComponentDependencies.get(component, None) if deps != None: - stanza = [i for i in (deps + [component]) if not sets.contains(unique_components, i)] + stanza = [i for i in deps if not sets.contains(unique_components, i)] for item in stanza: sets.insert(unique_components, item) - effective_components += stanza + + # component itself + unique deps, with component last (reverse-topological) + effective_components += (stanza + [component]) + sets.insert(unique_components, component) else: effective_components.append(component) return effective_components