Pass progressMessage to ProtoCompileActionBuilder.

This makes it possible to pass literals, so that new references don't accumulate and cause a regression.

PiperOrigin-RevId: 417471531
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/proto/CcProtoAspect.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/proto/CcProtoAspect.java
index 316e424..7e467a0 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/proto/CcProtoAspect.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/proto/CcProtoAspect.java
@@ -460,7 +460,7 @@
           invocations.build(),
           protoInfo,
           outputs,
-          "C++",
+          "Generating C++ proto_library %{label}",
           Exports.DO_NOT_USE,
           Services.ALLOW);
     }
@@ -472,8 +472,7 @@
     public void addProviders(ConfiguredAspect.Builder builder) {
       OutputGroupInfo outputGroupInfo = new OutputGroupInfo(outputGroups);
       builder.addProvider(
-          new CcProtoLibraryProviders(
-              filesBuilder.build(), ccLibraryProviders, outputGroupInfo));
+          new CcProtoLibraryProviders(filesBuilder.build(), ccLibraryProviders, outputGroupInfo));
       builder.addProviders(ccLibraryProviders);
       builder.addNativeDeclaredProvider(outputGroupInfo);
       if (headerProvider != null) {
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/proto/JavaLiteProtoAspect.java b/src/main/java/com/google/devtools/build/lib/rules/java/proto/JavaLiteProtoAspect.java
index bfbf3d1..a77716e 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/proto/JavaLiteProtoAspect.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/proto/JavaLiteProtoAspect.java
@@ -254,7 +254,7 @@
                   sourceJar.getExecPathString())),
           protoInfo,
           ImmutableList.of(sourceJar),
-          "JavaLite",
+          "Generating JavaLite proto_library %{label}",
           Exports.USE,
           Services.ALLOW);
     }
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/proto/JavaProtoAspect.java b/src/main/java/com/google/devtools/build/lib/rules/java/proto/JavaProtoAspect.java
index c0a7b34..a267a02 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/proto/JavaProtoAspect.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/proto/JavaProtoAspect.java
@@ -99,13 +99,12 @@
 
     ProtoInfo protoInfo = ctadBase.getConfiguredTarget().get(ProtoInfo.PROVIDER);
 
-
     JavaProtoAspectCommon aspectCommon =
         JavaProtoAspectCommon.getSpeedInstance(ruleContext, javaSemantics, rpcSupport);
     try {
-    Impl impl = new Impl(ruleContext, protoInfo, aspectCommon, rpcSupport, additionalProtocOpts);
-    impl.addProviders(aspect);
-    return aspect.build();
+      Impl impl = new Impl(ruleContext, protoInfo, aspectCommon, rpcSupport, additionalProtocOpts);
+      impl.addProviders(aspect);
+      return aspect.build();
     } catch (RuleErrorException e) {
       ruleContext.ruleError(e.getMessage());
       return null;
@@ -298,7 +297,7 @@
           invocations.build(),
           protoInfo,
           ImmutableList.of(sourceJar),
-          "Java (Immutable)",
+          "Generating Java (Immutable) proto_library %{label}",
           Exports.USE,
           rpcSupport.allowServices(ruleContext) ? Services.ALLOW : Services.DISALLOW);
     }
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/proto/JavaProtoStarlarkCommon.java b/src/main/java/com/google/devtools/build/lib/rules/java/proto/JavaProtoStarlarkCommon.java
index f99150a..69f55d6 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/proto/JavaProtoStarlarkCommon.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/proto/JavaProtoStarlarkCommon.java
@@ -56,7 +56,7 @@
                   sourceJar.getExecPathString())),
           protoInfo,
           ImmutableList.of(sourceJar),
-          "JavaLite",
+          "Generating JavaLite proto_library %{label}",
           Exports.DO_NOT_USE,
           Services.ALLOW);
     } catch (RuleErrorException e) {
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcAspect.java b/src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcAspect.java
index 0d6ab1e..f082214 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcAspect.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcAspect.java
@@ -673,7 +673,7 @@
         invocations.build(),
         protoInfo,
         outputs,
-        "j2objc",
+        "Generating j2objc proto_library %{label}",
         Exports.DO_NOT_USE,
         shouldAllowProtoServices(ruleContext) ? Services.ALLOW : Services.DISALLOW);
 
diff --git a/src/main/java/com/google/devtools/build/lib/rules/proto/ProtoCompileActionBuilder.java b/src/main/java/com/google/devtools/build/lib/rules/proto/ProtoCompileActionBuilder.java
index d60cfe5..42a0877 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/proto/ProtoCompileActionBuilder.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/proto/ProtoCompileActionBuilder.java
@@ -355,7 +355,7 @@
    * method instead of the soup of methods above.
    *
    * @param outputs The artifacts that the resulting action must create.
-   * @param flavorName e.g., "Java (Immutable)"
+   * @param progressMessage Please use "Generating {flavorName} proto_library %{label}".
    * @param allowServices If false, the compilation will break if any .proto file has service
    */
   public static void registerActions(
@@ -363,7 +363,7 @@
       List<ToolchainInvocation> toolchainInvocations,
       ProtoInfo protoInfo,
       Iterable<Artifact> outputs,
-      String flavorName,
+      String progressMessage,
       Exports useExports,
       Services allowServices)
       throws RuleErrorException, InterruptedException {
@@ -419,7 +419,7 @@
             /* ctx */ ruleContext.getStarlarkRuleContext(),
             /* proto_info */ protoInfo,
             /* proto_compiler */ protoToolchain.getCompiler(),
-            /* progress_message */ "Generating " + flavorName + " proto_library %{label}",
+            /* progress_message */ progressMessage,
             /* outputs */ StarlarkList.immutableCopyOf(outputs),
             /* additional_args */ StarlarkList.immutableCopyOf(additionalArgs.build()),
             /* plugins */ StarlarkList.immutableCopyOf(plugins.build())),
diff --git a/src/test/java/com/google/devtools/build/lib/rules/proto/ProtoCompileActionBuilderTest.java b/src/test/java/com/google/devtools/build/lib/rules/proto/ProtoCompileActionBuilderTest.java
index 30f59a6..cdc5015 100644
--- a/src/test/java/com/google/devtools/build/lib/rules/proto/ProtoCompileActionBuilderTest.java
+++ b/src/test/java/com/google/devtools/build/lib/rules/proto/ProtoCompileActionBuilderTest.java
@@ -299,7 +299,7 @@
             /* publicImportProtoSources */ ImmutableList.of(),
             /* strictImportableSources */ ImmutableList.of()),
         ImmutableList.of(out),
-        "flavour",
+        "dontcare",
         Exports.DO_NOT_USE,
         Services.DISALLOW);
 
@@ -392,7 +392,7 @@
                         /* publicImportProtoSources */ ImmutableList.of(),
                         /* strictImportableSources */ ImmutableList.of()),
                     ImmutableList.of(out),
-                    "flavour",
+                    "dontcare",
                     Exports.DO_NOT_USE,
                     Services.ALLOW));