aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main
diff options
context:
space:
mode:
authorGravatar carmi <carmi@google.com>2017-08-28 22:08:18 +0200
committerGravatar Vladimir Moskva <vladmos@google.com>2017-08-29 13:32:08 +0200
commit8c76d5f82d290b46d67189bcc8bd08a441094da1 (patch)
tree00ac9b560f2679f9761f836eb472b1b7102b2e4b /src/main
parent59787f15a83b0262ad5c3964db821bfc5c64dbd1 (diff)
Clean up after rolling out --jplNonStrictDepsLikePl.
RELNOTES: None PiperOrigin-RevId: 166745722
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/java/JavaSkylarkCommon.java33
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/java/proto/StrictDepsUtils.java24
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/proto/ProtoConfiguration.java11
3 files changed, 30 insertions, 38 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaSkylarkCommon.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaSkylarkCommon.java
index da255f787e..2567876b66 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaSkylarkCommon.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaSkylarkCommon.java
@@ -13,6 +13,8 @@
// limitations under the License.
package com.google.devtools.build.lib.rules.java;
+import static com.google.devtools.build.lib.rules.java.JavaCompilationArgs.ClasspathType.BOTH;
+
import com.google.common.collect.ImmutableList;
import com.google.common.collect.Iterables;
import com.google.devtools.build.lib.actions.Artifact;
@@ -26,7 +28,6 @@ import com.google.devtools.build.lib.collect.nestedset.NestedSet;
import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder;
import com.google.devtools.build.lib.collect.nestedset.Order;
import com.google.devtools.build.lib.packages.Provider;
-import com.google.devtools.build.lib.rules.java.proto.StrictDepsUtils;
import com.google.devtools.build.lib.skylarkinterface.Param;
import com.google.devtools.build.lib.skylarkinterface.ParamType;
import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable;
@@ -421,16 +422,18 @@ public class JavaSkylarkCommon {
return JavaInfo.merge(providers);
}
+ // TODO(b/65113771): Remove this method because it's incorrect.
@SkylarkCallable(
- name = "make_non_strict",
- doc = "Returns a new Java provider whose direct-jars part is the union of both the direct and"
- + " indirect jars of the given Java provider.",
- // There's only one mandatory positional, the Java provider.
- mandatoryPositionals = 1
+ name = "make_non_strict",
+ doc =
+ "Returns a new Java provider whose direct-jars part is the union of both the direct and"
+ + " indirect jars of the given Java provider.",
+ // There's only one mandatory positional, the Java provider.
+ mandatoryPositionals = 1
)
public static JavaInfo makeNonStrict(JavaInfo javaInfo) {
JavaCompilationArgsProvider directCompilationArgs =
- StrictDepsUtils.makeNonStrict(javaInfo.getProvider(JavaCompilationArgsProvider.class));
+ makeNonStrict(javaInfo.getProvider(JavaCompilationArgsProvider.class));
return JavaInfo.Builder.copyOf(javaInfo)
// Overwrites the old provider.
@@ -438,6 +441,22 @@ public class JavaSkylarkCommon {
.build();
}
+ /**
+ * Returns a new JavaCompilationArgsProvider whose direct-jars part is the union of both the
+ * direct and indirect jars of 'provider'.
+ */
+ private static JavaCompilationArgsProvider makeNonStrict(JavaCompilationArgsProvider provider) {
+ JavaCompilationArgs.Builder directCompilationArgs = JavaCompilationArgs.builder();
+ directCompilationArgs
+ .addTransitiveArgs(provider.getJavaCompilationArgs(), BOTH)
+ .addTransitiveArgs(provider.getRecursiveJavaCompilationArgs(), BOTH);
+ return JavaCompilationArgsProvider.create(
+ directCompilationArgs.build(),
+ provider.getRecursiveJavaCompilationArgs(),
+ provider.getCompileTimeJavaDependencyArtifacts(),
+ provider.getRunTimeJavaDependencyArtifacts());
+ }
+
private static StrictDepsMode getStrictDepsMode(String strictDepsMode) {
switch (strictDepsMode) {
case "OFF":
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/proto/StrictDepsUtils.java b/src/main/java/com/google/devtools/build/lib/rules/java/proto/StrictDepsUtils.java
index fdacd71355..73230385ee 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/proto/StrictDepsUtils.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/proto/StrictDepsUtils.java
@@ -23,7 +23,6 @@ import com.google.devtools.build.lib.analysis.WrappingProvider;
import com.google.devtools.build.lib.rules.java.JavaCompilationArgs;
import com.google.devtools.build.lib.rules.java.JavaCompilationArgsProvider;
import com.google.devtools.build.lib.rules.java.JavaConfiguration;
-import com.google.devtools.build.lib.rules.proto.ProtoConfiguration;
public class StrictDepsUtils {
@@ -42,10 +41,7 @@ public class StrictDepsUtils {
javaProtoLibraryAspectProviders, JavaCompilationArgsProvider.class));
if (StrictDepsUtils.isStrictDepsJavaProtoLibrary(ruleContext)) {
return strictCompProvider;
- } else if (ruleContext
- .getConfiguration()
- .getFragment(ProtoConfiguration.class)
- .jplNonStrictDepsLikePl()) {
+ } else {
JavaCompilationArgs.Builder nonStrictDirectJars = JavaCompilationArgs.builder();
for (JavaProtoLibraryAspectProvider p : javaProtoLibraryAspectProviders) {
nonStrictDirectJars.addTransitiveArgs(p.getNonStrictCompArgs(), BOTH);
@@ -55,8 +51,6 @@ public class StrictDepsUtils {
strictCompProvider.getRecursiveJavaCompilationArgs(),
strictCompProvider.getCompileTimeJavaDependencyArtifacts(),
strictCompProvider.getRunTimeJavaDependencyArtifacts());
- } else {
- return StrictDepsUtils.makeNonStrict(strictCompProvider);
}
}
@@ -94,20 +88,4 @@ public class StrictDepsUtils {
}
return (boolean) ruleContext.getRule().getAttributeContainer().getAttr("strict_deps");
}
-
- /**
- * Returns a new JavaCompilationArgsProvider whose direct-jars part is the union of both the
- * direct and indirect jars of 'provider'.
- */
- public static JavaCompilationArgsProvider makeNonStrict(JavaCompilationArgsProvider provider) {
- JavaCompilationArgs.Builder directCompilationArgs = JavaCompilationArgs.builder();
- directCompilationArgs
- .addTransitiveArgs(provider.getJavaCompilationArgs(), BOTH)
- .addTransitiveArgs(provider.getRecursiveJavaCompilationArgs(), BOTH);
- return JavaCompilationArgsProvider.create(
- directCompilationArgs.build(),
- provider.getRecursiveJavaCompilationArgs(),
- provider.getCompileTimeJavaDependencyArtifacts(),
- provider.getRunTimeJavaDependencyArtifacts());
- }
}
diff --git a/src/main/java/com/google/devtools/build/lib/rules/proto/ProtoConfiguration.java b/src/main/java/com/google/devtools/build/lib/rules/proto/ProtoConfiguration.java
index 36c1e965d9..9b7637d0ae 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/proto/ProtoConfiguration.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/proto/ProtoConfiguration.java
@@ -167,16 +167,15 @@ public class ProtoConfiguration extends Fragment {
)
public boolean correctRollupTransitiveProtoRuntimes;
+ // TODO(b/62710272): Remove once there's no 'jplNonStrictDepsLikePl' in the global blazerc.
@Option(
name = "jplNonStrictDepsLikePl",
- defaultValue = "false",
+ defaultValue = "true",
category = "rollout",
documentationCategory = OptionDocumentationCategory.UNDOCUMENTED,
effectTags = {OptionEffectTag.AFFECTS_OUTPUTS, OptionEffectTag.LOADING_AND_ANALYSIS},
metadataTags = {OptionMetadataTag.INCOMPATIBLE_CHANGE},
- help =
- "Roll-out flag for changing behavior of non-strict java_xxx_proto_library. "
- + "See commit description for details. DO NOT USE."
+ help = "ignored"
)
public boolean jplNonStrictDepsLikePl;
@@ -193,7 +192,6 @@ public class ProtoConfiguration extends Fragment {
host.strictProtoDeps = strictProtoDeps;
host.ccProtoLibraryHeaderSuffixes = ccProtoLibraryHeaderSuffixes;
host.ccProtoLibrarySourceSuffixes = ccProtoLibrarySourceSuffixes;
- host.jplNonStrictDepsLikePl = jplNonStrictDepsLikePl;
return host;
}
}
@@ -272,7 +270,4 @@ public class ProtoConfiguration extends Fragment {
return ccProtoLibrarySourceSuffixes;
}
- public boolean jplNonStrictDepsLikePl() {
- return options.jplNonStrictDepsLikePl;
- }
}