Move DEFAULT_EXEC_GROUP_NAME from ToolchainCollection to ExecGroup. PiperOrigin-RevId: 372342837
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/BUILD b/src/main/java/com/google/devtools/build/lib/analysis/BUILD index f26e0dc..d7d39da 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/BUILD +++ b/src/main/java/com/google/devtools/build/lib/analysis/BUILD
@@ -761,6 +761,7 @@ deps = [ "toolchain_collection", "//src/main/java/com/google/devtools/build/lib/packages", + "//src/main/java/com/google/devtools/build/lib/packages:exec_group", "//third_party:auto_value", "//third_party:guava", "//third_party:jsr305", @@ -1075,6 +1076,7 @@ ":toolchain_context", "//src/main/java/com/google/devtools/build/lib/analysis/platform", "//src/main/java/com/google/devtools/build/lib/cmdline", + "//src/main/java/com/google/devtools/build/lib/packages:exec_group", "//third_party:auto_value", "//third_party:guava", ], @@ -1687,10 +1689,10 @@ ":config/transitions/patch_transition", ":config/transitions/transition_factory", ":platform_options", - ":toolchain_collection", "//src/main/java/com/google/devtools/build/lib/cmdline", "//src/main/java/com/google/devtools/build/lib/events", "//src/main/java/com/google/devtools/build/lib/packages", + "//src/main/java/com/google/devtools/build/lib/packages:exec_group", "//src/main/java/com/google/devtools/build/lib/rules/config:feature_flag_value", "//src/main/java/com/google/devtools/build/lib/starlarkbuildapi", "//third_party:guava", @@ -2190,6 +2192,7 @@ ":resolved_toolchain_context", ":starlark/starlark_toolchain_context", ":toolchain_collection", + "//src/main/java/com/google/devtools/build/lib/packages:exec_group", "//src/main/java/com/google/devtools/build/lib/starlarkbuildapi/platform", "//src/main/java/net/starlark/java/eval", "//src/main/java/net/starlark/java/syntax",
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/DependencyKind.java b/src/main/java/com/google/devtools/build/lib/analysis/DependencyKind.java index 6227f23..99a3dbf 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/DependencyKind.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/DependencyKind.java
@@ -17,6 +17,7 @@ import com.google.common.base.Preconditions; import com.google.devtools.build.lib.packages.AspectClass; import com.google.devtools.build.lib.packages.Attribute; +import com.google.devtools.build.lib.packages.ExecGroup; import javax.annotation.Nullable; /** @@ -97,7 +98,7 @@ /** Returns a {@link DependencyKind} for the given execution group. */ static DependencyKind forExecGroup(String execGroupName) { - if (ToolchainCollection.DEFAULT_EXEC_GROUP_NAME.equals(execGroupName)) { + if (ExecGroup.DEFAULT_EXEC_GROUP_NAME.equals(execGroupName)) { return defaultExecGroupToolchain(); } return new AutoValue_DependencyKind_ToolchainDependencyKind(execGroupName, false); @@ -106,7 +107,7 @@ /** Returns a {@link DependencyKind} for the default execution group. */ static DependencyKind defaultExecGroupToolchain() { return new AutoValue_DependencyKind_ToolchainDependencyKind( - ToolchainCollection.DEFAULT_EXEC_GROUP_NAME, true); + ExecGroup.DEFAULT_EXEC_GROUP_NAME, true); } /** Predicate to check if a dependency represents a toolchain. */
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/RuleContext.java b/src/main/java/com/google/devtools/build/lib/analysis/RuleContext.java index 12f82d6..dcd3671 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/RuleContext.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/RuleContext.java
@@ -15,7 +15,7 @@ package com.google.devtools.build.lib.analysis; import static com.google.common.base.MoreObjects.firstNonNull; -import static com.google.devtools.build.lib.analysis.ToolchainCollection.DEFAULT_EXEC_GROUP_NAME; +import static com.google.devtools.build.lib.packages.ExecGroup.DEFAULT_EXEC_GROUP_NAME; import com.google.common.annotations.VisibleForTesting; import com.google.common.base.Joiner;
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/ToolchainCollection.java b/src/main/java/com/google/devtools/build/lib/analysis/ToolchainCollection.java index a7457f8..5961ca7 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/ToolchainCollection.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/ToolchainCollection.java
@@ -16,12 +16,12 @@ import static com.google.common.collect.ImmutableSet.toImmutableSet; import com.google.auto.value.AutoValue; -import com.google.common.annotations.VisibleForTesting; import com.google.common.base.Preconditions; import com.google.common.collect.ImmutableMap; import com.google.common.collect.ImmutableSet; import com.google.devtools.build.lib.analysis.platform.PlatformInfo; import com.google.devtools.build.lib.cmdline.Label; +import com.google.devtools.build.lib.packages.ExecGroup; import java.util.HashMap; import java.util.Map; @@ -34,15 +34,11 @@ @AutoValue public abstract class ToolchainCollection<T extends ToolchainContext> { - // This is intentionally a string that would fail {@code Identifier.isValid} so that - // users can't create a group with the same name. - @VisibleForTesting public static final String DEFAULT_EXEC_GROUP_NAME = "default-exec-group"; - /** A map of execution group names to toolchain contexts. */ public abstract ImmutableMap<String, T> getContextMap(); public T getDefaultToolchainContext() { - return getContextMap().get(DEFAULT_EXEC_GROUP_NAME); + return getContextMap().get(ExecGroup.DEFAULT_EXEC_GROUP_NAME); } public boolean hasToolchainContext(String execGroup) { @@ -87,7 +83,7 @@ private final Map<String, T> toolchainContexts = new HashMap<>(); public ToolchainCollection<T> build() { - Preconditions.checkArgument(toolchainContexts.containsKey(DEFAULT_EXEC_GROUP_NAME)); + Preconditions.checkArgument(toolchainContexts.containsKey(ExecGroup.DEFAULT_EXEC_GROUP_NAME)); return new AutoValue_ToolchainCollection<T>(ImmutableMap.copyOf(toolchainContexts)); } @@ -100,7 +96,7 @@ } public Builder<T> addDefaultContext(T context) { - addContext(DEFAULT_EXEC_GROUP_NAME, context); + addContext(ExecGroup.DEFAULT_EXEC_GROUP_NAME, context); return this; } }
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/actions/SpawnAction.java b/src/main/java/com/google/devtools/build/lib/analysis/actions/SpawnAction.java index 7d86c38..07920aa 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/actions/SpawnAction.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/actions/SpawnAction.java
@@ -14,7 +14,7 @@ package com.google.devtools.build.lib.analysis.actions; -import static com.google.devtools.build.lib.analysis.ToolchainCollection.DEFAULT_EXEC_GROUP_NAME; +import static com.google.devtools.build.lib.packages.ExecGroup.DEFAULT_EXEC_GROUP_NAME; import com.google.common.annotations.VisibleForTesting; import com.google.common.base.CharMatcher;
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/config/ExecutionTransitionFactory.java b/src/main/java/com/google/devtools/build/lib/analysis/config/ExecutionTransitionFactory.java index 54c0756..94aa521 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/config/ExecutionTransitionFactory.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/config/ExecutionTransitionFactory.java
@@ -15,7 +15,7 @@ package com.google.devtools.build.lib.analysis.config; import static com.google.common.collect.ImmutableList.toImmutableList; -import static com.google.devtools.build.lib.analysis.ToolchainCollection.DEFAULT_EXEC_GROUP_NAME; +import static com.google.devtools.build.lib.packages.ExecGroup.DEFAULT_EXEC_GROUP_NAME; import com.google.common.base.Preconditions; import com.google.common.collect.ImmutableList;
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/starlark/StarlarkExecGroupCollection.java b/src/main/java/com/google/devtools/build/lib/analysis/starlark/StarlarkExecGroupCollection.java index 1c8e45f..506d9e5 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/starlark/StarlarkExecGroupCollection.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/starlark/StarlarkExecGroupCollection.java
@@ -13,7 +13,7 @@ // limitations under the License. package com.google.devtools.build.lib.analysis.starlark; -import static com.google.devtools.build.lib.analysis.ToolchainCollection.DEFAULT_EXEC_GROUP_NAME; +import static com.google.devtools.build.lib.packages.ExecGroup.DEFAULT_EXEC_GROUP_NAME; import com.google.auto.value.AutoValue; import com.google.common.annotations.VisibleForTesting;
diff --git a/src/main/java/com/google/devtools/build/lib/packages/BUILD b/src/main/java/com/google/devtools/build/lib/packages/BUILD index 3683d0f..ff5a867 100644 --- a/src/main/java/com/google/devtools/build/lib/packages/BUILD +++ b/src/main/java/com/google/devtools/build/lib/packages/BUILD
@@ -75,7 +75,6 @@ "//src/main/java/com/google/devtools/build/lib/starlarkbuildapi", "//third_party:auto_value", "//third_party:guava", - "//third_party:jsr305", ], )
diff --git a/src/main/java/com/google/devtools/build/lib/packages/ExecGroup.java b/src/main/java/com/google/devtools/build/lib/packages/ExecGroup.java index 18d156f..f91c32a 100644 --- a/src/main/java/com/google/devtools/build/lib/packages/ExecGroup.java +++ b/src/main/java/com/google/devtools/build/lib/packages/ExecGroup.java
@@ -15,6 +15,7 @@ package com.google.devtools.build.lib.packages; import com.google.auto.value.AutoValue; +import com.google.common.annotations.VisibleForTesting; import com.google.common.collect.ImmutableSet; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.starlarkbuildapi.ExecGroupApi; @@ -28,6 +29,10 @@ public static final ExecGroup COPY_FROM_RULE_EXEC_GROUP = createCopied(ImmutableSet.of(), ImmutableSet.of()); + // This is intentionally a string that would fail {@code Identifier.isValid} so that + // users can't create a group with the same name. + @VisibleForTesting public static final String DEFAULT_EXEC_GROUP_NAME = "default-exec-group"; + // Create an exec group that is marked as copying from the rule. public static ExecGroup createCopied( Set<Label> requiredToolchains, Set<Label> execCompatibleWith) {
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/BUILD b/src/test/java/com/google/devtools/build/lib/analysis/BUILD index 730ac2a..de310df 100644 --- a/src/test/java/com/google/devtools/build/lib/analysis/BUILD +++ b/src/test/java/com/google/devtools/build/lib/analysis/BUILD
@@ -103,7 +103,6 @@ "//src/main/java/com/google/devtools/build/lib/analysis:test/analysis_failure_info", "//src/main/java/com/google/devtools/build/lib/analysis:test/test_configuration", "//src/main/java/com/google/devtools/build/lib/analysis:test/test_trimming_transition_factory", - "//src/main/java/com/google/devtools/build/lib/analysis:toolchain_collection", "//src/main/java/com/google/devtools/build/lib/analysis:top_level_artifact_context", "//src/main/java/com/google/devtools/build/lib/analysis:transitive_info_collection", "//src/main/java/com/google/devtools/build/lib/analysis:transitive_info_provider",
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/StarlarkExecGroupTest.java b/src/test/java/com/google/devtools/build/lib/analysis/StarlarkExecGroupTest.java index b5ff8bc..86df608 100644 --- a/src/test/java/com/google/devtools/build/lib/analysis/StarlarkExecGroupTest.java +++ b/src/test/java/com/google/devtools/build/lib/analysis/StarlarkExecGroupTest.java
@@ -15,7 +15,7 @@ package com.google.devtools.build.lib.analysis; import static com.google.common.truth.Truth.assertThat; -import static com.google.devtools.build.lib.analysis.ToolchainCollection.DEFAULT_EXEC_GROUP_NAME; +import static com.google.devtools.build.lib.packages.ExecGroup.DEFAULT_EXEC_GROUP_NAME; import com.google.common.collect.ImmutableMap; import com.google.common.collect.ImmutableSet;
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/testing/BUILD b/src/test/java/com/google/devtools/build/lib/analysis/testing/BUILD index c2018de..2892754 100644 --- a/src/test/java/com/google/devtools/build/lib/analysis/testing/BUILD +++ b/src/test/java/com/google/devtools/build/lib/analysis/testing/BUILD
@@ -28,6 +28,7 @@ "//src/main/java/com/google/devtools/build/lib/analysis/platform", "//src/main/java/com/google/devtools/build/lib/cmdline", "//src/main/java/com/google/devtools/build/lib/cmdline:cmdline-primitives", + "//src/main/java/com/google/devtools/build/lib/packages:exec_group", "//src/main/java/net/starlark/java/eval", "//third_party:guava", "//third_party:truth",
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/testing/ToolchainCollectionSubject.java b/src/test/java/com/google/devtools/build/lib/analysis/testing/ToolchainCollectionSubject.java index 83da8fb..088ec55 100644 --- a/src/test/java/com/google/devtools/build/lib/analysis/testing/ToolchainCollectionSubject.java +++ b/src/test/java/com/google/devtools/build/lib/analysis/testing/ToolchainCollectionSubject.java
@@ -20,6 +20,7 @@ import com.google.common.truth.IterableSubject; import com.google.common.truth.Subject; import com.google.devtools.build.lib.analysis.ToolchainCollection; +import com.google.devtools.build.lib.packages.ExecGroup; /** A Truth {@link Subject} for {@link ToolchainCollection}. */ public class ToolchainCollectionSubject extends Subject { @@ -51,7 +52,7 @@ public void hasDefaultExecGroup() { check("hasToolchainContext()") - .that(actual.hasToolchainContext(ToolchainCollection.DEFAULT_EXEC_GROUP_NAME)) + .that(actual.hasToolchainContext(ExecGroup.DEFAULT_EXEC_GROUP_NAME)) .isTrue(); }
diff --git a/src/test/java/com/google/devtools/build/lib/starlark/BUILD b/src/test/java/com/google/devtools/build/lib/starlark/BUILD index beba287..8467ebf 100644 --- a/src/test/java/com/google/devtools/build/lib/starlark/BUILD +++ b/src/test/java/com/google/devtools/build/lib/starlark/BUILD
@@ -46,7 +46,6 @@ "//src/main/java/com/google/devtools/build/lib/analysis:test/analysis_failure_info", "//src/main/java/com/google/devtools/build/lib/analysis:test/analysis_test_result_info", "//src/main/java/com/google/devtools/build/lib/analysis:test/instrumented_files_info", - "//src/main/java/com/google/devtools/build/lib/analysis:toolchain_collection", "//src/main/java/com/google/devtools/build/lib/analysis:transitive_info_collection", "//src/main/java/com/google/devtools/build/lib/analysis:view_creation_failed_exception", "//src/main/java/com/google/devtools/build/lib/cmdline", @@ -76,7 +75,6 @@ "//src/test/java/com/google/devtools/build/lib/actions/util", "//src/test/java/com/google/devtools/build/lib/analysis/util", "//src/test/java/com/google/devtools/build/lib/exec/util", - "//src/test/java/com/google/devtools/build/lib/packages:testutil", "//src/test/java/com/google/devtools/build/lib/starlark/util", "//src/test/java/com/google/devtools/build/lib/testutil", "//src/test/java/com/google/devtools/build/lib/testutil:JunitUtils",
diff --git a/src/test/java/com/google/devtools/build/lib/starlark/StarlarkRuleContextTest.java b/src/test/java/com/google/devtools/build/lib/starlark/StarlarkRuleContextTest.java index 166489d..f095698 100644 --- a/src/test/java/com/google/devtools/build/lib/starlark/StarlarkRuleContextTest.java +++ b/src/test/java/com/google/devtools/build/lib/starlark/StarlarkRuleContextTest.java
@@ -17,9 +17,9 @@ import static com.google.common.truth.Truth.assertThat; import static com.google.common.truth.Truth.assertWithMessage; import static com.google.common.truth.Truth8.assertThat; -import static com.google.devtools.build.lib.analysis.ToolchainCollection.DEFAULT_EXEC_GROUP_NAME; import static com.google.devtools.build.lib.packages.Attribute.attr; import static com.google.devtools.build.lib.packages.BuildType.LABEL_LIST; +import static com.google.devtools.build.lib.packages.ExecGroup.DEFAULT_EXEC_GROUP_NAME; import static org.junit.Assert.assertThrows; import com.google.common.base.Joiner;