Remove the flag `incompatible_no_transitive_loads`.
#5636
RELNOTES: None.
PiperOrigin-RevId: 279183449
diff --git a/src/main/java/com/google/devtools/build/lib/packages/StarlarkSemanticsOptions.java b/src/main/java/com/google/devtools/build/lib/packages/StarlarkSemanticsOptions.java
index 3d2ccb2..f3b2595 100644
--- a/src/main/java/com/google/devtools/build/lib/packages/StarlarkSemanticsOptions.java
+++ b/src/main/java/com/google/devtools/build/lib/packages/StarlarkSemanticsOptions.java
@@ -521,20 +521,6 @@
public boolean incompatibleNoTargetOutputGroup;
@Option(
- name = "incompatible_no_transitive_loads",
- defaultValue = "true",
- documentationCategory = OptionDocumentationCategory.STARLARK_SEMANTICS,
- effectTags = {OptionEffectTag.BUILD_FILE_SEMANTICS},
- metadataTags = {
- OptionMetadataTag.INCOMPATIBLE_CHANGE,
- OptionMetadataTag.TRIGGERED_BY_ALL_INCOMPATIBLE_CHANGES
- },
- help =
- "If set to true, only symbols explicitly defined in the file can be loaded; "
- + "symbols introduced by load are not implicitly re-exported.")
- public boolean incompatibleNoTransitiveLoads;
-
- @Option(
name = "incompatible_remap_main_repo",
defaultValue = "false",
documentationCategory = OptionDocumentationCategory.STARLARK_SEMANTICS,
@@ -683,7 +669,6 @@
.incompatibleNoRuleOutputsParam(incompatibleNoRuleOutputsParam)
.incompatibleNoSupportToolsInActionInputs(incompatibleNoSupportToolsInActionInputs)
.incompatibleNoTargetOutputGroup(incompatibleNoTargetOutputGroup)
- .incompatibleNoTransitiveLoads(incompatibleNoTransitiveLoads)
.incompatibleRemapMainRepo(incompatibleRemapMainRepo)
.incompatibleRemoveNativeMavenJar(incompatibleRemoveNativeMavenJar)
.incompatibleRestrictNamedParams(incompatibleRestrictNamedParams)
diff --git a/src/main/java/com/google/devtools/build/lib/syntax/StarlarkSemantics.java b/src/main/java/com/google/devtools/build/lib/syntax/StarlarkSemantics.java
index 40d4550..613d4b5 100644
--- a/src/main/java/com/google/devtools/build/lib/syntax/StarlarkSemantics.java
+++ b/src/main/java/com/google/devtools/build/lib/syntax/StarlarkSemantics.java
@@ -188,8 +188,6 @@
public abstract boolean incompatibleNoTargetOutputGroup();
- public abstract boolean incompatibleNoTransitiveLoads();
-
public abstract boolean incompatibleRemapMainRepo();
public abstract boolean incompatibleRemoveNativeMavenJar();
@@ -278,7 +276,6 @@
.incompatibleNoRuleOutputsParam(false)
.incompatibleNoSupportToolsInActionInputs(true)
.incompatibleNoTargetOutputGroup(true)
- .incompatibleNoTransitiveLoads(true)
.incompatibleRemapMainRepo(false)
.incompatibleRemoveNativeMavenJar(false)
.incompatibleRunShellCommandString(false)
@@ -359,8 +356,6 @@
public abstract Builder incompatibleNoTargetOutputGroup(boolean value);
- public abstract Builder incompatibleNoTransitiveLoads(boolean value);
-
public abstract Builder incompatibleRemapMainRepo(boolean value);
public abstract Builder incompatibleRemoveNativeMavenJar(boolean value);
diff --git a/src/main/java/com/google/devtools/build/lib/syntax/StarlarkThread.java b/src/main/java/com/google/devtools/build/lib/syntax/StarlarkThread.java
index a965a6c..816f84c 100644
--- a/src/main/java/com/google/devtools/build/lib/syntax/StarlarkThread.java
+++ b/src/main/java/com/google/devtools/build/lib/syntax/StarlarkThread.java
@@ -353,10 +353,7 @@
// Legacy behavior: all symbols from the global Frame are exported (including symbols
// introduced by load).
this(
- ImmutableMap.copyOf(
- thread.getSemantics().incompatibleNoTransitiveLoads()
- ? thread.globalFrame.getExportedBindings()
- : thread.globalFrame.getBindings()),
+ ImmutableMap.copyOf(thread.globalFrame.getExportedBindings()),
thread.getTransitiveContentHashCode());
}
diff --git a/src/test/java/com/google/devtools/build/lib/packages/SkylarkSemanticsConsistencyTest.java b/src/test/java/com/google/devtools/build/lib/packages/SkylarkSemanticsConsistencyTest.java
index 6392008..a7d6a96 100644
--- a/src/test/java/com/google/devtools/build/lib/packages/SkylarkSemanticsConsistencyTest.java
+++ b/src/test/java/com/google/devtools/build/lib/packages/SkylarkSemanticsConsistencyTest.java
@@ -154,7 +154,6 @@
"--incompatible_no_rule_outputs_param=" + rand.nextBoolean(),
"--incompatible_no_support_tools_in_action_inputs=" + rand.nextBoolean(),
"--incompatible_no_target_output_group=" + rand.nextBoolean(),
- "--incompatible_no_transitive_loads=" + rand.nextBoolean(),
"--incompatible_remap_main_repo=" + rand.nextBoolean(),
"--incompatible_remove_native_maven_jar=" + rand.nextBoolean(),
"--incompatible_restrict_named_params=" + rand.nextBoolean(),
@@ -207,7 +206,6 @@
.incompatibleNoRuleOutputsParam(rand.nextBoolean())
.incompatibleNoSupportToolsInActionInputs(rand.nextBoolean())
.incompatibleNoTargetOutputGroup(rand.nextBoolean())
- .incompatibleNoTransitiveLoads(rand.nextBoolean())
.incompatibleRemapMainRepo(rand.nextBoolean())
.incompatibleRemoveNativeMavenJar(rand.nextBoolean())
.incompatibleRestrictNamedParams(rand.nextBoolean())
diff --git a/src/test/java/com/google/devtools/build/lib/skylark/SkylarkIntegrationTest.java b/src/test/java/com/google/devtools/build/lib/skylark/SkylarkIntegrationTest.java
index a09fc86..b8991cd 100644
--- a/src/test/java/com/google/devtools/build/lib/skylark/SkylarkIntegrationTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skylark/SkylarkIntegrationTest.java
@@ -1664,54 +1664,6 @@
}
@Test
- public void testSymbolPropagateThroughImports() throws Exception {
- setSkylarkSemanticsOptions("--incompatible_no_transitive_loads=false");
- scratch.file("test/skylark/implementation.bzl", "def custom_rule_impl(ctx):", " return None");
-
- scratch.file(
- "test/skylark/extension2.bzl",
- "load('//test/skylark:implementation.bzl', 'custom_rule_impl')");
-
- scratch.file(
- "test/skylark/extension1.bzl",
- "load('//test/skylark:extension2.bzl', 'custom_rule_impl')",
- "",
- "custom_rule = rule(implementation = custom_rule_impl)");
-
- scratch.file(
- "test/skylark/BUILD",
- "load('//test/skylark:extension1.bzl', 'custom_rule')",
- "custom_rule(name = 'cr')");
-
- getConfiguredTarget("//test/skylark:cr");
- }
-
- @Test
- public void testSymbolDoNotPropagateThroughImports() throws Exception {
- setSkylarkSemanticsOptions("--incompatible_no_transitive_loads=true");
- scratch.file("test/skylark/implementation.bzl", "def custom_rule_impl(ctx):", " return None");
-
- scratch.file(
- "test/skylark/extension2.bzl",
- "load('//test/skylark:implementation.bzl', 'custom_rule_impl')");
-
- scratch.file(
- "test/skylark/extension1.bzl",
- "load('//test/skylark:extension2.bzl', 'custom_rule_impl')",
- "",
- "custom_rule = rule(implementation = custom_rule_impl)");
-
- scratch.file(
- "test/skylark/BUILD",
- "load('//test/skylark:extension1.bzl', 'custom_rule')",
- "custom_rule(name = 'cr')");
-
- reporter.removeHandler(failFastHandler);
- getConfiguredTarget("//test/skylark:cr");
- assertContainsEvent("does not contain symbol 'custom_rule_impl'");
- }
-
- @Test
public void testLoadSymbolTypo() throws Exception {
scratch.file("test/skylark/ext1.bzl", "myvariable = 2");