Remove all direct uses of SkyframeExecutor.reporter.
Instead, pass an appropriate EventHandler instance in. This is in preparation
for creating a per-command EventHandler, in preparation for allowing multiple
commands to run in parallel. This is removal of shared global state.
--
MOS_MIGRATED_REVID=103828963
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/BuildView.java b/src/main/java/com/google/devtools/build/lib/analysis/BuildView.java
index 485a845..97a30fb 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/BuildView.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/BuildView.java
@@ -642,13 +642,13 @@
if (loadingEnabled) {
setArtifactRoots(loadingResult.getPackageRoots(), configurations);
}
- prepareToBuild(configurations, new SkyframePackageRootResolver(skyframeExecutor));
+ prepareToBuild(configurations, new SkyframePackageRootResolver(skyframeExecutor, eventHandler));
skyframeExecutor.injectWorkspaceStatusData();
SkyframeAnalysisResult skyframeAnalysisResult;
try {
skyframeAnalysisResult =
skyframeBuildView.configureTargets(
- targetSpecs, aspectKeys, eventBus, viewOptions.keepGoing);
+ eventHandler, targetSpecs, aspectKeys, eventBus, viewOptions.keepGoing);
setArtifactRoots(skyframeAnalysisResult.getPackageRoots(), configurations);
} finally {
skyframeBuildView.clearInvalidatedConfiguredTargets();
@@ -666,6 +666,7 @@
AnalysisResult result =
createResult(
+ eventHandler,
loadingResult,
topLevelOptions,
viewOptions,
@@ -679,6 +680,7 @@
}
private AnalysisResult createResult(
+ EventHandler eventHandler,
LoadingResult loadingResult,
TopLevelArtifactContext topLevelOptions,
BuildView.Options viewOptions,
@@ -701,7 +703,8 @@
Set<ConfiguredTarget> exclusiveTests = new HashSet<>();
// build-info and build-changelist.
- Collection<Artifact> buildInfoArtifacts = skyframeExecutor.getWorkspaceStatusArtifacts();
+ Collection<Artifact> buildInfoArtifacts =
+ skyframeExecutor.getWorkspaceStatusArtifacts(eventHandler);
Preconditions.checkState(buildInfoArtifacts.size() == 2, buildInfoArtifacts);
artifactsToBuild.addAll(buildInfoArtifacts);