Skip to content

Commit a16d6df

Browse files
committed
Stop exporting java rules / providers from @_builtins
`java_common` needs to remain (minimally exported) for private APIs PiperOrigin-RevId: 698412708 Change-Id: I58708761e7abbc63013f75276b1cd1f98c11430f (cherry picked from commit ae3262f)
1 parent e84a297 commit a16d6df

File tree

10 files changed

+25
-23
lines changed

10 files changed

+25
-23
lines changed

src/main/java/com/google/devtools/build/lib/bazel/rules/BUILD

+3-2
Original file line numberDiff line numberDiff line change
@@ -130,13 +130,14 @@ gen_workspace_stanza(
130130
name = "rules_suffix",
131131
out = "rules_suffix.WORKSPACE",
132132
postamble = """
133-
load("@rules_java//java:repositories.bzl", "rules_java_dependencies", "rules_java_toolchains")
133+
load("@rules_java//java:rules_java_deps.bzl", "rules_java_dependencies")
134134
rules_java_dependencies()
135-
rules_java_toolchains()
136135
load("@rules_python//python:repositories.bzl", "py_repositories")
137136
py_repositories()
138137
load("@com_google_protobuf//:protobuf_deps.bzl", "protobuf_deps")
139138
protobuf_deps()
139+
load("@rules_java//java:repositories.bzl", "rules_java_toolchains")
140+
rules_java_toolchains()
140141
""",
141142
preamble = """
142143
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

src/main/java/com/google/devtools/build/lib/rules/java/MessageBundleInfo.java

+5-3
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414

1515
package com.google.devtools.build.lib.rules.java;
1616

17-
import static com.google.devtools.build.lib.skyframe.BzlLoadValue.keyForBuiltins;
17+
import static com.google.devtools.build.lib.skyframe.BzlLoadValue.keyForBuild;
1818

1919
import com.google.common.collect.ImmutableList;
2020
import com.google.devtools.build.lib.actions.Artifact;
@@ -42,8 +42,10 @@ public final class MessageBundleInfo {
4242
private static class Provider extends StarlarkProviderWrapper<MessageBundleInfo> {
4343
private Provider() {
4444
super(
45-
keyForBuiltins(
46-
Label.parseCanonicalUnchecked("@_builtins//:common/java/message_bundle_info.bzl")),
45+
keyForBuild(
46+
Label.parseCanonicalUnchecked(
47+
JavaSemantics.RULES_JAVA_PROVIDER_LABELS_PREFIX
48+
+ "java/private:message_bundle_info.bzl")),
4749
STARLARK_NAME);
4850
}
4951

src/main/starlark/builtins_bzl/bazel/exports.bzl

+1-8
Original file line numberDiff line numberDiff line change
@@ -15,17 +15,10 @@
1515
"""Exported builtins symbols that are specific to OSS Bazel."""
1616

1717
load("@_builtins//:common/python/py_internal.bzl", "py_internal")
18-
load(":common/java/java_package_configuration.bzl", "java_package_configuration")
19-
load(":common/java/java_runtime.bzl", "java_runtime")
20-
load(":common/java/java_toolchain.bzl", "java_toolchain")
2118

2219
exported_toplevels = {
2320
"py_internal": py_internal,
2421
"proto_common_do_not_use": struct(INCOMPATIBLE_ENABLE_PROTO_TOOLCHAIN_RESOLUTION = _builtins.toplevel.proto_common_do_not_use.incompatible_enable_proto_toolchain_resolution()),
2522
}
26-
exported_rules = {
27-
"java_package_configuration": java_package_configuration,
28-
"java_runtime": java_runtime,
29-
"java_toolchain": java_toolchain,
30-
}
23+
exported_rules = {}
3124
exported_to_java = {}

src/main/starlark/builtins_bzl/common/exports.bzl

+1-4
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,6 @@ load(":common/cc/fdo/fdo_profile.bzl", "fdo_profile")
3737
load(":common/cc/fdo/memprof_profile.bzl", "memprof_profile")
3838
load(":common/cc/fdo/propeller_optimize.bzl", "propeller_optimize")
3939
load(":common/java/java_common.bzl", "java_common")
40-
load(":common/java/java_info.bzl", "JavaInfo", "JavaPluginInfo")
4140
load(":common/objc/apple_common.bzl", "apple_common")
4241
load(":common/objc/objc_common.bzl", "objc_common")
4342

@@ -49,9 +48,7 @@ exported_toplevels = {
4948
"CcSharedLibraryInfo": CcSharedLibraryInfo,
5049
"CcSharedLibraryHintInfo": CcSharedLibraryHintInfo,
5150
"cc_common": cc_common,
52-
"+JavaPluginInfo": JavaPluginInfo,
53-
"+JavaInfo": JavaInfo,
54-
"java_common": java_common,
51+
"java_common": struct(internal_DO_NOT_USE = java_common.internal_DO_NOT_USE),
5552
"apple_common": apple_common,
5653
}
5754

src/test/java/com/google/devtools/build/lib/rules/java/JavaInfoStarlarkApiTest.java

+2
Original file line numberDiff line numberDiff line change
@@ -1277,6 +1277,7 @@ public void nativeAndStarlarkJavaOutputsCanBeAddedToADepset() throws Exception {
12771277
scratch.file(
12781278
"foo/extension.bzl",
12791279
"""
1280+
load("@rules_java//java/common:java_info.bzl", "JavaInfo")
12801281
def _impl(ctx):
12811282
f = ctx.actions.declare_file(ctx.label.name + ".jar")
12821283
ctx.actions.write(f, "")
@@ -1313,6 +1314,7 @@ public void testNeverlinkIsStoredAsABoolean() throws Exception {
13131314
scratch.file(
13141315
"foo/extension.bzl",
13151316
"""
1317+
load("@rules_java//java/common:java_info.bzl", "JavaInfo")
13161318
def _impl(ctx):
13171319
f = ctx.actions.declare_file(ctx.label.name + ".jar")
13181320
ctx.actions.write(f, "")

src/test/java/com/google/devtools/build/lib/starlark/StarlarkRuleImplementationFunctionsTest.java

+1
Original file line numberDiff line numberDiff line change
@@ -1572,6 +1572,7 @@ public void testLacksAdvertisedBuiltinProvider() throws Exception {
15721572
scratch.file(
15731573
"test/foo.bzl",
15741574
"""
1575+
load("@rules_java//java/common:java_info.bzl", "JavaInfo")
15751576
FooInfo = provider()
15761577
def _impl(ctx):
15771578
MyFooInfo = FooInfo()

src/test/shell/bazel/bazel_rules_java_test.sh

+3-1
Original file line numberDiff line numberDiff line change
@@ -72,9 +72,11 @@ EOF
7272
filegroup(name = 'yolo')
7373
EOF
7474
touch override/java/BUILD || fail "couldn't touch override/java/BUILD"
75-
cat > override/java/repositories.bzl <<EOF
75+
cat > override/java/rules_java_deps.bzl <<EOF
7676
def rules_java_dependencies():
7777
pass
78+
EOF
79+
cat > override/java/repositories.bzl <<EOF
7880
def rules_java_toolchains():
7981
pass
8082
EOF

src/test/shell/integration/incompatible_autoload_externally_test.sh

+3-1
Original file line numberDiff line numberDiff line change
@@ -75,9 +75,11 @@ function mock_rules_java() {
7575
rules_java_workspace="${TEST_TMPDIR}/rules_java_workspace"
7676
mkdir -p "${rules_java_workspace}/java"
7777
touch "${rules_java_workspace}/java/BUILD"
78-
cat > "${rules_java_workspace}/java/repositories.bzl" <<EOF
78+
cat > "${rules_java_workspace}/java/rules_java_deps.bzl" <<EOF
7979
def rules_java_dependencies():
8080
pass
81+
EOF
82+
cat > "${rules_java_workspace}/java/repositories.bzl" <<EOF
8183
def rules_java_toolchains():
8284
pass
8385
EOF

src/test/shell/testenv.sh

+3-1
Original file line numberDiff line numberDiff line change
@@ -845,9 +845,11 @@ EOF
845845
JDK_BUILD_TEMPLATE = ''
846846
EOF
847847
touch "${rules_java_workspace}/java/BUILD"
848-
cat > "${rules_java_workspace}/java/repositories.bzl" <<EOF
848+
cat > "${rules_java_workspace}/java/rules_java_deps.bzl" <<EOF
849849
def rules_java_dependencies():
850850
pass
851+
EOF
852+
cat > "${rules_java_workspace}/java/repositories.bzl" <<EOF
851853
def rules_java_toolchains():
852854
pass
853855
EOF

workspace_deps.bzl

+3-3
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,9 @@ WORKSPACE_REPOS = {
3131
"strip_prefix": "protobuf-29.0-rc3",
3232
},
3333
"rules_java": {
34-
"archive": "rules_java-8.3.1.tar.gz",
35-
"sha256": "ee786b943e00da4fea7c233e70e5f5b8a01cc69b9341b3f49169f174fe0df1c5",
36-
"urls": ["https://github.com/bazelbuild/rules_java/releases/download/8.3.1/rules_java-8.3.1.tar.gz"],
34+
"archive": "rules_java-8.5.0.tar.gz",
35+
"sha256": "5c215757b9a6c3dd5312a3cdc4896cef3f0c5b31db31baa8da0d988685d42ae4",
36+
"urls": ["https://github.com/bazelbuild/rules_java/releases/download/8.5.0/rules_java-8.5.0.tar.gz"],
3737
},
3838
"bazel_skylib": {
3939
"archive": "bazel-skylib-1.6.1.tar.gz",

0 commit comments

Comments
 (0)