Flip --incompatible_string_join_requires_strings

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

RELNOTES: --incompatible_string_join_requires_strings is now enabled by default
PiperOrigin-RevId: 250159837
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 68fdb14..14216ac 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
@@ -332,7 +332,7 @@
 
   @Option(
       name = "incompatible_string_join_requires_strings",
-      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 9114c0a..22ce113 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
@@ -248,7 +248,7 @@
           .incompatibleRemoveNativeMavenJar(false)
           .incompatibleRestrictNamedParams(false)
           .incompatibleStaticNameResolutionInBuildFiles(true)
-          .incompatibleStringJoinRequiresStrings(false)
+          .incompatibleStringJoinRequiresStrings(true)
           .internalSkylarkFlagTestCanary(false)
           .incompatibleDoNotSplitLinkingCmdline(false)
           .incompatibleDepsetForLibrariesToLinkGetter(false)
diff --git a/tools/python/srcs_version.bzl b/tools/python/srcs_version.bzl
index 53fce79..32e61b7 100644
--- a/tools/python/srcs_version.bzl
+++ b/tools/python/srcs_version.bzl
@@ -82,10 +82,10 @@
 )
 
 def _join_lines(nodes):
-    return "\n".join(nodes) if nodes else "<None>"
+    return "\n".join([str(n) for n in nodes]) if nodes else "<None>"
 
 def _str_path(path):
-    return " -> ".join(path.to_list())
+    return " -> ".join([str(p) for p in path.to_list()])
 
 def _str_tv_info(tv_info):
     """Returns a string representation of a `_TransitiveVersionInfo`."""