Enable --incompatible_use_toolchain_providers_in_java_common

Fixes https://github.com/bazelbuild/bazel/issues/7186

RELNOTES: incompatible_use_toolchain_providers_in_java_common: pass JavaToolchainInfo and JavaRuntimeInfo providers to java_common APIs instead of configured targetshttps://github.com/bazelbuild/bazel/issues/7186.
PiperOrigin-RevId: 235305349
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 18883dc..b1d119b 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
@@ -507,7 +507,7 @@
 
   @Option(
       name = "incompatible_use_toolchain_providers_in_java_common",
-      defaultValue = "false",
+      defaultValue = "true",
       documentationCategory = OptionDocumentationCategory.STARLARK_SEMANTICS,
       effectTags = {OptionEffectTag.BUILD_FILE_SEMANTICS},
       metadataTags = {
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 775289e..a50d7e0 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
@@ -211,7 +211,7 @@
           .experimentalPlatformsApi(false)
           .experimentalStarlarkConfigTransitions(false)
           .experimentalTransitionWhitelistLocation("")
-          .incompatibleUseToolchainProvidersInJavaCommon(false)
+          .incompatibleUseToolchainProvidersInJavaCommon(true)
           .incompatibleBzlDisallowLoadAfterStatement(false)
           .incompatibleDepsetIsNotIterable(false)
           .incompatibleDepsetUnion(false)
diff --git a/src/test/java/com/google/devtools/build/lib/rules/java/JavaSkylarkApiTest.java b/src/test/java/com/google/devtools/build/lib/rules/java/JavaSkylarkApiTest.java
index edcf727..f407eb5 100644
--- a/src/test/java/com/google/devtools/build/lib/rules/java/JavaSkylarkApiTest.java
+++ b/src/test/java/com/google/devtools/build/lib/rules/java/JavaSkylarkApiTest.java
@@ -196,7 +196,7 @@
 
     reporter.removeHandler(failFastHandler);
     getConfiguredTarget("//a:r");
-    assertContainsEvent("must point to a Java runtime");
+    assertContainsEvent("pass a java_common.JavaRuntimeInfo instead of a configured target");
   }
 
   @Test
@@ -2245,7 +2245,6 @@
   @Test
   public void testConfiguredTargetHostJavabase() throws Exception {
     writeBuildFileForJavaToolchain();
-    setSkylarkSemanticsOptions("--incompatible_use_toolchain_providers_in_java_common=true");
 
     scratch.file(
         "a/BUILD",
@@ -2279,13 +2278,12 @@
 
     reporter.removeHandler(failFastHandler);
     getConfiguredTarget("//a:r");
-    assertContainsEvent("java_common.JavaRuntimeInfo");
+    assertContainsEvent("pass a java_common.JavaRuntimeInfo instead of a configured target");
   }
 
   @Test
   public void testConfiguredTargetToolchain() throws Exception {
     writeBuildFileForJavaToolchain();
-    setSkylarkSemanticsOptions("--incompatible_use_toolchain_providers_in_java_common=true");
 
     scratch.file(
         "a/BUILD",
@@ -2319,7 +2317,7 @@
 
     reporter.removeHandler(failFastHandler);
     getConfiguredTarget("//a:r");
-    assertContainsEvent("java_common.JavaToolchainInfo");
+    assertContainsEvent("pass a java_common.JavaToolchainInfo instead of a configured target");
   }
 
   @Test
diff --git a/src/test/shell/bazel/bazel_java_test.sh b/src/test/shell/bazel/bazel_java_test.sh
index 3d9f54f..799bde4 100755
--- a/src/test/shell/bazel/bazel_java_test.sh
+++ b/src/test/shell/bazel/bazel_java_test.sh
@@ -178,8 +178,8 @@
     exports = exports,
     resources = ctx.files.resources,
     strict_deps = "ERROR",
-    java_toolchain = ctx.attr._java_toolchain,
-    host_javabase = ctx.attr._host_javabase
+    java_toolchain = ctx.attr._java_toolchain[java_common.JavaToolchainInfo],
+    host_javabase = ctx.attr._host_javabase[java_common.JavaRuntimeInfo],
   )
   return struct(
     files = depset([output_jar]),
@@ -303,8 +303,8 @@
     deps = [],
     sourcepath = ctx.files.sourcepath,
     strict_deps = "ERROR",
-    java_toolchain = ctx.attr._java_toolchain,
-    host_javabase = ctx.attr._host_javabase
+    java_toolchain = ctx.attr._java_toolchain[java_common.JavaToolchainInfo],
+    host_javabase = ctx.attr._host_javabase[java_common.JavaRuntimeInfo],
   )
   return struct(
     files = depset([output_jar]),
@@ -380,8 +380,8 @@
     deps = [],
     sourcepath = ctx.files.sourcepath,
     strict_deps = "ERROR",
-    java_toolchain = ctx.attr._java_toolchain,
-    host_javabase = ctx.attr._host_javabase
+    java_toolchain = ctx.attr._java_toolchain[java_common.JavaToolchainInfo],
+    host_javabase = ctx.attr._host_javabase[java_common.JavaRuntimeInfo],
   )
   return struct(
     files = depset([output_jar]),
@@ -1291,8 +1291,8 @@
     ctx,
     source_files = ctx.files.srcs,
     output = compiled_jar,
-    java_toolchain = ctx.attr._java_toolchain,
-    host_javabase = ctx.attr._host_javabase
+    java_toolchain = ctx.attr._java_toolchain[java_common.JavaToolchainInfo],
+    host_javabase = ctx.attr._host_javabase[java_common.JavaRuntimeInfo],
   )
 
   imported_provider = JavaInfo(output_jar = imported_jar, use_ijar=False);
@@ -1343,7 +1343,7 @@
   provider = java_common.create_provider(
     ctx.actions,
     compile_time_jars = ctx.files.compile_time_jars,
-    java_toolchain = ctx.attr._java_toolchain
+    java_toolchain = ctx.attr._java_toolchain[java_common.JavaToolchainInfo]
   )
   print(provider.compile_jars)
   print(provider.full_compile_jars)
@@ -1418,7 +1418,7 @@
 def _impl(ctx):
   provider = java_common.create_provider(
     compile_time_jars = ctx.files.compile_time_jars,
-    java_toolchain = ctx.attr._java_toolchain
+    java_toolchain = ctx.attr._java_toolchain[java_common.JavaToolchainInfo]
   )
   return DefaultInfo(files = provider.compile_jars)
 
@@ -1455,7 +1455,7 @@
     output_jar = ctx.file.output_jar,
     source_jars = ctx.files.source_jars,
     use_ijar = True,
-    java_toolchain = ctx.attr._java_toolchain
+    java_toolchain = ctx.attr._java_toolchain[java_common.JavaToolchainInfo]
   )
   return [result(property = javaInfo)]
 
@@ -1676,14 +1676,14 @@
     ctx.actions,
     jar = ctx.file.output_jar,
     target_label = ctx.label,
-    java_toolchain = ctx.attr._java_toolchain,
+    java_toolchain = ctx.attr._java_toolchain[java_common.JavaToolchainInfo],
   )
   source_jar = java_common.pack_sources(
     ctx.actions,
     output_jar = ctx.file.output_jar,
     source_jars = ctx.files.source_jars,
-    java_toolchain = ctx.attr._java_toolchain,
-    host_javabase = ctx.attr._host_javabase,
+    java_toolchain = ctx.attr._java_toolchain[java_common.JavaToolchainInfo],
+    host_javabase = ctx.attr._host_javabase[java_common.JavaRuntimeInfo],
   )
   javaInfo = JavaInfo(
     output_jar = ctx.file.output_jar,