Move toolchain resolution skyframe classes to a new package. This helps clarify what is what in toolchain resolution. Part of #18424. PiperOrigin-RevId: 534169966 Change-Id: Ia34902646a493174b8f10bc8c0e87bf7eab31d04
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 fede306..f1b0e1a 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/BUILD +++ b/src/main/java/com/google/devtools/build/lib/analysis/BUILD
@@ -1059,9 +1059,9 @@ "//src/main/java/com/google/devtools/build/lib/cmdline", "//src/main/java/com/google/devtools/build/lib/concurrent", "//src/main/java/com/google/devtools/build/lib/skyframe:configured_target_and_data", - "//src/main/java/com/google/devtools/build/lib/skyframe:toolchain_context_key", - "//src/main/java/com/google/devtools/build/lib/skyframe:toolchain_exception", - "//src/main/java/com/google/devtools/build/lib/skyframe:unloaded_toolchain_context", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:toolchain_context_key", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:toolchain_exception", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:unloaded_toolchain_context", "//src/main/protobuf:failure_details_java_proto", "//third_party:auto_value", "//third_party:guava", @@ -1181,7 +1181,7 @@ ":config/toolchain_type_requirement", "//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/skyframe:toolchain_context_key", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:toolchain_context_key", "//third_party:guava", ], )
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/ResolvedToolchainContext.java b/src/main/java/com/google/devtools/build/lib/analysis/ResolvedToolchainContext.java index 767106c..8e6f08b 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/ResolvedToolchainContext.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/ResolvedToolchainContext.java
@@ -27,8 +27,8 @@ import com.google.devtools.build.lib.concurrent.ThreadSafety.ThreadSafe; import com.google.devtools.build.lib.server.FailureDetails.Toolchain.Code; import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndData; -import com.google.devtools.build.lib.skyframe.ToolchainException; -import com.google.devtools.build.lib.skyframe.UnloadedToolchainContext; +import com.google.devtools.build.lib.skyframe.toolchains.ToolchainException; +import com.google.devtools.build.lib.skyframe.toolchains.UnloadedToolchainContext; import javax.annotation.Nullable; /**
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/ToolchainContext.java b/src/main/java/com/google/devtools/build/lib/analysis/ToolchainContext.java index f1778e3..702bbb7 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/ToolchainContext.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/ToolchainContext.java
@@ -17,7 +17,7 @@ import com.google.devtools.build.lib.analysis.config.ToolchainTypeRequirement; import com.google.devtools.build.lib.analysis.platform.PlatformInfo; import com.google.devtools.build.lib.cmdline.Label; -import com.google.devtools.build.lib.skyframe.ToolchainContextKey; +import com.google.devtools.build.lib.skyframe.toolchains.ToolchainContextKey; /** Represents the data needed for a specific target's use of toolchains and platforms. */ public interface ToolchainContext {
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/producers/BUILD b/src/main/java/com/google/devtools/build/lib/analysis/producers/BUILD index 8eb4648..6102876 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/producers/BUILD +++ b/src/main/java/com/google/devtools/build/lib/analysis/producers/BUILD
@@ -37,13 +37,13 @@ "//src/main/java/com/google/devtools/build/lib/skyframe:configured_target_and_data", "//src/main/java/com/google/devtools/build/lib/skyframe:configured_target_key", "//src/main/java/com/google/devtools/build/lib/skyframe:configured_value_creation_exception", - "//src/main/java/com/google/devtools/build/lib/skyframe:no_matching_platform_exception", "//src/main/java/com/google/devtools/build/lib/skyframe:package_value", - "//src/main/java/com/google/devtools/build/lib/skyframe:platform_lookup_util", "//src/main/java/com/google/devtools/build/lib/skyframe:rule_configured_target_value", - "//src/main/java/com/google/devtools/build/lib/skyframe:toolchain_context_key", - "//src/main/java/com/google/devtools/build/lib/skyframe:toolchain_exception", - "//src/main/java/com/google/devtools/build/lib/skyframe:unloaded_toolchain_context", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:no_matching_platform_exception", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:platform_lookup_util", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:toolchain_context_key", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:toolchain_exception", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:unloaded_toolchain_context", "//src/main/java/com/google/devtools/build/lib/util:detailed_exit_code", "//src/main/java/com/google/devtools/build/skyframe", "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects",
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/producers/DependencyContext.java b/src/main/java/com/google/devtools/build/lib/analysis/producers/DependencyContext.java index c9ad0f2..2322b8a 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/producers/DependencyContext.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/producers/DependencyContext.java
@@ -16,7 +16,7 @@ import com.google.auto.value.AutoValue; import com.google.devtools.build.lib.analysis.ToolchainCollection; import com.google.devtools.build.lib.analysis.config.ConfigConditions; -import com.google.devtools.build.lib.skyframe.UnloadedToolchainContext; +import com.google.devtools.build.lib.skyframe.toolchains.UnloadedToolchainContext; import javax.annotation.Nullable; /**
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/producers/DependencyContextError.java b/src/main/java/com/google/devtools/build/lib/analysis/producers/DependencyContextError.java index 13c6d3c..faa2fdb 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/producers/DependencyContextError.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/producers/DependencyContextError.java
@@ -17,7 +17,7 @@ import com.google.devtools.build.lib.analysis.constraints.IncompatibleTargetChecker.IncompatibleTargetException; import com.google.devtools.build.lib.packages.ConfiguredAttributeMapper.ValidationException; import com.google.devtools.build.lib.skyframe.ConfiguredValueCreationException; -import com.google.devtools.build.lib.skyframe.ToolchainException; +import com.google.devtools.build.lib.skyframe.toolchains.ToolchainException; /** Tagged union of errors that can be encountered when creating the {@link DependencyContext}. */ @AutoOneOf(DependencyContextError.Kind.class)
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/producers/DependencyContextProducer.java b/src/main/java/com/google/devtools/build/lib/analysis/producers/DependencyContextProducer.java index 06b95fa..77a1c15 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/producers/DependencyContextProducer.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/producers/DependencyContextProducer.java
@@ -18,8 +18,8 @@ import com.google.devtools.build.lib.analysis.config.ConfigConditions; import com.google.devtools.build.lib.events.ExtendedEventHandler; import com.google.devtools.build.lib.skyframe.ConfiguredValueCreationException; -import com.google.devtools.build.lib.skyframe.ToolchainException; -import com.google.devtools.build.lib.skyframe.UnloadedToolchainContext; +import com.google.devtools.build.lib.skyframe.toolchains.ToolchainException; +import com.google.devtools.build.lib.skyframe.toolchains.UnloadedToolchainContext; import com.google.devtools.build.skyframe.state.StateMachine; import javax.annotation.Nullable;
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/producers/DependencyContextProducerWithCompatibilityCheck.java b/src/main/java/com/google/devtools/build/lib/analysis/producers/DependencyContextProducerWithCompatibilityCheck.java index ce3ae6e..18b44a6 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/producers/DependencyContextProducerWithCompatibilityCheck.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/producers/DependencyContextProducerWithCompatibilityCheck.java
@@ -24,10 +24,10 @@ import com.google.devtools.build.lib.packages.ConfiguredAttributeMapper.ValidationException; import com.google.devtools.build.lib.skyframe.ConfiguredTargetKey; import com.google.devtools.build.lib.skyframe.ConfiguredValueCreationException; -import com.google.devtools.build.lib.skyframe.PlatformLookupUtil.InvalidPlatformException; import com.google.devtools.build.lib.skyframe.RuleConfiguredTargetValue; -import com.google.devtools.build.lib.skyframe.ToolchainException; -import com.google.devtools.build.lib.skyframe.UnloadedToolchainContext; +import com.google.devtools.build.lib.skyframe.toolchains.PlatformLookupUtil.InvalidPlatformException; +import com.google.devtools.build.lib.skyframe.toolchains.ToolchainException; +import com.google.devtools.build.lib.skyframe.toolchains.UnloadedToolchainContext; import com.google.devtools.build.skyframe.state.StateMachine; import java.util.Optional; import javax.annotation.Nullable;
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/producers/PlatformInfoProducer.java b/src/main/java/com/google/devtools/build/lib/analysis/producers/PlatformInfoProducer.java index 0f5662f..88ff8e5 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/producers/PlatformInfoProducer.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/producers/PlatformInfoProducer.java
@@ -23,8 +23,8 @@ import com.google.devtools.build.lib.skyframe.ConfiguredTargetKey; import com.google.devtools.build.lib.skyframe.ConfiguredValueCreationException; import com.google.devtools.build.lib.skyframe.PackageValue; -import com.google.devtools.build.lib.skyframe.PlatformLookupUtil; -import com.google.devtools.build.lib.skyframe.PlatformLookupUtil.InvalidPlatformException; +import com.google.devtools.build.lib.skyframe.toolchains.PlatformLookupUtil; +import com.google.devtools.build.lib.skyframe.toolchains.PlatformLookupUtil.InvalidPlatformException; import com.google.devtools.build.skyframe.SkyValue; import com.google.devtools.build.skyframe.state.StateMachine; import javax.annotation.Nullable;
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/producers/UnloadedToolchainContextsInputs.java b/src/main/java/com/google/devtools/build/lib/analysis/producers/UnloadedToolchainContextsInputs.java index 90ce841..868deac 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/producers/UnloadedToolchainContextsInputs.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/producers/UnloadedToolchainContextsInputs.java
@@ -17,7 +17,7 @@ import com.google.common.collect.ImmutableMap; import com.google.devtools.build.lib.analysis.ExecGroupCollection; import com.google.devtools.build.lib.packages.ExecGroup; -import com.google.devtools.build.lib.skyframe.ToolchainContextKey; +import com.google.devtools.build.lib.skyframe.toolchains.ToolchainContextKey; import javax.annotation.Nullable; /** Collates inputs for the {@link UnloadedToolchainContextsProducer}. */
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/producers/UnloadedToolchainContextsProducer.java b/src/main/java/com/google/devtools/build/lib/analysis/producers/UnloadedToolchainContextsProducer.java index 4d618ed..f8369cf 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/producers/UnloadedToolchainContextsProducer.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/producers/UnloadedToolchainContextsProducer.java
@@ -18,10 +18,10 @@ import com.google.devtools.build.lib.analysis.ToolchainCollection; import com.google.devtools.build.lib.events.ExtendedEventHandler; import com.google.devtools.build.lib.packages.ExecGroup; -import com.google.devtools.build.lib.skyframe.NoMatchingPlatformException; -import com.google.devtools.build.lib.skyframe.ToolchainContextKey; -import com.google.devtools.build.lib.skyframe.ToolchainException; -import com.google.devtools.build.lib.skyframe.UnloadedToolchainContext; +import com.google.devtools.build.lib.skyframe.toolchains.NoMatchingPlatformException; +import com.google.devtools.build.lib.skyframe.toolchains.ToolchainContextKey; +import com.google.devtools.build.lib.skyframe.toolchains.ToolchainException; +import com.google.devtools.build.lib.skyframe.toolchains.UnloadedToolchainContext; import com.google.devtools.build.skyframe.SkyValue; import com.google.devtools.build.skyframe.state.StateMachine; import java.util.Map;
diff --git a/src/main/java/com/google/devtools/build/lib/query2/BUILD b/src/main/java/com/google/devtools/build/lib/query2/BUILD index 01a9a30..3c493cd 100644 --- a/src/main/java/com/google/devtools/build/lib/query2/BUILD +++ b/src/main/java/com/google/devtools/build/lib/query2/BUILD
@@ -103,12 +103,12 @@ "//src/main/java/com/google/devtools/build/lib/skyframe:sky_functions", "//src/main/java/com/google/devtools/build/lib/skyframe:skyframe_cluster", "//src/main/java/com/google/devtools/build/lib/skyframe:target_pattern_value", - "//src/main/java/com/google/devtools/build/lib/skyframe:toolchain_context_key", "//src/main/java/com/google/devtools/build/lib/skyframe:transitive_traversal_value", "//src/main/java/com/google/devtools/build/lib/skyframe:traversal_info_root_package_extractor", - "//src/main/java/com/google/devtools/build/lib/skyframe:unloaded_toolchain_context", "//src/main/java/com/google/devtools/build/lib/skyframe:workspace_name_value", "//src/main/java/com/google/devtools/build/lib/skyframe/actiongraph/v2:actiongraph_v2", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:toolchain_context_key", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:unloaded_toolchain_context", "//src/main/java/com/google/devtools/build/lib/supplier", "//src/main/java/com/google/devtools/build/lib/util", "//src/main/java/com/google/devtools/build/lib/util:command",
diff --git a/src/main/java/com/google/devtools/build/lib/query2/cquery/ConfiguredTargetAccessor.java b/src/main/java/com/google/devtools/build/lib/query2/cquery/ConfiguredTargetAccessor.java index f356d3e..0698fd7 100644 --- a/src/main/java/com/google/devtools/build/lib/query2/cquery/ConfiguredTargetAccessor.java +++ b/src/main/java/com/google/devtools/build/lib/query2/cquery/ConfiguredTargetAccessor.java
@@ -45,8 +45,8 @@ import com.google.devtools.build.lib.server.FailureDetails.ConfigurableQuery; import com.google.devtools.build.lib.skyframe.BuildConfigurationKey; import com.google.devtools.build.lib.skyframe.ConfiguredTargetKey; -import com.google.devtools.build.lib.skyframe.ToolchainContextKey; -import com.google.devtools.build.lib.skyframe.UnloadedToolchainContext; +import com.google.devtools.build.lib.skyframe.toolchains.ToolchainContextKey; +import com.google.devtools.build.lib.skyframe.toolchains.UnloadedToolchainContext; import com.google.devtools.build.skyframe.WalkableGraph; import java.util.List; import java.util.Map;
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/AbstractLabelCycleReporter.java b/src/main/java/com/google/devtools/build/lib/skyframe/AbstractLabelCycleReporter.java index d0eaf0a..7d82132 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/AbstractLabelCycleReporter.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/AbstractLabelCycleReporter.java
@@ -35,7 +35,7 @@ import java.util.function.Predicate; /** Reports cycles between skyframe values whose keys contains {@link Label}s. */ -abstract class AbstractLabelCycleReporter implements CyclesReporter.SingleCycleReporter { +public abstract class AbstractLabelCycleReporter implements CyclesReporter.SingleCycleReporter { private final PackageProvider packageProvider; @@ -131,7 +131,7 @@ } /** Prints the SkyKey-s in cycle into cycleMessage using the print function. */ - static SkyKey printCycle( + public static SkyKey printCycle( ImmutableList<SkyKey> cycle, StringBuilder cycleMessage, Function<Object, String> printFunction) {
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/AspectFunction.java b/src/main/java/com/google/devtools/build/lib/skyframe/AspectFunction.java index c64d876..5a10c2f 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/AspectFunction.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/AspectFunction.java
@@ -81,6 +81,8 @@ import com.google.devtools.build.lib.skyframe.AspectKeyCreator.AspectKey; import com.google.devtools.build.lib.skyframe.BzlLoadFunction.BzlLoadFailedException; import com.google.devtools.build.lib.skyframe.SkyframeExecutor.BuildViewProvider; +import com.google.devtools.build.lib.skyframe.toolchains.ToolchainException; +import com.google.devtools.build.lib.skyframe.toolchains.UnloadedToolchainContext; import com.google.devtools.build.lib.util.OrderedSetMultimap; import com.google.devtools.build.skyframe.SkyFunction; import com.google.devtools.build.skyframe.SkyFunction.Environment.SkyKeyComputeState;
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/BUILD b/src/main/java/com/google/devtools/build/lib/skyframe/BUILD index 0bcd731..7d20ece 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/BUILD +++ b/src/main/java/com/google/devtools/build/lib/skyframe/BUILD
@@ -14,6 +14,7 @@ "//src/main/java/com/google/devtools/build/lib/skyframe/proto:srcs", "//src/main/java/com/google/devtools/build/lib/skyframe/rewinding:srcs", "//src/main/java/com/google/devtools/build/lib/skyframe/serialization:srcs", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:srcs", ], visibility = ["//src:__subpackages__"], ) @@ -37,7 +38,6 @@ "CompletionFunction.java", "ConfiguredTargetEvaluationExceptions.java", "ConfiguredTargetFunction.java", - "ConstraintValueLookupUtil.java", "CoverageReportFunction.java", "DirectoryListingStateFunction.java", "DirtinessCheckerUtils.java", @@ -51,15 +51,8 @@ "PlatformMappingFunction.java", "PrepareDepsOfPatternFunction.java", "PrerequisiteProducer.java", - "RegisteredExecutionPlatformsFunction.java", - "RegisteredExecutionPlatformsValue.java", - "RegisteredToolchainsCycleReporter.java", - "RegisteredToolchainsFunction.java", - "RegisteredToolchainsValue.java", "SequencedSkyframeExecutor.java", "SequencedSkyframeExecutorFactory.java", - "SingleToolchainResolutionFunction.java", - "SingleToolchainResolutionValue.java", "SkyframeActionExecutor.java", "SkyframeAnalysisAndExecutionResult.java", "SkyframeAnalysisResult.java", @@ -77,15 +70,12 @@ "TargetPatternFunction.java", "TargetPatternPhaseFunction.java", "TestCompletionFunction.java", - "ToolchainResolutionFunction.java", - "ToolchainTypeLookupUtil.java", "TopLevelActionLookupConflictFindingFunction.java", "ToplevelStarlarkAspectFunction.java", "TransitiveTargetFunction.java", "WorkspaceFileFunction.java", ], deps = [ - ":abstract_label_cycle_reporter", ":action_artifact_cycle_reporter", ":action_environment_function", ":action_execution_inactivity_watchdog", @@ -152,7 +142,6 @@ ":local_repository_lookup_value", ":map_as_package_roots", ":metadata_consumer_for_metrics", - ":no_matching_platform_data", ":node_dropping_inconsistency_receiver", ":package_error_function", ":package_error_message_function", @@ -163,7 +152,6 @@ ":package_roots_no_symlink_creation", ":package_value", ":pattern_expanding_error", - ":platform_lookup_util", ":precomputed_function", ":precomputed_value", ":prepare_deps_of_pattern_value", @@ -196,7 +184,6 @@ ":target_loading_util", ":target_pattern_error_function", ":target_pattern_phase_value", - ":target_pattern_util", ":target_pattern_value", ":target_patterns_result_builder", ":test_completion_value", @@ -204,8 +191,6 @@ ":test_expansion_function", ":tests_for_target_pattern_function", ":tests_for_target_pattern_value", - ":toolchain_context_key", - ":toolchain_exception", ":top_level_action_lookup_key_wrapper", ":top_level_aspects_value", ":top_level_status_events", @@ -215,8 +200,6 @@ ":transitive_traversal_function", ":transitive_traversal_value", ":tree_artifact_value", - ":unloaded_toolchain_context", - ":unloaded_toolchain_context_impl", ":workspace_info", ":workspace_info_receiver", ":workspace_name_function", @@ -288,10 +271,8 @@ "//src/main/java/com/google/devtools/build/lib/analysis:view_creation_failed_exception", "//src/main/java/com/google/devtools/build/lib/analysis:workspace_status_action", "//src/main/java/com/google/devtools/build/lib/analysis/platform", - "//src/main/java/com/google/devtools/build/lib/analysis/platform:utils", "//src/main/java/com/google/devtools/build/lib/analysis/producers", "//src/main/java/com/google/devtools/build/lib/bazel/bzlmod:common", - "//src/main/java/com/google/devtools/build/lib/bazel/bzlmod:exception", "//src/main/java/com/google/devtools/build/lib/bazel/bzlmod:module_extension", "//src/main/java/com/google/devtools/build/lib/bazel/bzlmod:repo_rule_creator", "//src/main/java/com/google/devtools/build/lib/bazel/bzlmod:repo_rule_value", @@ -340,6 +321,14 @@ "//src/main/java/com/google/devtools/build/lib/skyframe/rewinding:rewindable_graph_inconsistency_receiver", "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec", "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec:serialization-constant", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:registered_execution_platforms_function", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:registered_toolchains_cycle_reporter", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:registered_toolchains_function", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:single_toolchain_resolution_function", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:toolchain_context_key", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:toolchain_exception", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:toolchain_resolution_function", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:unloaded_toolchain_context", "//src/main/java/com/google/devtools/build/lib/util", "//src/main/java/com/google/devtools/build/lib/util:TestType", "//src/main/java/com/google/devtools/build/lib/util:abrupt_exit_exception", @@ -1632,28 +1621,6 @@ ) java_library( - name = "no_matching_platform_data", - srcs = ["NoMatchingPlatformData.java"], - deps = [ - ":configured_target_key", - "//src/main/java/com/google/devtools/build/lib/analysis:config/toolchain_type_requirement", - "//src/main/java/com/google/devtools/build/lib/cmdline", - "//third_party:auto_value", - "//third_party:guava", - ], -) - -java_library( - name = "no_matching_platform_exception", - srcs = ["NoMatchingPlatformException.java"], - deps = [ - ":no_matching_platform_data", - ":toolchain_exception", - "//src/main/protobuf:failure_details_java_proto", - ], -) - -java_library( name = "output_store", srcs = ["OutputStore.java"], deps = [ @@ -1835,29 +1802,6 @@ ) java_library( - name = "platform_lookup_util", - srcs = ["PlatformLookupUtil.java"], - deps = [ - ":configured_target_key", - ":configured_value_creation_exception", - ":package_value", - ":toolchain_exception", - "//src/main/java/com/google/devtools/build/lib/actions", - "//src/main/java/com/google/devtools/build/lib/analysis:configured_target", - "//src/main/java/com/google/devtools/build/lib/analysis:configured_target_value", - "//src/main/java/com/google/devtools/build/lib/analysis/platform", - "//src/main/java/com/google/devtools/build/lib/analysis/platform:utils", - "//src/main/java/com/google/devtools/build/lib/bugreport", - "//src/main/java/com/google/devtools/build/lib/cmdline", - "//src/main/java/com/google/devtools/build/lib/packages", - "//src/main/java/com/google/devtools/build/skyframe", - "//src/main/protobuf:failure_details_java_proto", - "//third_party:guava", - "//third_party:jsr305", - ], -) - -java_library( name = "precomputed_function", srcs = ["PrecomputedFunction.java"], deps = [ @@ -2665,33 +2609,6 @@ ) java_library( - name = "toolchain_context_key", - srcs = ["ToolchainContextKey.java"], - deps = [ - ":build_configuration", - ":sky_functions", - "//src/main/java/com/google/devtools/build/lib/analysis:config/toolchain_type_requirement", - "//src/main/java/com/google/devtools/build/lib/cmdline", - "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects", - "//third_party:auto_value", - "//third_party:guava", - ], -) - -java_library( - name = "toolchain_exception", - srcs = ["ToolchainException.java"], - deps = [ - ":configured_value_creation_exception", - ":detailed_exceptions", - "//src/main/java/com/google/devtools/build/lib/analysis:target_and_configuration", - "//src/main/java/com/google/devtools/build/lib/util:detailed_exit_code", - "//src/main/protobuf:failure_details_java_proto", - "//third_party:guava", - ], -) - -java_library( name = "top_level_action_lookup_key_wrapper", srcs = ["TopLevelActionLookupKeyWrapper.java"], deps = [ @@ -2916,37 +2833,6 @@ ) java_library( - name = "unloaded_toolchain_context", - srcs = ["UnloadedToolchainContext.java"], - deps = [ - ":no_matching_platform_data", - "//src/main/java/com/google/devtools/build/lib/analysis: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/skyframe:skyframe-objects", - "//third_party:guava", - "//third_party:jsr305", - ], -) - -java_library( - name = "unloaded_toolchain_context_impl", - srcs = ["UnloadedToolchainContextImpl.java"], - deps = [ - ":no_matching_platform_data", - ":toolchain_context_key", - ":unloaded_toolchain_context", - "//src/main/java/com/google/devtools/build/lib/analysis:config/toolchain_type_requirement", - "//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/skyframe:skyframe-objects", - "//third_party:auto_value", - "//third_party:guava", - "//third_party:jsr305", - ], -) - -java_library( name = "workspace_info", srcs = ["WorkspaceInfoFromDiff.java"], )
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetFunction.java b/src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetFunction.java index 15606b7..766279b 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetFunction.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/ConfiguredTargetFunction.java
@@ -58,6 +58,8 @@ import com.google.devtools.build.lib.skyframe.ConfiguredTargetEvaluationExceptions.ReportedException; import com.google.devtools.build.lib.skyframe.ConfiguredTargetEvaluationExceptions.UnreportedException; import com.google.devtools.build.lib.skyframe.SkyframeExecutor.BuildViewProvider; +import com.google.devtools.build.lib.skyframe.toolchains.ToolchainException; +import com.google.devtools.build.lib.skyframe.toolchains.UnloadedToolchainContext; import com.google.devtools.build.lib.util.DetailedExitCode; import com.google.devtools.build.lib.util.DetailedExitCode.DetailedExitCodeComparator; import com.google.devtools.build.lib.util.OrderedSetMultimap;
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/PrerequisiteProducer.java b/src/main/java/com/google/devtools/build/lib/skyframe/PrerequisiteProducer.java index 7886822..d08854c 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/PrerequisiteProducer.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/PrerequisiteProducer.java
@@ -77,6 +77,9 @@ import com.google.devtools.build.lib.server.FailureDetails.FailureDetail; import com.google.devtools.build.lib.skyframe.ConfiguredTargetEvaluationExceptions.ReportedException; import com.google.devtools.build.lib.skyframe.ConfiguredTargetEvaluationExceptions.UnreportedException; +import com.google.devtools.build.lib.skyframe.toolchains.ToolchainContextKey; +import com.google.devtools.build.lib.skyframe.toolchains.ToolchainException; +import com.google.devtools.build.lib.skyframe.toolchains.UnloadedToolchainContext; import com.google.devtools.build.lib.util.DetailedExitCode; import com.google.devtools.build.lib.util.DetailedExitCode.DetailedExitCodeComparator; import com.google.devtools.build.lib.util.OrderedSetMultimap;
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/SkyFunctions.java b/src/main/java/com/google/devtools/build/lib/skyframe/SkyFunctions.java index 9eb8b4f..b109eec 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/SkyFunctions.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/SkyFunctions.java
@@ -123,11 +123,11 @@ SkyFunctionName.createHermetic("ACTION_TEMPLATE_EXPANSION"); public static final SkyFunctionName LOCAL_REPOSITORY_LOOKUP = SkyFunctionName.createHermetic("LOCAL_REPOSITORY_LOOKUP"); - static final SkyFunctionName REGISTERED_EXECUTION_PLATFORMS = + public static final SkyFunctionName REGISTERED_EXECUTION_PLATFORMS = SkyFunctionName.createHermetic("REGISTERED_EXECUTION_PLATFORMS"); - static final SkyFunctionName REGISTERED_TOOLCHAINS = + public static final SkyFunctionName REGISTERED_TOOLCHAINS = SkyFunctionName.createHermetic("REGISTERED_TOOLCHAINS"); - static final SkyFunctionName SINGLE_TOOLCHAIN_RESOLUTION = + public static final SkyFunctionName SINGLE_TOOLCHAIN_RESOLUTION = SkyFunctionName.createHermetic("SINGLE_TOOLCHAIN_RESOLUTION"); public static final SkyFunctionName TOOLCHAIN_RESOLUTION = SkyFunctionName.createHermetic("TOOLCHAIN_RESOLUTION");
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java b/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java index 178ecb1..b4eaf60 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java
@@ -199,6 +199,11 @@ import com.google.devtools.build.lib.skyframe.SkyframeActionExecutor.ActionCompletedReceiver; import com.google.devtools.build.lib.skyframe.SkyframeActionExecutor.ProgressSupplier; import com.google.devtools.build.lib.skyframe.TopLevelStatusEvents.SomeExecutionStartedEvent; +import com.google.devtools.build.lib.skyframe.toolchains.RegisteredExecutionPlatformsFunction; +import com.google.devtools.build.lib.skyframe.toolchains.RegisteredToolchainsCycleReporter; +import com.google.devtools.build.lib.skyframe.toolchains.RegisteredToolchainsFunction; +import com.google.devtools.build.lib.skyframe.toolchains.SingleToolchainResolutionFunction; +import com.google.devtools.build.lib.skyframe.toolchains.ToolchainResolutionFunction; import com.google.devtools.build.lib.util.AbruptExitException; import com.google.devtools.build.lib.util.DetailedExitCode; import com.google.devtools.build.lib.util.Pair;
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/BUILD b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/BUILD new file mode 100644 index 0000000..c62a9dc --- /dev/null +++ b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/BUILD
@@ -0,0 +1,349 @@ +load("@rules_java//java:defs.bzl", "java_library") + +package( + default_applicable_licenses = ["//:license"], + default_visibility = ["//src:__subpackages__"], +) + +filegroup( + name = "srcs", + srcs = glob(["**"]), + visibility = ["//src:__subpackages__"], +) + +java_library( + name = "constraint_value_lookup_util", + srcs = ["ConstraintValueLookupUtil.java"], + deps = [ + ":toolchain_exception", + "//src/main/java/com/google/devtools/build/lib/actions", + "//src/main/java/com/google/devtools/build/lib/analysis:configured_target", + "//src/main/java/com/google/devtools/build/lib/analysis:configured_target_value", + "//src/main/java/com/google/devtools/build/lib/analysis/platform", + "//src/main/java/com/google/devtools/build/lib/analysis/platform:utils", + "//src/main/java/com/google/devtools/build/lib/cmdline", + "//src/main/java/com/google/devtools/build/lib/packages", + "//src/main/java/com/google/devtools/build/lib/skyframe:configured_target_key", + "//src/main/java/com/google/devtools/build/lib/skyframe:configured_value_creation_exception", + "//src/main/java/com/google/devtools/build/skyframe", + "//src/main/protobuf:failure_details_java_proto", + "//third_party:guava", + "//third_party:jsr305", + ], +) + +java_library( + name = "no_matching_platform_data", + srcs = ["NoMatchingPlatformData.java"], + deps = [ + "//src/main/java/com/google/devtools/build/lib/analysis:config/toolchain_type_requirement", + "//src/main/java/com/google/devtools/build/lib/cmdline", + "//src/main/java/com/google/devtools/build/lib/skyframe:configured_target_key", + "//third_party:auto_value", + "//third_party:guava", + ], +) + +java_library( + name = "no_matching_platform_exception", + srcs = ["NoMatchingPlatformException.java"], + deps = [ + ":no_matching_platform_data", + ":toolchain_exception", + "//src/main/protobuf:failure_details_java_proto", + ], +) + +java_library( + name = "platform_lookup_util", + srcs = ["PlatformLookupUtil.java"], + deps = [ + ":toolchain_exception", + "//src/main/java/com/google/devtools/build/lib/actions", + "//src/main/java/com/google/devtools/build/lib/analysis:configured_target", + "//src/main/java/com/google/devtools/build/lib/analysis:configured_target_value", + "//src/main/java/com/google/devtools/build/lib/analysis/platform", + "//src/main/java/com/google/devtools/build/lib/analysis/platform:utils", + "//src/main/java/com/google/devtools/build/lib/bugreport", + "//src/main/java/com/google/devtools/build/lib/cmdline", + "//src/main/java/com/google/devtools/build/lib/packages", + "//src/main/java/com/google/devtools/build/lib/skyframe:configured_target_key", + "//src/main/java/com/google/devtools/build/lib/skyframe:configured_value_creation_exception", + "//src/main/java/com/google/devtools/build/lib/skyframe:package_value", + "//src/main/java/com/google/devtools/build/skyframe", + "//src/main/protobuf:failure_details_java_proto", + "//third_party:guava", + "//third_party:jsr305", + ], +) + +java_library( + name = "registered_execution_platforms_function", + srcs = ["RegisteredExecutionPlatformsFunction.java"], + deps = [ + ":platform_lookup_util", + ":registered_execution_platforms_value", + ":toolchain_exception", + "//src/main/java/com/google/devtools/build/lib/analysis:config/build_configuration", + "//src/main/java/com/google/devtools/build/lib/analysis:configured_target", + "//src/main/java/com/google/devtools/build/lib/analysis:configured_target_value", + "//src/main/java/com/google/devtools/build/lib/analysis:platform_configuration", + "//src/main/java/com/google/devtools/build/lib/analysis/platform", + "//src/main/java/com/google/devtools/build/lib/analysis/platform:utils", + "//src/main/java/com/google/devtools/build/lib/bazel/bzlmod:resolution", + "//src/main/java/com/google/devtools/build/lib/cmdline", + "//src/main/java/com/google/devtools/build/lib/packages", + "//src/main/java/com/google/devtools/build/lib/packages/semantics", + "//src/main/java/com/google/devtools/build/lib/pkgcache", + "//src/main/java/com/google/devtools/build/lib/skyframe:configured_target_key", + "//src/main/java/com/google/devtools/build/lib/skyframe:configured_value_creation_exception", + "//src/main/java/com/google/devtools/build/lib/skyframe:package_value", + "//src/main/java/com/google/devtools/build/lib/skyframe:precomputed_value", + "//src/main/java/com/google/devtools/build/lib/skyframe:repository_mapping_value", + "//src/main/java/com/google/devtools/build/lib/skyframe:sane_analysis_exception", + "//src/main/java/com/google/devtools/build/lib/skyframe:target_pattern_util", + "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec:serialization-constant", + "//src/main/java/com/google/devtools/build/lib/util:detailed_exit_code", + "//src/main/java/com/google/devtools/build/lib/vfs:pathfragment", + "//src/main/java/com/google/devtools/build/skyframe", + "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects", + "//src/main/java/net/starlark/java/eval", + "//src/main/protobuf:failure_details_java_proto", + "//third_party:guava", + "//third_party:jsr305", + ], +) + +java_library( + name = "registered_execution_platforms_value", + srcs = ["RegisteredExecutionPlatformsValue.java"], + deps = [ + "//src/main/java/com/google/devtools/build/lib/skyframe:build_configuration", + "//src/main/java/com/google/devtools/build/lib/skyframe:configured_target_key", + "//src/main/java/com/google/devtools/build/lib/skyframe:sky_functions", + "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec", + "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects", + "//third_party:auto_value", + "//third_party:guava", + ], +) + +java_library( + name = "registered_toolchains_cycle_reporter", + srcs = ["RegisteredToolchainsCycleReporter.java"], + deps = [ + ":registered_toolchains_value", + ":single_toolchain_resolution_value", + ":toolchain_context_key", + "//src/main/java/com/google/devtools/build/lib/analysis:config/toolchain_type_requirement", + "//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/skyframe:abstract_label_cycle_reporter", + "//src/main/java/com/google/devtools/build/lib/skyframe:configured_target_key", + "//src/main/java/com/google/devtools/build/lib/skyframe:sky_functions", + "//src/main/java/com/google/devtools/build/skyframe", + "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects", + "//third_party:guava", + ], +) + +java_library( + name = "registered_toolchains_function", + srcs = ["RegisteredToolchainsFunction.java"], + deps = [ + ":registered_toolchains_value", + ":toolchain_exception", + "//src/main/java/com/google/devtools/build/lib/actions:action_lookup_key", + "//src/main/java/com/google/devtools/build/lib/analysis:config/build_configuration", + "//src/main/java/com/google/devtools/build/lib/analysis:configured_target", + "//src/main/java/com/google/devtools/build/lib/analysis:configured_target_value", + "//src/main/java/com/google/devtools/build/lib/analysis:platform_configuration", + "//src/main/java/com/google/devtools/build/lib/analysis/platform", + "//src/main/java/com/google/devtools/build/lib/analysis/platform:utils", + "//src/main/java/com/google/devtools/build/lib/bazel/bzlmod:exception", + "//src/main/java/com/google/devtools/build/lib/bazel/bzlmod:resolution", + "//src/main/java/com/google/devtools/build/lib/cmdline", + "//src/main/java/com/google/devtools/build/lib/packages", + "//src/main/java/com/google/devtools/build/lib/packages/semantics", + "//src/main/java/com/google/devtools/build/lib/pkgcache", + "//src/main/java/com/google/devtools/build/lib/skyframe:configured_target_key", + "//src/main/java/com/google/devtools/build/lib/skyframe:configured_value_creation_exception", + "//src/main/java/com/google/devtools/build/lib/skyframe:package_value", + "//src/main/java/com/google/devtools/build/lib/skyframe:precomputed_value", + "//src/main/java/com/google/devtools/build/lib/skyframe:repository_mapping_value", + "//src/main/java/com/google/devtools/build/lib/skyframe:target_pattern_util", + "//src/main/java/com/google/devtools/build/lib/vfs:pathfragment", + "//src/main/java/com/google/devtools/build/skyframe", + "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects", + "//src/main/java/net/starlark/java/eval", + "//src/main/protobuf:failure_details_java_proto", + "//third_party:guava", + "//third_party:jsr305", + ], +) + +java_library( + name = "registered_toolchains_value", + srcs = ["RegisteredToolchainsValue.java"], + deps = [ + "//src/main/java/com/google/devtools/build/lib/analysis/platform", + "//src/main/java/com/google/devtools/build/lib/skyframe:build_configuration", + "//src/main/java/com/google/devtools/build/lib/skyframe:sky_functions", + "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec", + "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects", + "//third_party:auto_value", + "//third_party:guava", + ], +) + +java_library( + name = "single_toolchain_resolution_function", + srcs = ["SingleToolchainResolutionFunction.java"], + deps = [ + ":platform_lookup_util", + ":registered_toolchains_function", + ":registered_toolchains_value", + ":single_toolchain_resolution_value", + "//src/main/java/com/google/devtools/build/lib/analysis:config/build_configuration", + "//src/main/java/com/google/devtools/build/lib/analysis:config/config_matching_provider", + "//src/main/java/com/google/devtools/build/lib/analysis:config/toolchain_type_requirement", + "//src/main/java/com/google/devtools/build/lib/analysis:platform_configuration", + "//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/events", + "//src/main/java/com/google/devtools/build/lib/skyframe:configured_target_key", + "//src/main/java/com/google/devtools/build/skyframe", + "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects", + "//third_party:error_prone_annotations", + "//third_party:guava", + "//third_party:jsr305", + ], +) + +java_library( + name = "single_toolchain_resolution_value", + srcs = ["SingleToolchainResolutionValue.java"], + deps = [ + "//src/main/java/com/google/devtools/build/lib/analysis:config/toolchain_type_requirement", + "//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/skyframe:build_configuration", + "//src/main/java/com/google/devtools/build/lib/skyframe:configured_target_key", + "//src/main/java/com/google/devtools/build/lib/skyframe:sky_functions", + "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects", + "//third_party:auto_value", + "//third_party:guava", + ], +) + +java_library( + name = "toolchain_context_key", + srcs = ["ToolchainContextKey.java"], + deps = [ + "//src/main/java/com/google/devtools/build/lib/analysis:config/toolchain_type_requirement", + "//src/main/java/com/google/devtools/build/lib/cmdline", + "//src/main/java/com/google/devtools/build/lib/skyframe:build_configuration", + "//src/main/java/com/google/devtools/build/lib/skyframe:sky_functions", + "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects", + "//third_party:auto_value", + "//third_party:guava", + ], +) + +java_library( + name = "toolchain_exception", + srcs = ["ToolchainException.java"], + deps = [ + "//src/main/java/com/google/devtools/build/lib/analysis:target_and_configuration", + "//src/main/java/com/google/devtools/build/lib/skyframe:configured_value_creation_exception", + "//src/main/java/com/google/devtools/build/lib/skyframe:detailed_exceptions", + "//src/main/java/com/google/devtools/build/lib/util:detailed_exit_code", + "//src/main/protobuf:failure_details_java_proto", + "//third_party:guava", + ], +) + +java_library( + name = "toolchain_resolution_function", + srcs = ["ToolchainResolutionFunction.java"], + deps = [ + ":constraint_value_lookup_util", + ":no_matching_platform_data", + ":platform_lookup_util", + ":registered_execution_platforms_function", + ":registered_execution_platforms_value", + ":registered_toolchains_function", + ":single_toolchain_resolution_value", + ":toolchain_context_key", + ":toolchain_exception", + ":toolchain_type_lookup_util", + ":unloaded_toolchain_context", + ":unloaded_toolchain_context_impl", + "//src/main/java/com/google/devtools/build/lib/analysis:config/build_configuration", + "//src/main/java/com/google/devtools/build/lib/analysis:config/toolchain_type_requirement", + "//src/main/java/com/google/devtools/build/lib/analysis:platform_configuration", + "//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/events", + "//src/main/java/com/google/devtools/build/lib/skyframe:build_configuration", + "//src/main/java/com/google/devtools/build/lib/skyframe:configured_target_key", + "//src/main/java/com/google/devtools/build/skyframe", + "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects", + "//src/main/protobuf:failure_details_java_proto", + "//third_party:auto_value", + "//third_party:guava", + "//third_party:jsr305", + ], +) + +java_library( + name = "toolchain_type_lookup_util", + srcs = ["ToolchainTypeLookupUtil.java"], + deps = [ + ":toolchain_exception", + "//src/main/java/com/google/devtools/build/lib/actions", + "//src/main/java/com/google/devtools/build/lib/analysis:configured_target", + "//src/main/java/com/google/devtools/build/lib/analysis:configured_target_value", + "//src/main/java/com/google/devtools/build/lib/analysis/platform", + "//src/main/java/com/google/devtools/build/lib/analysis/platform:utils", + "//src/main/java/com/google/devtools/build/lib/cmdline", + "//src/main/java/com/google/devtools/build/lib/packages", + "//src/main/java/com/google/devtools/build/lib/skyframe:configured_target_key", + "//src/main/java/com/google/devtools/build/lib/skyframe:configured_value_creation_exception", + "//src/main/java/com/google/devtools/build/skyframe", + "//src/main/protobuf:failure_details_java_proto", + "//third_party:guava", + "//third_party:jsr305", + ], +) + +java_library( + name = "unloaded_toolchain_context", + srcs = ["UnloadedToolchainContext.java"], + deps = [ + ":no_matching_platform_data", + "//src/main/java/com/google/devtools/build/lib/analysis: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/skyframe:skyframe-objects", + "//third_party:guava", + "//third_party:jsr305", + ], +) + +java_library( + name = "unloaded_toolchain_context_impl", + srcs = ["UnloadedToolchainContextImpl.java"], + deps = [ + ":no_matching_platform_data", + ":toolchain_context_key", + ":unloaded_toolchain_context", + "//src/main/java/com/google/devtools/build/lib/analysis:config/toolchain_type_requirement", + "//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/skyframe:skyframe-objects", + "//third_party:auto_value", + "//third_party:guava", + "//third_party:jsr305", + ], +)
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/ConstraintValueLookupUtil.java b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/ConstraintValueLookupUtil.java similarity index 95% rename from src/main/java/com/google/devtools/build/lib/skyframe/ConstraintValueLookupUtil.java rename to src/main/java/com/google/devtools/build/lib/skyframe/toolchains/ConstraintValueLookupUtil.java index 3b36b91..b7316e6 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/ConstraintValueLookupUtil.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/ConstraintValueLookupUtil.java
@@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.devtools.build.lib.skyframe; +package com.google.devtools.build.lib.skyframe.toolchains; import com.google.common.collect.Iterables; import com.google.devtools.build.lib.actions.MutableActionGraph.ActionConflictException; @@ -23,6 +23,8 @@ import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.packages.NoSuchThingException; import com.google.devtools.build.lib.server.FailureDetails.Toolchain.Code; +import com.google.devtools.build.lib.skyframe.ConfiguredTargetKey; +import com.google.devtools.build.lib.skyframe.ConfiguredValueCreationException; import com.google.devtools.build.skyframe.SkyFunction.Environment; import com.google.devtools.build.skyframe.SkyframeLookupResult; import java.util.ArrayList;
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/NoMatchingPlatformData.java b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/NoMatchingPlatformData.java similarity index 95% rename from src/main/java/com/google/devtools/build/lib/skyframe/NoMatchingPlatformData.java rename to src/main/java/com/google/devtools/build/lib/skyframe/toolchains/NoMatchingPlatformData.java index 12859d5..ec9b5c9 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/NoMatchingPlatformData.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/NoMatchingPlatformData.java
@@ -11,7 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -package com.google.devtools.build.lib.skyframe; +package com.google.devtools.build.lib.skyframe.toolchains; import static java.util.stream.Collectors.joining; @@ -20,6 +20,7 @@ import com.google.common.collect.ImmutableSet; import com.google.devtools.build.lib.analysis.config.ToolchainTypeRequirement; import com.google.devtools.build.lib.cmdline.Label; +import com.google.devtools.build.lib.skyframe.ConfiguredTargetKey; /** Contains information related to missing execution platform. */ @AutoValue
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/NoMatchingPlatformException.java b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/NoMatchingPlatformException.java similarity index 94% rename from src/main/java/com/google/devtools/build/lib/skyframe/NoMatchingPlatformException.java rename to src/main/java/com/google/devtools/build/lib/skyframe/toolchains/NoMatchingPlatformException.java index 4f9dc64..64002b8 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/NoMatchingPlatformException.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/NoMatchingPlatformException.java
@@ -11,7 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -package com.google.devtools.build.lib.skyframe; +package com.google.devtools.build.lib.skyframe.toolchains; import com.google.devtools.build.lib.server.FailureDetails;
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/PlatformLookupUtil.java b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/PlatformLookupUtil.java similarity index 96% rename from src/main/java/com/google/devtools/build/lib/skyframe/PlatformLookupUtil.java rename to src/main/java/com/google/devtools/build/lib/skyframe/toolchains/PlatformLookupUtil.java index 764cdcd..4523178 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/PlatformLookupUtil.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/PlatformLookupUtil.java
@@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.devtools.build.lib.skyframe; +package com.google.devtools.build.lib.skyframe.toolchains; import static com.google.common.collect.ImmutableSet.toImmutableSet; @@ -34,6 +34,9 @@ import com.google.devtools.build.lib.packages.Rule; import com.google.devtools.build.lib.packages.Target; import com.google.devtools.build.lib.server.FailureDetails.Toolchain.Code; +import com.google.devtools.build.lib.skyframe.ConfiguredTargetKey; +import com.google.devtools.build.lib.skyframe.ConfiguredValueCreationException; +import com.google.devtools.build.lib.skyframe.PackageValue; import com.google.devtools.build.skyframe.SkyFunction.Environment; import com.google.devtools.build.skyframe.SkyframeLookupResult; import java.util.HashMap;
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/RegisteredExecutionPlatformsFunction.java b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/RegisteredExecutionPlatformsFunction.java similarity index 94% rename from src/main/java/com/google/devtools/build/lib/skyframe/RegisteredExecutionPlatformsFunction.java rename to src/main/java/com/google/devtools/build/lib/skyframe/toolchains/RegisteredExecutionPlatformsFunction.java index e0ca835..39dcd01 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/RegisteredExecutionPlatformsFunction.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/RegisteredExecutionPlatformsFunction.java
@@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.devtools.build.lib.skyframe; +package com.google.devtools.build.lib.skyframe.toolchains; import static com.google.common.collect.ImmutableList.toImmutableList; @@ -41,9 +41,16 @@ import com.google.devtools.build.lib.server.FailureDetails.Analysis.Code; import com.google.devtools.build.lib.server.FailureDetails.FailureDetail; import com.google.devtools.build.lib.server.FailureDetails.Toolchain; -import com.google.devtools.build.lib.skyframe.PlatformLookupUtil.InvalidPlatformException; +import com.google.devtools.build.lib.skyframe.ConfiguredTargetKey; +import com.google.devtools.build.lib.skyframe.ConfiguredValueCreationException; +import com.google.devtools.build.lib.skyframe.PackageValue; +import com.google.devtools.build.lib.skyframe.PrecomputedValue; +import com.google.devtools.build.lib.skyframe.RepositoryMappingValue; +import com.google.devtools.build.lib.skyframe.SaneAnalysisException; +import com.google.devtools.build.lib.skyframe.TargetPatternUtil; import com.google.devtools.build.lib.skyframe.TargetPatternUtil.InvalidTargetPatternException; import com.google.devtools.build.lib.skyframe.serialization.autocodec.SerializationConstant; +import com.google.devtools.build.lib.skyframe.toolchains.PlatformLookupUtil.InvalidPlatformException; import com.google.devtools.build.lib.util.DetailedExitCode; import com.google.devtools.build.lib.vfs.PathFragment; import com.google.devtools.build.skyframe.SkyFunction;
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/RegisteredExecutionPlatformsValue.java b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/RegisteredExecutionPlatformsValue.java similarity index 91% rename from src/main/java/com/google/devtools/build/lib/skyframe/RegisteredExecutionPlatformsValue.java rename to src/main/java/com/google/devtools/build/lib/skyframe/toolchains/RegisteredExecutionPlatformsValue.java index f8ee577..1246833 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/RegisteredExecutionPlatformsValue.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/RegisteredExecutionPlatformsValue.java
@@ -12,10 +12,13 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.devtools.build.lib.skyframe; +package com.google.devtools.build.lib.skyframe.toolchains; import com.google.auto.value.AutoValue; import com.google.common.collect.ImmutableList; +import com.google.devtools.build.lib.skyframe.BuildConfigurationKey; +import com.google.devtools.build.lib.skyframe.ConfiguredTargetKey; +import com.google.devtools.build.lib.skyframe.SkyFunctions; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.skyframe.SkyFunctionName; import com.google.devtools.build.skyframe.SkyKey;
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/RegisteredToolchainsCycleReporter.java b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/RegisteredToolchainsCycleReporter.java similarity index 93% rename from src/main/java/com/google/devtools/build/lib/skyframe/RegisteredToolchainsCycleReporter.java rename to src/main/java/com/google/devtools/build/lib/skyframe/toolchains/RegisteredToolchainsCycleReporter.java index c6af24c..53c44e5 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/RegisteredToolchainsCycleReporter.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/RegisteredToolchainsCycleReporter.java
@@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.devtools.build.lib.skyframe; +package com.google.devtools.build.lib.skyframe.toolchains; import static java.util.stream.Collectors.joining; @@ -25,7 +25,10 @@ import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.events.Event; import com.google.devtools.build.lib.events.ExtendedEventHandler; -import com.google.devtools.build.lib.skyframe.SingleToolchainResolutionValue.SingleToolchainResolutionKey; +import com.google.devtools.build.lib.skyframe.AbstractLabelCycleReporter; +import com.google.devtools.build.lib.skyframe.ConfiguredTargetKey; +import com.google.devtools.build.lib.skyframe.SkyFunctions; +import com.google.devtools.build.lib.skyframe.toolchains.SingleToolchainResolutionValue.SingleToolchainResolutionKey; import com.google.devtools.build.skyframe.CycleInfo; import com.google.devtools.build.skyframe.CyclesReporter; import com.google.devtools.build.skyframe.SkyKey;
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/RegisteredToolchainsFunction.java b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/RegisteredToolchainsFunction.java similarity index 95% rename from src/main/java/com/google/devtools/build/lib/skyframe/RegisteredToolchainsFunction.java rename to src/main/java/com/google/devtools/build/lib/skyframe/toolchains/RegisteredToolchainsFunction.java index 81130b2..98bcbda 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/RegisteredToolchainsFunction.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/RegisteredToolchainsFunction.java
@@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.devtools.build.lib.skyframe; +package com.google.devtools.build.lib.skyframe.toolchains; import static com.google.common.collect.ImmutableList.toImmutableList; @@ -38,6 +38,12 @@ import com.google.devtools.build.lib.packages.semantics.BuildLanguageOptions; import com.google.devtools.build.lib.pkgcache.FilteringPolicies; import com.google.devtools.build.lib.server.FailureDetails.Toolchain.Code; +import com.google.devtools.build.lib.skyframe.ConfiguredTargetKey; +import com.google.devtools.build.lib.skyframe.ConfiguredValueCreationException; +import com.google.devtools.build.lib.skyframe.PackageValue; +import com.google.devtools.build.lib.skyframe.PrecomputedValue; +import com.google.devtools.build.lib.skyframe.RepositoryMappingValue; +import com.google.devtools.build.lib.skyframe.TargetPatternUtil; import com.google.devtools.build.lib.skyframe.TargetPatternUtil.InvalidTargetPatternException; import com.google.devtools.build.lib.vfs.PathFragment; import com.google.devtools.build.skyframe.SkyFunction;
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/RegisteredToolchainsValue.java b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/RegisteredToolchainsValue.java similarity index 94% rename from src/main/java/com/google/devtools/build/lib/skyframe/RegisteredToolchainsValue.java rename to src/main/java/com/google/devtools/build/lib/skyframe/toolchains/RegisteredToolchainsValue.java index 01fa349..d9139d7 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/RegisteredToolchainsValue.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/RegisteredToolchainsValue.java
@@ -12,11 +12,13 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.devtools.build.lib.skyframe; +package com.google.devtools.build.lib.skyframe.toolchains; import com.google.auto.value.AutoValue; import com.google.common.collect.ImmutableList; import com.google.devtools.build.lib.analysis.platform.DeclaredToolchainInfo; +import com.google.devtools.build.lib.skyframe.BuildConfigurationKey; +import com.google.devtools.build.lib.skyframe.SkyFunctions; import com.google.devtools.build.lib.skyframe.serialization.autocodec.AutoCodec; import com.google.devtools.build.skyframe.SkyFunctionName; import com.google.devtools.build.skyframe.SkyKey;
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/SingleToolchainResolutionFunction.java b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/SingleToolchainResolutionFunction.java similarity index 96% rename from src/main/java/com/google/devtools/build/lib/skyframe/SingleToolchainResolutionFunction.java rename to src/main/java/com/google/devtools/build/lib/skyframe/toolchains/SingleToolchainResolutionFunction.java index 59fc7e0..96de665 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/SingleToolchainResolutionFunction.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/SingleToolchainResolutionFunction.java
@@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.devtools.build.lib.skyframe; +package com.google.devtools.build.lib.skyframe.toolchains; import static com.google.common.collect.ImmutableList.toImmutableList; import static java.util.stream.Collectors.joining; @@ -32,9 +32,10 @@ import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.events.Event; import com.google.devtools.build.lib.events.EventHandler; -import com.google.devtools.build.lib.skyframe.PlatformLookupUtil.InvalidPlatformException; -import com.google.devtools.build.lib.skyframe.RegisteredToolchainsFunction.InvalidToolchainLabelException; -import com.google.devtools.build.lib.skyframe.SingleToolchainResolutionValue.SingleToolchainResolutionKey; +import com.google.devtools.build.lib.skyframe.ConfiguredTargetKey; +import com.google.devtools.build.lib.skyframe.toolchains.PlatformLookupUtil.InvalidPlatformException; +import com.google.devtools.build.lib.skyframe.toolchains.RegisteredToolchainsFunction.InvalidToolchainLabelException; +import com.google.devtools.build.lib.skyframe.toolchains.SingleToolchainResolutionValue.SingleToolchainResolutionKey; import com.google.devtools.build.skyframe.SkyFunction; import com.google.devtools.build.skyframe.SkyFunctionException; import com.google.devtools.build.skyframe.SkyKey;
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/SingleToolchainResolutionValue.java b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/SingleToolchainResolutionValue.java similarity index 94% rename from src/main/java/com/google/devtools/build/lib/skyframe/SingleToolchainResolutionValue.java rename to src/main/java/com/google/devtools/build/lib/skyframe/toolchains/SingleToolchainResolutionValue.java index a9718ed..9c1cba2 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/SingleToolchainResolutionValue.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/SingleToolchainResolutionValue.java
@@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.devtools.build.lib.skyframe; +package com.google.devtools.build.lib.skyframe.toolchains; import com.google.auto.value.AutoValue; import com.google.common.annotations.VisibleForTesting; @@ -21,6 +21,9 @@ import com.google.devtools.build.lib.analysis.config.ToolchainTypeRequirement; import com.google.devtools.build.lib.analysis.platform.ToolchainTypeInfo; import com.google.devtools.build.lib.cmdline.Label; +import com.google.devtools.build.lib.skyframe.BuildConfigurationKey; +import com.google.devtools.build.lib.skyframe.ConfiguredTargetKey; +import com.google.devtools.build.lib.skyframe.SkyFunctions; import com.google.devtools.build.skyframe.SkyFunctionName; import com.google.devtools.build.skyframe.SkyKey; import com.google.devtools.build.skyframe.SkyValue;
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/ToolchainContextKey.java b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/ToolchainContextKey.java similarity index 93% rename from src/main/java/com/google/devtools/build/lib/skyframe/ToolchainContextKey.java rename to src/main/java/com/google/devtools/build/lib/skyframe/toolchains/ToolchainContextKey.java index c9551c9..416c421 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/ToolchainContextKey.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/ToolchainContextKey.java
@@ -11,13 +11,14 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -package com.google.devtools.build.lib.skyframe; - +package com.google.devtools.build.lib.skyframe.toolchains; import com.google.auto.value.AutoValue; import com.google.common.collect.ImmutableSet; import com.google.devtools.build.lib.analysis.config.ToolchainTypeRequirement; import com.google.devtools.build.lib.cmdline.Label; +import com.google.devtools.build.lib.skyframe.BuildConfigurationKey; +import com.google.devtools.build.lib.skyframe.SkyFunctions; import com.google.devtools.build.skyframe.SkyFunctionName; import com.google.devtools.build.skyframe.SkyKey; import java.util.Optional;
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/ToolchainException.java b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/ToolchainException.java similarity index 90% rename from src/main/java/com/google/devtools/build/lib/skyframe/ToolchainException.java rename to src/main/java/com/google/devtools/build/lib/skyframe/toolchains/ToolchainException.java index 20724b4..f121231 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/ToolchainException.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/ToolchainException.java
@@ -11,13 +11,15 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -package com.google.devtools.build.lib.skyframe; +package com.google.devtools.build.lib.skyframe.toolchains; import com.google.common.base.Strings; import com.google.devtools.build.lib.analysis.TargetAndConfiguration; import com.google.devtools.build.lib.server.FailureDetails; import com.google.devtools.build.lib.server.FailureDetails.FailureDetail; import com.google.devtools.build.lib.server.FailureDetails.Toolchain.Code; +import com.google.devtools.build.lib.skyframe.ConfiguredValueCreationException; +import com.google.devtools.build.lib.skyframe.DetailedException; import com.google.devtools.build.lib.util.DetailedExitCode; /** Base class for exceptions that happen during toolchain resolution. */ @@ -56,7 +58,7 @@ * * <p>If one cannot be found, make a new one. */ - ConfiguredValueCreationException asConfiguredValueCreationException( + public ConfiguredValueCreationException asConfiguredValueCreationException( TargetAndConfiguration targetAndConfiguration) { for (Throwable cause = getCause(); cause != null && cause != cause.getCause();
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/ToolchainResolutionFunction.java b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/ToolchainResolutionFunction.java similarity index 95% rename from src/main/java/com/google/devtools/build/lib/skyframe/ToolchainResolutionFunction.java rename to src/main/java/com/google/devtools/build/lib/skyframe/toolchains/ToolchainResolutionFunction.java index 83c6a8a..99def70 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/ToolchainResolutionFunction.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/ToolchainResolutionFunction.java
@@ -11,7 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -package com.google.devtools.build.lib.skyframe; +package com.google.devtools.build.lib.skyframe.toolchains; import static com.google.common.collect.ImmutableList.toImmutableList; import static com.google.common.collect.ImmutableSet.toImmutableSet; @@ -34,12 +34,14 @@ import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.events.Event; import com.google.devtools.build.lib.server.FailureDetails.Toolchain.Code; -import com.google.devtools.build.lib.skyframe.ConstraintValueLookupUtil.InvalidConstraintValueException; -import com.google.devtools.build.lib.skyframe.PlatformLookupUtil.InvalidPlatformException; -import com.google.devtools.build.lib.skyframe.RegisteredExecutionPlatformsFunction.InvalidExecutionPlatformLabelException; -import com.google.devtools.build.lib.skyframe.RegisteredToolchainsFunction.InvalidToolchainLabelException; -import com.google.devtools.build.lib.skyframe.SingleToolchainResolutionValue.SingleToolchainResolutionKey; -import com.google.devtools.build.lib.skyframe.ToolchainTypeLookupUtil.InvalidToolchainTypeException; +import com.google.devtools.build.lib.skyframe.BuildConfigurationKey; +import com.google.devtools.build.lib.skyframe.ConfiguredTargetKey; +import com.google.devtools.build.lib.skyframe.toolchains.ConstraintValueLookupUtil.InvalidConstraintValueException; +import com.google.devtools.build.lib.skyframe.toolchains.PlatformLookupUtil.InvalidPlatformException; +import com.google.devtools.build.lib.skyframe.toolchains.RegisteredExecutionPlatformsFunction.InvalidExecutionPlatformLabelException; +import com.google.devtools.build.lib.skyframe.toolchains.RegisteredToolchainsFunction.InvalidToolchainLabelException; +import com.google.devtools.build.lib.skyframe.toolchains.SingleToolchainResolutionValue.SingleToolchainResolutionKey; +import com.google.devtools.build.lib.skyframe.toolchains.ToolchainTypeLookupUtil.InvalidToolchainTypeException; import com.google.devtools.build.skyframe.SkyFunction; import com.google.devtools.build.skyframe.SkyFunctionException; import com.google.devtools.build.skyframe.SkyKey; @@ -283,8 +285,9 @@ .build(); // Load the host and target platforms early, to check for errors. - PlatformLookupUtil.getPlatformInfo( - ImmutableList.of(hostPlatformKey, targetPlatformKey), environment); + var unused = + PlatformLookupUtil.getPlatformInfo( + ImmutableList.of(hostPlatformKey, targetPlatformKey), environment); if (environment.valuesMissing()) { throw new ValueMissingException(); }
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/ToolchainTypeLookupUtil.java b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/ToolchainTypeLookupUtil.java similarity index 96% rename from src/main/java/com/google/devtools/build/lib/skyframe/ToolchainTypeLookupUtil.java rename to src/main/java/com/google/devtools/build/lib/skyframe/toolchains/ToolchainTypeLookupUtil.java index c9f5846..2d18b84 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/ToolchainTypeLookupUtil.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/ToolchainTypeLookupUtil.java
@@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.devtools.build.lib.skyframe; +package com.google.devtools.build.lib.skyframe.toolchains; import com.google.common.collect.ImmutableMap; import com.google.common.collect.Iterables; @@ -24,6 +24,8 @@ import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.packages.NoSuchThingException; import com.google.devtools.build.lib.server.FailureDetails.Toolchain.Code; +import com.google.devtools.build.lib.skyframe.ConfiguredTargetKey; +import com.google.devtools.build.lib.skyframe.ConfiguredValueCreationException; import com.google.devtools.build.skyframe.SkyFunction.Environment; import com.google.devtools.build.skyframe.SkyframeLookupResult; import java.util.HashMap;
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/UnloadedToolchainContext.java b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/UnloadedToolchainContext.java similarity index 96% rename from src/main/java/com/google/devtools/build/lib/skyframe/UnloadedToolchainContext.java rename to src/main/java/com/google/devtools/build/lib/skyframe/toolchains/UnloadedToolchainContext.java index 6b915a4..bec755a 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/UnloadedToolchainContext.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/UnloadedToolchainContext.java
@@ -11,7 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -package com.google.devtools.build.lib.skyframe; +package com.google.devtools.build.lib.skyframe.toolchains; import com.google.common.collect.ImmutableMap; import com.google.common.collect.ImmutableSet;
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/UnloadedToolchainContextImpl.java b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/UnloadedToolchainContextImpl.java similarity index 98% rename from src/main/java/com/google/devtools/build/lib/skyframe/UnloadedToolchainContextImpl.java rename to src/main/java/com/google/devtools/build/lib/skyframe/toolchains/UnloadedToolchainContextImpl.java index 9124e033f..6ec4245 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/UnloadedToolchainContextImpl.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/toolchains/UnloadedToolchainContextImpl.java
@@ -11,7 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -package com.google.devtools.build.lib.skyframe; +package com.google.devtools.build.lib.skyframe.toolchains; import com.google.auto.value.AutoValue; import com.google.common.collect.ImmutableMap;
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 932b361..4b5a805 100644 --- a/src/test/java/com/google/devtools/build/lib/analysis/BUILD +++ b/src/test/java/com/google/devtools/build/lib/analysis/BUILD
@@ -151,14 +151,14 @@ "//src/main/java/com/google/devtools/build/lib/skyframe:configured_target_key", "//src/main/java/com/google/devtools/build/lib/skyframe:precomputed_value", "//src/main/java/com/google/devtools/build/lib/skyframe:skyframe_cluster", - "//src/main/java/com/google/devtools/build/lib/skyframe:toolchain_context_key", - "//src/main/java/com/google/devtools/build/lib/skyframe:toolchain_exception", - "//src/main/java/com/google/devtools/build/lib/skyframe:unloaded_toolchain_context", - "//src/main/java/com/google/devtools/build/lib/skyframe:unloaded_toolchain_context_impl", "//src/main/java/com/google/devtools/build/lib/skyframe:workspace_status_value", "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec", "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/testutils", "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/testutils:depsutils", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:toolchain_context_key", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:toolchain_exception", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:unloaded_toolchain_context", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:unloaded_toolchain_context_impl", "//src/main/java/com/google/devtools/build/lib/util", "//src/main/java/com/google/devtools/build/lib/util:detailed_exit_code", "//src/main/java/com/google/devtools/build/lib/util:filetype",
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/ResolvedToolchainContextTest.java b/src/test/java/com/google/devtools/build/lib/analysis/ResolvedToolchainContextTest.java index 0b2d062..bbaa6c2 100644 --- a/src/test/java/com/google/devtools/build/lib/analysis/ResolvedToolchainContextTest.java +++ b/src/test/java/com/google/devtools/build/lib/analysis/ResolvedToolchainContextTest.java
@@ -26,10 +26,10 @@ import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.rules.platform.ToolchainTestCase; import com.google.devtools.build.lib.skyframe.ConfiguredTargetAndData; -import com.google.devtools.build.lib.skyframe.ToolchainContextKey; -import com.google.devtools.build.lib.skyframe.ToolchainException; -import com.google.devtools.build.lib.skyframe.UnloadedToolchainContext; -import com.google.devtools.build.lib.skyframe.UnloadedToolchainContextImpl; +import com.google.devtools.build.lib.skyframe.toolchains.ToolchainContextKey; +import com.google.devtools.build.lib.skyframe.toolchains.ToolchainException; +import com.google.devtools.build.lib.skyframe.toolchains.UnloadedToolchainContext; +import com.google.devtools.build.lib.skyframe.toolchains.UnloadedToolchainContextImpl; import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.JUnit4;
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/util/BUILD b/src/test/java/com/google/devtools/build/lib/analysis/util/BUILD index 7e9268c..d7c0d49 100644 --- a/src/test/java/com/google/devtools/build/lib/analysis/util/BUILD +++ b/src/test/java/com/google/devtools/build/lib/analysis/util/BUILD
@@ -121,10 +121,10 @@ "//src/main/java/com/google/devtools/build/lib/skyframe:skyframe_executor_repository_helpers_holder", "//src/main/java/com/google/devtools/build/lib/skyframe:starlark_builtins_value", "//src/main/java/com/google/devtools/build/lib/skyframe:target_pattern_phase_value", - "//src/main/java/com/google/devtools/build/lib/skyframe:toolchain_exception", - "//src/main/java/com/google/devtools/build/lib/skyframe:unloaded_toolchain_context", "//src/main/java/com/google/devtools/build/lib/skyframe:workspace_info", "//src/main/java/com/google/devtools/build/lib/skyframe/packages:PackageFactoryBuilderWithSkyframeForTesting", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:toolchain_exception", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:unloaded_toolchain_context", "//src/main/java/com/google/devtools/build/lib/util", "//src/main/java/com/google/devtools/build/lib/util:abrupt_exit_exception", "//src/main/java/com/google/devtools/build/lib/util:crash_failure_details",
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/util/BuildViewForTesting.java b/src/test/java/com/google/devtools/build/lib/analysis/util/BuildViewForTesting.java index ea1c2e7..d1b2ef0 100644 --- a/src/test/java/com/google/devtools/build/lib/analysis/util/BuildViewForTesting.java +++ b/src/test/java/com/google/devtools/build/lib/analysis/util/BuildViewForTesting.java
@@ -114,8 +114,8 @@ import com.google.devtools.build.lib.skyframe.SkyframeExecutorWrappingWalkableGraph; import com.google.devtools.build.lib.skyframe.StarlarkBuiltinsValue; import com.google.devtools.build.lib.skyframe.TargetPatternPhaseValue; -import com.google.devtools.build.lib.skyframe.ToolchainException; -import com.google.devtools.build.lib.skyframe.UnloadedToolchainContext; +import com.google.devtools.build.lib.skyframe.toolchains.ToolchainException; +import com.google.devtools.build.lib.skyframe.toolchains.UnloadedToolchainContext; import com.google.devtools.build.lib.util.AbruptExitException; import com.google.devtools.build.lib.util.OrderedSetMultimap; import com.google.devtools.build.skyframe.NodeEntry;
diff --git a/src/test/java/com/google/devtools/build/lib/repository/BUILD b/src/test/java/com/google/devtools/build/lib/repository/BUILD index b7b5c05..a44de9a 100644 --- a/src/test/java/com/google/devtools/build/lib/repository/BUILD +++ b/src/test/java/com/google/devtools/build/lib/repository/BUILD
@@ -33,6 +33,8 @@ "//src/main/java/com/google/devtools/build/lib/skyframe:precomputed_value", "//src/main/java/com/google/devtools/build/lib/skyframe:sky_functions", "//src/main/java/com/google/devtools/build/lib/skyframe:skyframe_cluster", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:registered_execution_platforms_function", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:registered_toolchains_function", "//src/main/java/com/google/devtools/build/lib/util/io", "//src/main/java/com/google/devtools/build/lib/vfs", "//src/main/java/com/google/devtools/build/skyframe",
diff --git a/src/test/java/com/google/devtools/build/lib/repository/ExternalPackageHelperTest.java b/src/test/java/com/google/devtools/build/lib/repository/ExternalPackageHelperTest.java index 17f643d..8f1ee41 100644 --- a/src/test/java/com/google/devtools/build/lib/repository/ExternalPackageHelperTest.java +++ b/src/test/java/com/google/devtools/build/lib/repository/ExternalPackageHelperTest.java
@@ -52,11 +52,11 @@ import com.google.devtools.build.lib.skyframe.PackageLookupFunction; import com.google.devtools.build.lib.skyframe.PackageLookupFunction.CrossRepositoryLabelViolationStrategy; import com.google.devtools.build.lib.skyframe.PrecomputedValue; -import com.google.devtools.build.lib.skyframe.RegisteredExecutionPlatformsFunction; -import com.google.devtools.build.lib.skyframe.RegisteredToolchainsFunction; import com.google.devtools.build.lib.skyframe.SkyFunctions; import com.google.devtools.build.lib.skyframe.SkyframeExecutor; import com.google.devtools.build.lib.skyframe.WorkspaceFileFunction; +import com.google.devtools.build.lib.skyframe.toolchains.RegisteredExecutionPlatformsFunction; +import com.google.devtools.build.lib.skyframe.toolchains.RegisteredToolchainsFunction; import com.google.devtools.build.lib.util.io.TimestampGranularityMonitor; import com.google.devtools.build.lib.vfs.FileStateKey; import com.google.devtools.build.lib.vfs.Path;
diff --git a/src/test/java/com/google/devtools/build/lib/rules/platform/BUILD b/src/test/java/com/google/devtools/build/lib/rules/platform/BUILD index 6f2f949..88cdeea 100644 --- a/src/test/java/com/google/devtools/build/lib/rules/platform/BUILD +++ b/src/test/java/com/google/devtools/build/lib/rules/platform/BUILD
@@ -44,7 +44,7 @@ "//src/main/java/com/google/devtools/build/lib/analysis:config/toolchain_type_requirement", "//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/skyframe:skyframe_cluster", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:registered_toolchains_value", "//src/main/java/com/google/devtools/build/skyframe", "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects", "//src/test/java/com/google/devtools/build/lib/analysis/util",
diff --git a/src/test/java/com/google/devtools/build/lib/rules/platform/ToolchainTestCase.java b/src/test/java/com/google/devtools/build/lib/rules/platform/ToolchainTestCase.java index 966a6d7..78e06b2 100644 --- a/src/test/java/com/google/devtools/build/lib/rules/platform/ToolchainTestCase.java +++ b/src/test/java/com/google/devtools/build/lib/rules/platform/ToolchainTestCase.java
@@ -28,7 +28,7 @@ import com.google.devtools.build.lib.analysis.util.BuildViewTestCase; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.cmdline.PackageIdentifier; -import com.google.devtools.build.lib.skyframe.RegisteredToolchainsValue; +import com.google.devtools.build.lib.skyframe.toolchains.RegisteredToolchainsValue; import com.google.devtools.build.lib.skyframe.util.SkyframeExecutorTestUtils; import com.google.devtools.build.skyframe.EvaluationResult; import com.google.devtools.build.skyframe.SkyKey;
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/BUILD b/src/test/java/com/google/devtools/build/lib/skyframe/BUILD index c46ff90..ecca373 100644 --- a/src/test/java/com/google/devtools/build/lib/skyframe/BUILD +++ b/src/test/java/com/google/devtools/build/lib/skyframe/BUILD
@@ -8,7 +8,10 @@ filegroup( name = "srcs", testonly = 0, - srcs = glob(["**"]) + ["//src/test/java/com/google/devtools/build/lib/skyframe/rewinding:srcs"], + srcs = glob(["**"]) + [ + "//src/test/java/com/google/devtools/build/lib/skyframe/rewinding:srcs", + "//src/test/java/com/google/devtools/build/lib/skyframe/toolchains:srcs", + ], visibility = ["//src/test/java/com/google/devtools/build/lib:__pkg__"], ) @@ -226,14 +229,12 @@ "//src/main/java/com/google/devtools/build/lib/skyframe:incremental_artifact_conflict_finder", "//src/main/java/com/google/devtools/build/lib/skyframe:local_repository_lookup_value", "//src/main/java/com/google/devtools/build/lib/skyframe:metadata_consumer_for_metrics", - "//src/main/java/com/google/devtools/build/lib/skyframe:no_matching_platform_data", "//src/main/java/com/google/devtools/build/lib/skyframe:output_store", "//src/main/java/com/google/devtools/build/lib/skyframe:package_error_message_value", "//src/main/java/com/google/devtools/build/lib/skyframe:package_lookup_function", "//src/main/java/com/google/devtools/build/lib/skyframe:package_lookup_value", "//src/main/java/com/google/devtools/build/lib/skyframe:package_progress_receiver", "//src/main/java/com/google/devtools/build/lib/skyframe:package_value", - "//src/main/java/com/google/devtools/build/lib/skyframe:platform_lookup_util", "//src/main/java/com/google/devtools/build/lib/skyframe:precomputed_value", "//src/main/java/com/google/devtools/build/lib/skyframe:prepare_deps_of_pattern_value", "//src/main/java/com/google/devtools/build/lib/skyframe:prepare_deps_of_patterns_value", @@ -253,16 +254,12 @@ "//src/main/java/com/google/devtools/build/lib/skyframe:target_loading_util", "//src/main/java/com/google/devtools/build/lib/skyframe:target_pattern_phase_value", "//src/main/java/com/google/devtools/build/lib/skyframe:tests_for_target_pattern_value", - "//src/main/java/com/google/devtools/build/lib/skyframe:toolchain_context_key", - "//src/main/java/com/google/devtools/build/lib/skyframe:toolchain_exception", "//src/main/java/com/google/devtools/build/lib/skyframe:top_level_status_events", "//src/main/java/com/google/devtools/build/lib/skyframe:transitive_base_traversal_function", "//src/main/java/com/google/devtools/build/lib/skyframe:transitive_target_key", "//src/main/java/com/google/devtools/build/lib/skyframe:transitive_traversal_function", "//src/main/java/com/google/devtools/build/lib/skyframe:transitive_traversal_value", "//src/main/java/com/google/devtools/build/lib/skyframe:tree_artifact_value", - "//src/main/java/com/google/devtools/build/lib/skyframe:unloaded_toolchain_context", - "//src/main/java/com/google/devtools/build/lib/skyframe:unloaded_toolchain_context_impl", "//src/main/java/com/google/devtools/build/lib/skyframe:workspace_info", "//src/main/java/com/google/devtools/build/lib/skyframe:workspace_name_value", "//src/main/java/com/google/devtools/build/lib/skyframe/serialization", @@ -270,6 +267,12 @@ "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec:serialization-constant-annotation", "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/testutils", "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/testutils:depsutils", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:no_matching_platform_data", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:platform_lookup_util", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:toolchain_context_key", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:toolchain_exception", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:unloaded_toolchain_context", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:unloaded_toolchain_context_impl", "//src/main/java/com/google/devtools/build/lib/testing/common:directory_listing_helper", "//src/main/java/com/google/devtools/build/lib/testing/common:fake-options", "//src/main/java/com/google/devtools/build/lib/util",
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/ConfigurationsForTargetsTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/ConfigurationsForTargetsTest.java index 361ecdb..226dd97 100644 --- a/src/test/java/com/google/devtools/build/lib/skyframe/ConfigurationsForTargetsTest.java +++ b/src/test/java/com/google/devtools/build/lib/skyframe/ConfigurationsForTargetsTest.java
@@ -43,6 +43,8 @@ import com.google.devtools.build.lib.packages.Attribute; import com.google.devtools.build.lib.packages.RuleClassProvider; import com.google.devtools.build.lib.packages.Target; +import com.google.devtools.build.lib.skyframe.toolchains.ToolchainContextKey; +import com.google.devtools.build.lib.skyframe.toolchains.UnloadedToolchainContextImpl; import com.google.devtools.build.lib.skyframe.util.SkyframeExecutorTestUtils; import com.google.devtools.build.lib.util.OrderedSetMultimap; import com.google.devtools.build.skyframe.AbstractSkyKey;
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/toolchains/BUILD b/src/test/java/com/google/devtools/build/lib/skyframe/toolchains/BUILD new file mode 100644 index 0000000..2c10f66 --- /dev/null +++ b/src/test/java/com/google/devtools/build/lib/skyframe/toolchains/BUILD
@@ -0,0 +1,213 @@ +load("@rules_java//java:defs.bzl", "java_test") + +package( + default_applicable_licenses = ["//:license"], + default_testonly = 1, + default_visibility = ["//src:__subpackages__"], +) + +filegroup( + name = "srcs", + testonly = 0, + srcs = glob(["**"]), + visibility = ["//src:__subpackages__"], +) + +java_test( + name = "ConstraintValueLookupUtilTest", + srcs = ["ConstraintValueLookupUtilTest.java"], + deps = [ + "//src/main/java/com/google/devtools/build/lib/analysis:blaze_directories", + "//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/skyframe:configured_target_key", + "//src/main/java/com/google/devtools/build/lib/skyframe:configured_value_creation_exception", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:constraint_value_lookup_util", + "//src/main/java/com/google/devtools/build/skyframe", + "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects", + "//src/test/java/com/google/devtools/build/lib/analysis/util", + "//src/test/java/com/google/devtools/build/lib/rules/platform:testutil", + "//src/test/java/com/google/devtools/build/lib/skyframe:testutil", + "//src/test/java/com/google/devtools/build/skyframe:testutil", + "//third_party:auto_value", + "//third_party:guava", + "//third_party:jsr305", + "//third_party:junit4", + "//third_party:truth", + ], +) + +java_test( + name = "PlatformLookupUtilTest", + srcs = ["PlatformLookupUtilTest.java"], + deps = [ + "//src/main/java/com/google/devtools/build/lib/analysis:blaze_directories", + "//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/skyframe:configured_target_key", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:platform_lookup_util", + "//src/main/java/com/google/devtools/build/skyframe", + "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects", + "//src/test/java/com/google/devtools/build/lib/analysis/util", + "//src/test/java/com/google/devtools/build/lib/rules/platform:testutil", + "//src/test/java/com/google/devtools/build/lib/skyframe:testutil", + "//src/test/java/com/google/devtools/build/skyframe:testutil", + "//third_party:auto_value", + "//third_party:guava", + "//third_party:jsr305", + "//third_party:junit4", + "//third_party:truth", + ], +) + +java_test( + name = "RegisteredExecutionPlatformsFunctionTest", + srcs = ["RegisteredExecutionPlatformsFunctionTest.java"], + deps = [ + "//src/main/java/com/google/devtools/build/lib/analysis:view_creation_failed_exception", + "//src/main/java/com/google/devtools/build/lib/analysis/platform", + "//src/main/java/com/google/devtools/build/lib/bazel/bzlmod:resolution_impl", + "//src/main/java/com/google/devtools/build/lib/bazel/repository:repository_options", + "//src/main/java/com/google/devtools/build/lib/cmdline", + "//src/main/java/com/google/devtools/build/lib/skyframe:configured_target_key", + "//src/main/java/com/google/devtools/build/lib/skyframe:precomputed_value", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:platform_lookup_util", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:registered_execution_platforms_value", + "//src/main/java/com/google/devtools/build/lib/vfs", + "//src/main/java/com/google/devtools/build/skyframe", + "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects", + "//src/test/java/com/google/devtools/build/lib/bazel/bzlmod:util", + "//src/test/java/com/google/devtools/build/lib/rules/platform:testutil", + "//src/test/java/com/google/devtools/build/lib/skyframe:testutil", + "//src/test/java/com/google/devtools/build/skyframe:testutil", + "//third_party:guava", + "//third_party:guava-testlib", + "//third_party:jsr305", + "//third_party:junit4", + "//third_party:truth", + ], +) + +java_test( + name = "RegisteredToolchainsFunctionTest", + srcs = ["RegisteredToolchainsFunctionTest.java"], + deps = [ + "//src/main/java/com/google/devtools/build/lib/analysis/platform", + "//src/main/java/com/google/devtools/build/lib/bazel/bzlmod:resolution_impl", + "//src/main/java/com/google/devtools/build/lib/bazel/repository:repository_options", + "//src/main/java/com/google/devtools/build/lib/cmdline", + "//src/main/java/com/google/devtools/build/lib/skyframe:precomputed_value", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:registered_toolchains_value", + "//src/main/java/com/google/devtools/build/lib/vfs", + "//src/main/java/com/google/devtools/build/skyframe", + "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects", + "//src/test/java/com/google/devtools/build/lib/bazel/bzlmod:util", + "//src/test/java/com/google/devtools/build/lib/rules/platform:testutil", + "//src/test/java/com/google/devtools/build/skyframe:testutil", + "//third_party:guava", + "//third_party:guava-testlib", + "//third_party:junit4", + "//third_party:truth", + ], +) + +java_test( + name = "SingleToolchainResolutionFunctionTest", + srcs = ["SingleToolchainResolutionFunctionTest.java"], + deps = [ + "//src/main/java/com/google/devtools/build/lib/cmdline", + "//src/main/java/com/google/devtools/build/lib/skyframe:configured_target_key", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:single_toolchain_resolution_value", + "//src/main/java/com/google/devtools/build/skyframe", + "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects", + "//src/test/java/com/google/devtools/build/lib/rules/platform:testutil", + "//src/test/java/com/google/devtools/build/lib/skyframe:testutil", + "//src/test/java/com/google/devtools/build/skyframe:testutil", + "//third_party:guava", + "//third_party:guava-testlib", + "//third_party:junit4", + "//third_party:truth", + ], +) + +java_test( + name = "ToolchainResolutionFunctionTest", + srcs = ["ToolchainResolutionFunctionTest.java"], + deps = [ + "//src/main/java/com/google/devtools/build/lib/analysis:config/toolchain_type_requirement", + "//src/main/java/com/google/devtools/build/lib/cmdline", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:constraint_value_lookup_util", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:platform_lookup_util", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:toolchain_context_key", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:toolchain_type_lookup_util", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:unloaded_toolchain_context", + "//src/main/java/com/google/devtools/build/skyframe", + "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects", + "//src/test/java/com/google/devtools/build/lib/analysis/testing", + "//src/test/java/com/google/devtools/build/lib/rules/platform:testutil", + "//src/test/java/com/google/devtools/build/lib/skyframe:testutil", + "//src/test/java/com/google/devtools/build/skyframe:testutil", + "//third_party:guava", + "//third_party:junit4", + "//third_party:truth", + ], +) + +java_test( + name = "ToolchainsForTargetsTest", + srcs = ["ToolchainsForTargetsTest.java"], + deps = [ + "//src/main/java/com/google/devtools/build/lib/actions", + "//src/main/java/com/google/devtools/build/lib/analysis:analysis_cluster", + "//src/main/java/com/google/devtools/build/lib/analysis:blaze_directories", + "//src/main/java/com/google/devtools/build/lib/analysis:configured_target", + "//src/main/java/com/google/devtools/build/lib/analysis:constraints/incompatible_target_checker", + "//src/main/java/com/google/devtools/build/lib/analysis:target_and_configuration", + "//src/main/java/com/google/devtools/build/lib/analysis:toolchain_collection", + "//src/main/java/com/google/devtools/build/lib/analysis:toolchain_context", + "//src/main/java/com/google/devtools/build/lib/analysis/producers", + "//src/main/java/com/google/devtools/build/lib/causes", + "//src/main/java/com/google/devtools/build/lib/cmdline", + "//src/main/java/com/google/devtools/build/lib/collect/nestedset", + "//src/main/java/com/google/devtools/build/lib/packages", + "//src/main/java/com/google/devtools/build/lib/skyframe:configured_target_key", + "//src/main/java/com/google/devtools/build/lib/skyframe:configured_value_creation_exception", + "//src/main/java/com/google/devtools/build/lib/skyframe:skyframe_cluster", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:toolchain_exception", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:unloaded_toolchain_context", + "//src/main/java/com/google/devtools/build/skyframe", + "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects", + "//src/test/java/com/google/devtools/build/lib/analysis/testing", + "//src/test/java/com/google/devtools/build/lib/analysis/util", + "//src/test/java/com/google/devtools/build/lib/skyframe:testutil", + "//third_party:auto_value", + "//third_party:error_prone_annotations", + "//third_party:guava", + "//third_party:junit4", + "//third_party:truth", + ], +) + +java_test( + name = "ToolchainTypeLookupUtilTest", + srcs = ["ToolchainTypeLookupUtilTest.java"], + deps = [ + "//src/main/java/com/google/devtools/build/lib/analysis:blaze_directories", + "//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/skyframe:configured_target_key", + "//src/main/java/com/google/devtools/build/lib/skyframe:configured_value_creation_exception", + "//src/main/java/com/google/devtools/build/lib/skyframe/toolchains:toolchain_type_lookup_util", + "//src/main/java/com/google/devtools/build/skyframe", + "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects", + "//src/test/java/com/google/devtools/build/lib/analysis/util", + "//src/test/java/com/google/devtools/build/lib/rules/platform:testutil", + "//src/test/java/com/google/devtools/build/lib/skyframe:testutil", + "//src/test/java/com/google/devtools/build/skyframe:testutil", + "//third_party:auto_value", + "//third_party:guava", + "//third_party:jsr305", + "//third_party:junit4", + "//third_party:truth", + ], +)
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/ConstraintValueLookupUtilTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/toolchains/ConstraintValueLookupUtilTest.java similarity index 96% rename from src/test/java/com/google/devtools/build/lib/skyframe/ConstraintValueLookupUtilTest.java rename to src/test/java/com/google/devtools/build/lib/skyframe/toolchains/ConstraintValueLookupUtilTest.java index cff691b..d769184 100644 --- a/src/test/java/com/google/devtools/build/lib/skyframe/ConstraintValueLookupUtilTest.java +++ b/src/test/java/com/google/devtools/build/lib/skyframe/toolchains/ConstraintValueLookupUtilTest.java
@@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.devtools.build.lib.skyframe; +package com.google.devtools.build.lib.skyframe.toolchains; import static com.google.common.truth.Truth.assertThat; import static com.google.devtools.build.skyframe.EvaluationResultSubjectFactory.assertThatEvaluationResult; @@ -25,7 +25,9 @@ import com.google.devtools.build.lib.analysis.util.AnalysisMock; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.rules.platform.ToolchainTestCase; -import com.google.devtools.build.lib.skyframe.ConstraintValueLookupUtil.InvalidConstraintValueException; +import com.google.devtools.build.lib.skyframe.ConfiguredTargetKey; +import com.google.devtools.build.lib.skyframe.ConfiguredValueCreationException; +import com.google.devtools.build.lib.skyframe.toolchains.ConstraintValueLookupUtil.InvalidConstraintValueException; import com.google.devtools.build.lib.skyframe.util.SkyframeExecutorTestUtils; import com.google.devtools.build.skyframe.EvaluationResult; import com.google.devtools.build.skyframe.SkyFunction;
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/PlatformLookupUtilTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/toolchains/PlatformLookupUtilTest.java similarity index 96% rename from src/test/java/com/google/devtools/build/lib/skyframe/PlatformLookupUtilTest.java rename to src/test/java/com/google/devtools/build/lib/skyframe/toolchains/PlatformLookupUtilTest.java index 38154d1..0724c91 100644 --- a/src/test/java/com/google/devtools/build/lib/skyframe/PlatformLookupUtilTest.java +++ b/src/test/java/com/google/devtools/build/lib/skyframe/toolchains/PlatformLookupUtilTest.java
@@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.devtools.build.lib.skyframe; +package com.google.devtools.build.lib.skyframe.toolchains; import static com.google.common.truth.Truth.assertThat; import static com.google.devtools.build.skyframe.EvaluationResultSubjectFactory.assertThatEvaluationResult; @@ -25,7 +25,8 @@ import com.google.devtools.build.lib.analysis.util.AnalysisMock; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.rules.platform.ToolchainTestCase; -import com.google.devtools.build.lib.skyframe.PlatformLookupUtil.InvalidPlatformException; +import com.google.devtools.build.lib.skyframe.ConfiguredTargetKey; +import com.google.devtools.build.lib.skyframe.toolchains.PlatformLookupUtil.InvalidPlatformException; import com.google.devtools.build.lib.skyframe.util.SkyframeExecutorTestUtils; import com.google.devtools.build.skyframe.EvaluationResult; import com.google.devtools.build.skyframe.SkyFunction;
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/RegisteredExecutionPlatformsFunctionTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/toolchains/RegisteredExecutionPlatformsFunctionTest.java similarity index 98% rename from src/test/java/com/google/devtools/build/lib/skyframe/RegisteredExecutionPlatformsFunctionTest.java rename to src/test/java/com/google/devtools/build/lib/skyframe/toolchains/RegisteredExecutionPlatformsFunctionTest.java index f40c8d0..162eb7c 100644 --- a/src/test/java/com/google/devtools/build/lib/skyframe/RegisteredExecutionPlatformsFunctionTest.java +++ b/src/test/java/com/google/devtools/build/lib/skyframe/toolchains/RegisteredExecutionPlatformsFunctionTest.java
@@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.devtools.build.lib.skyframe; +package com.google.devtools.build.lib.skyframe.toolchains; import static com.google.common.truth.Truth.assertThat; import static com.google.devtools.build.lib.bazel.bzlmod.BzlmodTestUtil.createModuleKey; @@ -35,8 +35,10 @@ import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.cmdline.PackageIdentifier; import com.google.devtools.build.lib.rules.platform.ToolchainTestCase; -import com.google.devtools.build.lib.skyframe.PlatformLookupUtil.InvalidPlatformException; +import com.google.devtools.build.lib.skyframe.ConfiguredTargetKey; +import com.google.devtools.build.lib.skyframe.PrecomputedValue; import com.google.devtools.build.lib.skyframe.PrecomputedValue.Injected; +import com.google.devtools.build.lib.skyframe.toolchains.PlatformLookupUtil.InvalidPlatformException; import com.google.devtools.build.lib.skyframe.util.SkyframeExecutorTestUtils; import com.google.devtools.build.lib.vfs.Path; import com.google.devtools.build.skyframe.EvaluationResult;
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/RegisteredToolchainsFunctionTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/toolchains/RegisteredToolchainsFunctionTest.java similarity index 99% rename from src/test/java/com/google/devtools/build/lib/skyframe/RegisteredToolchainsFunctionTest.java rename to src/test/java/com/google/devtools/build/lib/skyframe/toolchains/RegisteredToolchainsFunctionTest.java index d9bce3c..49b331c 100644 --- a/src/test/java/com/google/devtools/build/lib/skyframe/RegisteredToolchainsFunctionTest.java +++ b/src/test/java/com/google/devtools/build/lib/skyframe/toolchains/RegisteredToolchainsFunctionTest.java
@@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.devtools.build.lib.skyframe; +package com.google.devtools.build.lib.skyframe.toolchains; import static com.google.common.truth.Truth.assertThat; import static com.google.devtools.build.lib.bazel.bzlmod.BzlmodTestUtil.createModuleKey; @@ -33,6 +33,7 @@ import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.cmdline.PackageIdentifier; import com.google.devtools.build.lib.rules.platform.ToolchainTestCase; +import com.google.devtools.build.lib.skyframe.PrecomputedValue; import com.google.devtools.build.lib.skyframe.PrecomputedValue.Injected; import com.google.devtools.build.lib.vfs.Path; import com.google.devtools.build.skyframe.EvaluationResult;
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/SingleToolchainResolutionFunctionTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/toolchains/SingleToolchainResolutionFunctionTest.java similarity index 97% rename from src/test/java/com/google/devtools/build/lib/skyframe/SingleToolchainResolutionFunctionTest.java rename to src/test/java/com/google/devtools/build/lib/skyframe/toolchains/SingleToolchainResolutionFunctionTest.java index 23f4318..a02df36 100644 --- a/src/test/java/com/google/devtools/build/lib/skyframe/SingleToolchainResolutionFunctionTest.java +++ b/src/test/java/com/google/devtools/build/lib/skyframe/toolchains/SingleToolchainResolutionFunctionTest.java
@@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.devtools.build.lib.skyframe; +package com.google.devtools.build.lib.skyframe.toolchains; import static com.google.common.truth.Truth.assertThat; import static com.google.devtools.build.skyframe.EvaluationResultSubjectFactory.assertThatEvaluationResult; @@ -22,6 +22,7 @@ import com.google.common.testing.EqualsTester; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.rules.platform.ToolchainTestCase; +import com.google.devtools.build.lib.skyframe.ConfiguredTargetKey; import com.google.devtools.build.lib.skyframe.util.SkyframeExecutorTestUtils; import com.google.devtools.build.skyframe.EvaluationResult; import com.google.devtools.build.skyframe.SkyKey;
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/ToolchainResolutionFunctionTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/toolchains/ToolchainResolutionFunctionTest.java similarity index 97% rename from src/test/java/com/google/devtools/build/lib/skyframe/ToolchainResolutionFunctionTest.java rename to src/test/java/com/google/devtools/build/lib/skyframe/toolchains/ToolchainResolutionFunctionTest.java index f333cf6..bc36bd0 100644 --- a/src/test/java/com/google/devtools/build/lib/skyframe/ToolchainResolutionFunctionTest.java +++ b/src/test/java/com/google/devtools/build/lib/skyframe/toolchains/ToolchainResolutionFunctionTest.java
@@ -11,7 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -package com.google.devtools.build.lib.skyframe; +package com.google.devtools.build.lib.skyframe.toolchains; import static com.google.common.truth.Truth.assertThat; import static com.google.devtools.build.lib.analysis.testing.ToolchainContextSubject.assertThat; @@ -19,12 +19,11 @@ import com.google.common.collect.ImmutableList; import com.google.devtools.build.lib.analysis.config.ToolchainTypeRequirement; -import com.google.devtools.build.lib.analysis.platform.ToolchainTypeInfo; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.rules.platform.ToolchainTestCase; -import com.google.devtools.build.lib.skyframe.ConstraintValueLookupUtil.InvalidConstraintValueException; -import com.google.devtools.build.lib.skyframe.PlatformLookupUtil.InvalidPlatformException; -import com.google.devtools.build.lib.skyframe.ToolchainTypeLookupUtil.InvalidToolchainTypeException; +import com.google.devtools.build.lib.skyframe.toolchains.ConstraintValueLookupUtil.InvalidConstraintValueException; +import com.google.devtools.build.lib.skyframe.toolchains.PlatformLookupUtil.InvalidPlatformException; +import com.google.devtools.build.lib.skyframe.toolchains.ToolchainTypeLookupUtil.InvalidToolchainTypeException; import com.google.devtools.build.lib.skyframe.util.SkyframeExecutorTestUtils; import com.google.devtools.build.skyframe.EvaluationResult; import com.google.devtools.build.skyframe.SkyKey; @@ -234,7 +233,6 @@ Label secondToolchainTypeLabel = Label.parseCanonicalUnchecked("//second:toolchain_type"); ToolchainTypeRequirement secondToolchainTypeRequirement = ToolchainTypeRequirement.create(secondToolchainTypeLabel); - ToolchainTypeInfo secondToolchainTypeInfo = ToolchainTypeInfo.create(secondToolchainTypeLabel); scratch.file("second/BUILD", "toolchain_type(name = 'toolchain_type')"); addToolchain( @@ -298,7 +296,6 @@ Label secondToolchainTypeLabel = Label.parseCanonicalUnchecked("//second:toolchain_type"); ToolchainTypeRequirement secondToolchainTypeRequirement = ToolchainTypeRequirement.builder(secondToolchainTypeLabel).mandatory(false).build(); - ToolchainTypeInfo secondToolchainTypeInfo = ToolchainTypeInfo.create(secondToolchainTypeLabel); scratch.file("second/BUILD", "toolchain_type(name = 'toolchain_type')"); addToolchain( @@ -343,7 +340,6 @@ Label secondToolchainTypeLabel = Label.parseCanonicalUnchecked("//second:toolchain_type"); ToolchainTypeRequirement secondToolchainTypeRequirement = ToolchainTypeRequirement.builder(secondToolchainTypeLabel).mandatory(false).build(); - ToolchainTypeInfo secondToolchainTypeInfo = ToolchainTypeInfo.create(secondToolchainTypeLabel); scratch.file("second/BUILD", "toolchain_type(name = 'toolchain_type')"); addToolchain(
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/ToolchainTypeLookupUtilTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/toolchains/ToolchainTypeLookupUtilTest.java similarity index 96% rename from src/test/java/com/google/devtools/build/lib/skyframe/ToolchainTypeLookupUtilTest.java rename to src/test/java/com/google/devtools/build/lib/skyframe/toolchains/ToolchainTypeLookupUtilTest.java index 2580717..7862d88 100644 --- a/src/test/java/com/google/devtools/build/lib/skyframe/ToolchainTypeLookupUtilTest.java +++ b/src/test/java/com/google/devtools/build/lib/skyframe/toolchains/ToolchainTypeLookupUtilTest.java
@@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.devtools.build.lib.skyframe; +package com.google.devtools.build.lib.skyframe.toolchains; import static com.google.common.truth.Truth.assertThat; import static com.google.devtools.build.skyframe.EvaluationResultSubjectFactory.assertThatEvaluationResult; @@ -25,7 +25,9 @@ import com.google.devtools.build.lib.analysis.util.AnalysisMock; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.rules.platform.ToolchainTestCase; -import com.google.devtools.build.lib.skyframe.ToolchainTypeLookupUtil.InvalidToolchainTypeException; +import com.google.devtools.build.lib.skyframe.ConfiguredTargetKey; +import com.google.devtools.build.lib.skyframe.ConfiguredValueCreationException; +import com.google.devtools.build.lib.skyframe.toolchains.ToolchainTypeLookupUtil.InvalidToolchainTypeException; import com.google.devtools.build.lib.skyframe.util.SkyframeExecutorTestUtils; import com.google.devtools.build.skyframe.EvaluationResult; import com.google.devtools.build.skyframe.SkyFunction;
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/ToolchainsForTargetsTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/toolchains/ToolchainsForTargetsTest.java similarity index 98% rename from src/test/java/com/google/devtools/build/lib/skyframe/ToolchainsForTargetsTest.java rename to src/test/java/com/google/devtools/build/lib/skyframe/toolchains/ToolchainsForTargetsTest.java index b06b974..0304616 100644 --- a/src/test/java/com/google/devtools/build/lib/skyframe/ToolchainsForTargetsTest.java +++ b/src/test/java/com/google/devtools/build/lib/skyframe/toolchains/ToolchainsForTargetsTest.java
@@ -11,7 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -package com.google.devtools.build.lib.skyframe; +package com.google.devtools.build.lib.skyframe.toolchains; import static com.google.common.collect.ImmutableList.toImmutableList; import static com.google.common.truth.Truth.assertThat; @@ -44,6 +44,10 @@ import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder; import com.google.devtools.build.lib.packages.RuleClassProvider; +import com.google.devtools.build.lib.skyframe.ConfiguredTargetFunction; +import com.google.devtools.build.lib.skyframe.ConfiguredTargetKey; +import com.google.devtools.build.lib.skyframe.ConfiguredValueCreationException; +import com.google.devtools.build.lib.skyframe.PrerequisiteProducer; import com.google.devtools.build.lib.skyframe.util.SkyframeExecutorTestUtils; import com.google.devtools.build.skyframe.EvaluationResult; import com.google.devtools.build.skyframe.SkyFunction; @@ -96,7 +100,7 @@ } /** - * Returns a {@link ToolchainCollection<UnloadedToolchainContext>} as the result of {@link + * Returns a {@link ToolchainCollection< UnloadedToolchainContext >} as the result of {@link * PrerequisiteProducer#getDependencyContext}. */ @AutoValue