Don't allow injection of non-default output formatters for genquery rule. PiperOrigin-RevId: 168406412
diff --git a/src/main/java/com/google/devtools/build/lib/bazel/rules/BazelRulesModule.java b/src/main/java/com/google/devtools/build/lib/bazel/rules/BazelRulesModule.java index a8daf4a..f720886 100644 --- a/src/main/java/com/google/devtools/build/lib/bazel/rules/BazelRulesModule.java +++ b/src/main/java/com/google/devtools/build/lib/bazel/rules/BazelRulesModule.java
@@ -19,11 +19,9 @@ import com.google.devtools.build.lib.bazel.rules.cpp.BazelCppRuleClasses; import com.google.devtools.build.lib.rules.cpp.FdoSupportFunction; import com.google.devtools.build.lib.rules.cpp.FdoSupportValue; -import com.google.devtools.build.lib.rules.genquery.GenQuery; import com.google.devtools.build.lib.runtime.BlazeModule; import com.google.devtools.build.lib.runtime.BlazeRuntime; import com.google.devtools.build.lib.runtime.WorkspaceBuilder; -import com.google.devtools.build.lib.skyframe.PrecomputedValue; import com.google.devtools.build.lib.util.ResourceFileLoader; import java.io.IOException; @@ -51,8 +49,5 @@ public void workspaceInit( BlazeRuntime runtime, BlazeDirectories directories, WorkspaceBuilder builder) { builder.addSkyFunction(FdoSupportValue.SKYFUNCTION, new FdoSupportFunction()); - builder.addPrecomputedValue(PrecomputedValue.injected( - GenQuery.QUERY_OUTPUT_FORMATTERS, - runtime.getQueryOutputFormatters())); } }
diff --git a/src/main/java/com/google/devtools/build/lib/query2/output/QueryOptions.java b/src/main/java/com/google/devtools/build/lib/query2/output/QueryOptions.java index 8bf163d..f4e003d 100644 --- a/src/main/java/com/google/devtools/build/lib/query2/output/QueryOptions.java +++ b/src/main/java/com/google/devtools/build/lib/query2/output/QueryOptions.java
@@ -50,7 +50,7 @@ effectTags = {OptionEffectTag.TERMINAL_OUTPUT}, help = "The format in which the query results should be printed. Allowed values are: " - + "label, label_kind, minrank, maxrank, package, location, graph, xml, proto, record." + + "label, label_kind, minrank, maxrank, package, location, graph, xml, proto." ) public String outputFormat;
diff --git a/src/main/java/com/google/devtools/build/lib/rules/genquery/GenQuery.java b/src/main/java/com/google/devtools/build/lib/rules/genquery/GenQuery.java index 2ff3d84..4e34a7b 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/genquery/GenQuery.java +++ b/src/main/java/com/google/devtools/build/lib/rules/genquery/GenQuery.java
@@ -305,12 +305,9 @@ // behavior of the query engine in these two use cases. settings.add(Setting.NO_NODEP_DEPS); - ImmutableList<OutputFormatter> outputFormatters = QUERY_OUTPUT_FORMATTERS.get( - ruleContext.getAnalysisEnvironment().getSkyframeEnv()); - // This is a precomputed value so it should have been injected by the rules module by the - // time we get there. - formatter = OutputFormatter.getFormatter( - Preconditions.checkNotNull(outputFormatters), queryOptions.outputFormat); + formatter = + OutputFormatter.getFormatter( + OutputFormatter.getDefaultFormatters(), queryOptions.outputFormat); // All the packages are already loaded at this point, so there is no need // to start up many threads. 4 are started up to make good use of multiple // cores.
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/util/AnalysisTestCase.java b/src/test/java/com/google/devtools/build/lib/analysis/util/AnalysisTestCase.java index 1e52bc2..2235d0b 100644 --- a/src/test/java/com/google/devtools/build/lib/analysis/util/AnalysisTestCase.java +++ b/src/test/java/com/google/devtools/build/lib/analysis/util/AnalysisTestCase.java
@@ -178,7 +178,7 @@ ImmutableList.<DiffAwareness.Factory>of(), Predicates.<PathFragment>alwaysFalse(), analysisMock.getSkyFunctions(), - getPrecomputedValues(), + ImmutableList.of(), ImmutableList.<SkyValueDirtinessChecker>of(), PathFragment.EMPTY_FRAGMENT, analysisMock.getProductName(), @@ -213,10 +213,6 @@ return AnalysisMock.get(); } - protected ImmutableList<PrecomputedValue.Injected> getPrecomputedValues() { - return ImmutableList.of(); - } - /** * Sets host and target configuration using the specified options, falling back to the default * options for unspecified ones, and recreates the build view.
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/util/BuildViewTestBase.java b/src/test/java/com/google/devtools/build/lib/analysis/util/BuildViewTestBase.java index 38f1deb..de4cc1e 100644 --- a/src/test/java/com/google/devtools/build/lib/analysis/util/BuildViewTestBase.java +++ b/src/test/java/com/google/devtools/build/lib/analysis/util/BuildViewTestBase.java
@@ -16,7 +16,6 @@ import static com.google.common.truth.Truth.assertThat; -import com.google.common.collect.ImmutableList; import com.google.common.collect.Iterables; import com.google.common.eventbus.Subscribe; import com.google.devtools.build.lib.actions.Artifact; @@ -30,10 +29,6 @@ import com.google.devtools.build.lib.events.EventCollector; import com.google.devtools.build.lib.events.OutputFilter.RegexOutputFilter; import com.google.devtools.build.lib.pkgcache.LoadingFailureEvent; -import com.google.devtools.build.lib.query2.output.OutputFormatter; -import com.google.devtools.build.lib.rules.genquery.GenQuery; -import com.google.devtools.build.lib.skyframe.PrecomputedValue; -import com.google.devtools.build.lib.skyframe.PrecomputedValue.Injected; import com.google.devtools.build.lib.util.Pair; import com.google.devtools.build.lib.vfs.Path; import com.google.devtools.build.lib.vfs.PathFragment; @@ -62,15 +57,6 @@ return frequency; } - @Override - protected ImmutableList<Injected> getPrecomputedValues() { - ImmutableList.Builder<Injected> result = ImmutableList.builder(); - result.addAll(super.getPrecomputedValues()); - result.add(PrecomputedValue.injected( - GenQuery.QUERY_OUTPUT_FORMATTERS, OutputFormatter.getDefaultFormatters())); - return result.build(); - } - protected final void setupDummyRule() throws Exception { scratch.file("pkg/BUILD", "testing_dummy_rule(name='foo', ",
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/util/BuildViewTestCase.java b/src/test/java/com/google/devtools/build/lib/analysis/util/BuildViewTestCase.java index 7625db8..7c9fea4 100644 --- a/src/test/java/com/google/devtools/build/lib/analysis/util/BuildViewTestCase.java +++ b/src/test/java/com/google/devtools/build/lib/analysis/util/BuildViewTestCase.java
@@ -234,7 +234,7 @@ ImmutableList.<DiffAwareness.Factory>of(), Predicates.<PathFragment>alwaysFalse(), analysisMock.getSkyFunctions(), - getPrecomputedValues(), + ImmutableList.of(), ImmutableList.<SkyValueDirtinessChecker>of(), PathFragment.EMPTY_FRAGMENT, analysisMock.getProductName(), @@ -282,10 +282,6 @@ return ImmutableList.<EnvironmentExtension>of(); } - protected ImmutableList<PrecomputedValue.Injected> getPrecomputedValues() { - return ImmutableList.of(); - } - protected SkylarkSemanticsOptions getSkylarkSemantics() { return skylarkSemanticsOptions; }