diff --git a/src/main/java/com/google/devtools/build/docgen/BlazeRuleHelpPrinter.java b/src/main/java/com/google/devtools/build/docgen/BlazeRuleHelpPrinter.java deleted file mode 100644 index b34bec81b73fdd..00000000000000 --- a/src/main/java/com/google/devtools/build/docgen/BlazeRuleHelpPrinter.java +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2014 The Bazel Authors. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// 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.docgen; - -import com.google.common.collect.ImmutableList; -import com.google.devtools.build.lib.analysis.ConfiguredRuleClassProvider; -import java.io.IOException; -import java.util.HashMap; -import java.util.Map; - -/** - * A helper class to load and store printable build rule documentation. The doc - * printed here doesn't contain attribute and implicit output definitions, just - * the general rule documentation and examples. - */ -public class BlazeRuleHelpPrinter { - - private static Map ruleDocMap = null; - - /** Returns the documentation of the given rule to be printed on the console. */ - public static String getRuleDoc( - String ruleName, String productName, ConfiguredRuleClassProvider provider) { - if (ruleDocMap == null) { - try { - BuildDocCollector collector = new BuildDocCollector(productName, provider, false); - Map ruleDocs = collector.collect( - ImmutableList.of("java/com/google/devtools/build/lib/view", - "java/com/google/devtools/build/lib/rules"), null); - ruleDocMap = new HashMap<>(); - for (RuleDocumentation ruleDoc : ruleDocs.values()) { - ruleDocMap.put(ruleDoc.getRuleName(), ruleDoc); - } - } catch (BuildEncyclopediaDocException e) { - return e.getErrorMsg(); - } catch (IOException e) { - return e.getMessage(); - } - } - // TODO(fwe): generate the rule documentation when building the Bazel binary and ship - // the text documentation with the binary. - // The Bazel binary may not contain the rule sources, which means that the documentation - // retrieval step would fail with an exception. - if (!ruleDocMap.containsKey(ruleName)) { - return String.format("Documentation for rule %s is not part of the binary.\n", ruleName); - } - return "Rule " + ruleName + ":" - + ruleDocMap.get(ruleName).getCommandLineDocumentation() + "\n"; - } -} diff --git a/src/main/java/com/google/devtools/build/lib/BUILD b/src/main/java/com/google/devtools/build/lib/BUILD index 6553b780975531..d676f94a16c83e 100644 --- a/src/main/java/com/google/devtools/build/lib/BUILD +++ b/src/main/java/com/google/devtools/build/lib/BUILD @@ -1281,7 +1281,6 @@ java_library( ":shared-base-rules", ":unix", ":util", - "//src/main/java/com/google/devtools/build/docgen:docgen_javalib", "//src/main/java/com/google/devtools/build/lib/actions", "//src/main/java/com/google/devtools/build/lib/actions:localhost_capacity", "//src/main/java/com/google/devtools/build/lib/buildeventstream", diff --git a/src/main/java/com/google/devtools/build/lib/runtime/commands/HelpCommand.java b/src/main/java/com/google/devtools/build/lib/runtime/commands/HelpCommand.java index 16dccf55eb8e22..8aa762dfadbff6 100644 --- a/src/main/java/com/google/devtools/build/lib/runtime/commands/HelpCommand.java +++ b/src/main/java/com/google/devtools/build/lib/runtime/commands/HelpCommand.java @@ -23,12 +23,10 @@ import com.google.common.collect.Iterables; import com.google.common.escape.Escaper; import com.google.common.html.HtmlEscapers; -import com.google.devtools.build.docgen.BlazeRuleHelpPrinter; import com.google.devtools.build.lib.analysis.BlazeVersionInfo; import com.google.devtools.build.lib.analysis.ConfiguredRuleClassProvider; import com.google.devtools.build.lib.analysis.NoBuildEvent; import com.google.devtools.build.lib.events.Event; -import com.google.devtools.build.lib.packages.RuleClass; import com.google.devtools.build.lib.runtime.BlazeCommand; import com.google.devtools.build.lib.runtime.BlazeCommandResult; import com.google.devtools.build.lib.runtime.BlazeCommandUtils; @@ -166,18 +164,8 @@ public BlazeCommandResult exec(CommandEnvironment env, OptionsParsingResult opti BlazeCommand command = runtime.getCommandMap().get(helpSubject); if (command == null) { - ConfiguredRuleClassProvider provider = runtime.getRuleClassProvider(); - RuleClass ruleClass = provider.getRuleClassMap().get(helpSubject); - if (ruleClass != null && ruleClass.isDocumented()) { - // There is a rule with a corresponding name - outErr.printOut( - BlazeRuleHelpPrinter.getRuleDoc(helpSubject, runtime.getProductName(), provider)); - return BlazeCommandResult.exitCode(ExitCode.SUCCESS); - } else { - env.getReporter().handle(Event.error( - null, "'" + helpSubject + "' is neither a command nor a build rule")); + env.getReporter().handle(Event.error(null, "'" + helpSubject + "' is not a known command")); return BlazeCommandResult.exitCode(ExitCode.COMMAND_LINE_ERROR); - } } emitBlazeVersionInfo(outErr, productName); outErr.printOut(