Explicitly specify visibility in sdk/module_exports snapshot

This change ensures that each prebuilt in a snapshot explicitly
specifies its visibility even when that visibility is the current
default. This is done for two reasons:
1. It simplifies a follow up change that adds visibility rules to an
   existing set of rules.
2. It ensures that the snapshots are independent of the current Soong
   default visibility.

The latter is important because we intend to switch from modules being
visible to everyone by default (i.e. //visibility:public) to only being
visible to modules in the same package (i.e. //visibility:private). By
making the snapshots of modules that do not specify any visibility
explicitly specify that they are "//visibility:public" it ensures that
the snapshots will not need to be changed when the default changes.

Bug: 168301990
Test: m nothing
Change-Id: Ia034f4a1e5124c17f46d73b0e9a6c5f2a251038e
This commit is contained in:
Paul Duffin
2020-09-29 16:00:55 +01:00
parent 45dda43df0
commit d99d997238
4 changed files with 167 additions and 3 deletions

View File

@@ -121,17 +121,20 @@ func TestSdkDependsOnSourceEvenWhenPrebuiltPreferred(t *testing.T) {
java_import {
name: "mysdk_sdkmember@current",
sdk_member_name: "sdkmember",
visibility: ["//visibility:public"],
jars: ["java/sdkmember.jar"],
}
java_import {
name: "sdkmember",
prefer: false,
visibility: ["//visibility:public"],
jars: ["java/sdkmember.jar"],
}
sdk_snapshot {
name: "mysdk@current",
visibility: ["//visibility:public"],
java_header_libs: ["mysdk_sdkmember@current"],
}
`))
@@ -243,17 +246,20 @@ func TestSnapshotWithJavaHeaderLibrary(t *testing.T) {
java_import {
name: "mysdk_myjavalib@current",
sdk_member_name: "myjavalib",
visibility: ["//visibility:public"],
jars: ["java/myjavalib.jar"],
}
java_import {
name: "myjavalib",
prefer: false,
visibility: ["//visibility:public"],
jars: ["java/myjavalib.jar"],
}
sdk_snapshot {
name: "mysdk@current",
visibility: ["//visibility:public"],
java_header_libs: ["mysdk_myjavalib@current"],
}
@@ -295,6 +301,7 @@ func TestHostSnapshotWithJavaHeaderLibrary(t *testing.T) {
java_import {
name: "mysdk_myjavalib@current",
sdk_member_name: "myjavalib",
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
jars: ["java/myjavalib.jar"],
@@ -303,6 +310,7 @@ java_import {
java_import {
name: "myjavalib",
prefer: false,
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
jars: ["java/myjavalib.jar"],
@@ -310,6 +318,7 @@ java_import {
sdk_snapshot {
name: "mysdk@current",
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
java_header_libs: ["mysdk_myjavalib@current"],
@@ -347,6 +356,7 @@ func TestDeviceAndHostSnapshotWithJavaHeaderLibrary(t *testing.T) {
java_import {
name: "mysdk_myjavalib@current",
sdk_member_name: "myjavalib",
visibility: ["//visibility:public"],
host_supported: true,
target: {
android: {
@@ -361,6 +371,7 @@ java_import {
java_import {
name: "myjavalib",
prefer: false,
visibility: ["//visibility:public"],
host_supported: true,
target: {
android: {
@@ -374,6 +385,7 @@ java_import {
sdk_snapshot {
name: "mysdk@current",
visibility: ["//visibility:public"],
host_supported: true,
java_header_libs: ["mysdk_myjavalib@current"],
}
@@ -413,17 +425,20 @@ func TestSnapshotWithJavaImplLibrary(t *testing.T) {
java_import {
name: "myexports_myjavalib@current",
sdk_member_name: "myjavalib",
visibility: ["//visibility:public"],
jars: ["java/myjavalib.jar"],
}
java_import {
name: "myjavalib",
prefer: false,
visibility: ["//visibility:public"],
jars: ["java/myjavalib.jar"],
}
module_exports_snapshot {
name: "myexports@current",
visibility: ["//visibility:public"],
java_libs: ["myexports_myjavalib@current"],
}
@@ -465,6 +480,7 @@ func TestHostSnapshotWithJavaImplLibrary(t *testing.T) {
java_import {
name: "myexports_myjavalib@current",
sdk_member_name: "myjavalib",
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
jars: ["java/myjavalib.jar"],
@@ -473,6 +489,7 @@ java_import {
java_import {
name: "myjavalib",
prefer: false,
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
jars: ["java/myjavalib.jar"],
@@ -480,6 +497,7 @@ java_import {
module_exports_snapshot {
name: "myexports@current",
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
java_libs: ["myexports_myjavalib@current"],
@@ -516,6 +534,7 @@ func TestSnapshotWithJavaTest(t *testing.T) {
java_test_import {
name: "myexports_myjavatests@current",
sdk_member_name: "myjavatests",
visibility: ["//visibility:public"],
jars: ["java/myjavatests.jar"],
test_config: "java/myjavatests-AndroidTest.xml",
}
@@ -523,12 +542,14 @@ java_test_import {
java_test_import {
name: "myjavatests",
prefer: false,
visibility: ["//visibility:public"],
jars: ["java/myjavatests.jar"],
test_config: "java/myjavatests-AndroidTest.xml",
}
module_exports_snapshot {
name: "myexports@current",
visibility: ["//visibility:public"],
java_tests: ["myexports_myjavatests@current"],
}
`),
@@ -566,6 +587,7 @@ func TestHostSnapshotWithJavaTest(t *testing.T) {
java_test_import {
name: "myexports_myjavatests@current",
sdk_member_name: "myjavatests",
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
jars: ["java/myjavatests.jar"],
@@ -575,6 +597,7 @@ java_test_import {
java_test_import {
name: "myjavatests",
prefer: false,
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
jars: ["java/myjavatests.jar"],
@@ -583,6 +606,7 @@ java_test_import {
module_exports_snapshot {
name: "myexports@current",
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
java_tests: ["myexports_myjavatests@current"],
@@ -660,17 +684,20 @@ func TestSnapshotWithDroidstubs(t *testing.T) {
prebuilt_stubs_sources {
name: "myexports_myjavaapistubs@current",
sdk_member_name: "myjavaapistubs",
visibility: ["//visibility:public"],
srcs: ["java/myjavaapistubs_stubs_sources"],
}
prebuilt_stubs_sources {
name: "myjavaapistubs",
prefer: false,
visibility: ["//visibility:public"],
srcs: ["java/myjavaapistubs_stubs_sources"],
}
module_exports_snapshot {
name: "myexports@current",
visibility: ["//visibility:public"],
stubs_sources: ["myexports_myjavaapistubs@current"],
}
@@ -706,6 +733,7 @@ func TestHostSnapshotWithDroidstubs(t *testing.T) {
prebuilt_stubs_sources {
name: "myexports_myjavaapistubs@current",
sdk_member_name: "myjavaapistubs",
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
srcs: ["java/myjavaapistubs_stubs_sources"],
@@ -714,6 +742,7 @@ prebuilt_stubs_sources {
prebuilt_stubs_sources {
name: "myjavaapistubs",
prefer: false,
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
srcs: ["java/myjavaapistubs_stubs_sources"],
@@ -721,6 +750,7 @@ prebuilt_stubs_sources {
module_exports_snapshot {
name: "myexports@current",
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
stubs_sources: ["myexports_myjavaapistubs@current"],
@@ -766,12 +796,14 @@ func TestSnapshotWithJavaSystemModules(t *testing.T) {
java_import {
name: "mysdk_exported-system-module@current",
sdk_member_name: "exported-system-module",
visibility: ["//visibility:public"],
jars: ["java/exported-system-module.jar"],
}
java_import {
name: "exported-system-module",
prefer: false,
visibility: ["//visibility:public"],
jars: ["java/exported-system-module.jar"],
}
@@ -792,6 +824,7 @@ java_import {
java_system_modules_import {
name: "mysdk_my-system-modules@current",
sdk_member_name: "my-system-modules",
visibility: ["//visibility:public"],
libs: [
"mysdk_system-module@current",
"mysdk_exported-system-module@current",
@@ -801,6 +834,7 @@ java_system_modules_import {
java_system_modules_import {
name: "my-system-modules",
prefer: false,
visibility: ["//visibility:public"],
libs: [
"mysdk_system-module",
"exported-system-module",
@@ -809,6 +843,7 @@ java_system_modules_import {
sdk_snapshot {
name: "mysdk@current",
visibility: ["//visibility:public"],
java_header_libs: ["mysdk_exported-system-module@current"],
java_system_modules: ["mysdk_my-system-modules@current"],
}
@@ -871,6 +906,7 @@ java_import {
java_system_modules_import {
name: "mysdk_my-system-modules@current",
sdk_member_name: "my-system-modules",
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
libs: ["mysdk_system-module@current"],
@@ -879,6 +915,7 @@ java_system_modules_import {
java_system_modules_import {
name: "my-system-modules",
prefer: false,
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
libs: ["mysdk_system-module"],
@@ -886,6 +923,7 @@ java_system_modules_import {
sdk_snapshot {
name: "mysdk@current",
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
java_system_modules: ["mysdk_my-system-modules@current"],
@@ -939,6 +977,7 @@ func TestDeviceAndHostSnapshotWithOsSpecificMembers(t *testing.T) {
java_import {
name: "myexports_hostjavalib@current",
sdk_member_name: "hostjavalib",
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
jars: ["java/hostjavalib.jar"],
@@ -947,6 +986,7 @@ java_import {
java_import {
name: "hostjavalib",
prefer: false,
visibility: ["//visibility:public"],
device_supported: false,
host_supported: true,
jars: ["java/hostjavalib.jar"],
@@ -955,18 +995,21 @@ java_import {
java_import {
name: "myexports_androidjavalib@current",
sdk_member_name: "androidjavalib",
visibility: ["//visibility:public"],
jars: ["java/androidjavalib.jar"],
}
java_import {
name: "androidjavalib",
prefer: false,
visibility: ["//visibility:public"],
jars: ["java/androidjavalib.jar"],
}
java_import {
name: "myexports_myjavalib@current",
sdk_member_name: "myjavalib",
visibility: ["//visibility:public"],
host_supported: true,
target: {
android: {
@@ -981,6 +1024,7 @@ java_import {
java_import {
name: "myjavalib",
prefer: false,
visibility: ["//visibility:public"],
host_supported: true,
target: {
android: {
@@ -994,6 +1038,7 @@ java_import {
module_exports_snapshot {
name: "myexports@current",
visibility: ["//visibility:public"],
host_supported: true,
java_libs: ["myexports_myjavalib@current"],
target: {
@@ -1040,6 +1085,7 @@ func TestSnapshotWithJavaSdkLibrary(t *testing.T) {
java_sdk_library_import {
name: "mysdk_myjavalib@current",
sdk_member_name: "myjavalib",
visibility: ["//visibility:public"],
apex_available: ["//apex_available:anyapex"],
shared_library: false,
public: {
@@ -1068,6 +1114,7 @@ java_sdk_library_import {
java_sdk_library_import {
name: "myjavalib",
prefer: false,
visibility: ["//visibility:public"],
apex_available: ["//apex_available:anyapex"],
shared_library: false,
public: {
@@ -1095,6 +1142,7 @@ java_sdk_library_import {
sdk_snapshot {
name: "mysdk@current",
visibility: ["//visibility:public"],
java_sdk_libs: ["mysdk_myjavalib@current"],
}
`),
@@ -1138,6 +1186,7 @@ func TestSnapshotWithJavaSdkLibrary_SdkVersion_None(t *testing.T) {
java_sdk_library_import {
name: "mysdk_myjavalib@current",
sdk_member_name: "myjavalib",
visibility: ["//visibility:public"],
shared_library: true,
public: {
jars: ["sdk_library/public/myjavalib-stubs.jar"],
@@ -1151,6 +1200,7 @@ java_sdk_library_import {
java_sdk_library_import {
name: "myjavalib",
prefer: false,
visibility: ["//visibility:public"],
shared_library: true,
public: {
jars: ["sdk_library/public/myjavalib-stubs.jar"],
@@ -1163,6 +1213,7 @@ java_sdk_library_import {
sdk_snapshot {
name: "mysdk@current",
visibility: ["//visibility:public"],
java_sdk_libs: ["mysdk_myjavalib@current"],
}
`),
@@ -1202,6 +1253,7 @@ func TestSnapshotWithJavaSdkLibrary_SdkVersion_ForScope(t *testing.T) {
java_sdk_library_import {
name: "mysdk_myjavalib@current",
sdk_member_name: "myjavalib",
visibility: ["//visibility:public"],
shared_library: true,
public: {
jars: ["sdk_library/public/myjavalib-stubs.jar"],
@@ -1215,6 +1267,7 @@ java_sdk_library_import {
java_sdk_library_import {
name: "myjavalib",
prefer: false,
visibility: ["//visibility:public"],
shared_library: true,
public: {
jars: ["sdk_library/public/myjavalib-stubs.jar"],
@@ -1227,6 +1280,7 @@ java_sdk_library_import {
sdk_snapshot {
name: "mysdk@current",
visibility: ["//visibility:public"],
java_sdk_libs: ["mysdk_myjavalib@current"],
}
`),
@@ -1269,6 +1323,7 @@ func TestSnapshotWithJavaSdkLibrary_ApiScopes(t *testing.T) {
java_sdk_library_import {
name: "mysdk_myjavalib@current",
sdk_member_name: "myjavalib",
visibility: ["//visibility:public"],
apex_available: ["//apex_available:anyapex"],
shared_library: true,
public: {
@@ -1290,6 +1345,7 @@ java_sdk_library_import {
java_sdk_library_import {
name: "myjavalib",
prefer: false,
visibility: ["//visibility:public"],
apex_available: ["//apex_available:anyapex"],
shared_library: true,
public: {
@@ -1310,6 +1366,7 @@ java_sdk_library_import {
sdk_snapshot {
name: "mysdk@current",
visibility: ["//visibility:public"],
java_sdk_libs: ["mysdk_myjavalib@current"],
}
`),
@@ -1359,6 +1416,7 @@ func TestSnapshotWithJavaSdkLibrary_ModuleLib(t *testing.T) {
java_sdk_library_import {
name: "mysdk_myjavalib@current",
sdk_member_name: "myjavalib",
visibility: ["//visibility:public"],
apex_available: ["//apex_available:anyapex"],
shared_library: true,
public: {
@@ -1387,6 +1445,7 @@ java_sdk_library_import {
java_sdk_library_import {
name: "myjavalib",
prefer: false,
visibility: ["//visibility:public"],
apex_available: ["//apex_available:anyapex"],
shared_library: true,
public: {
@@ -1414,6 +1473,7 @@ java_sdk_library_import {
sdk_snapshot {
name: "mysdk@current",
visibility: ["//visibility:public"],
java_sdk_libs: ["mysdk_myjavalib@current"],
}
`),
@@ -1464,6 +1524,7 @@ func TestSnapshotWithJavaSdkLibrary_SystemServer(t *testing.T) {
java_sdk_library_import {
name: "mysdk_myjavalib@current",
sdk_member_name: "myjavalib",
visibility: ["//visibility:public"],
apex_available: ["//apex_available:anyapex"],
shared_library: true,
public: {
@@ -1485,6 +1546,7 @@ java_sdk_library_import {
java_sdk_library_import {
name: "myjavalib",
prefer: false,
visibility: ["//visibility:public"],
apex_available: ["//apex_available:anyapex"],
shared_library: true,
public: {
@@ -1505,6 +1567,7 @@ java_sdk_library_import {
sdk_snapshot {
name: "mysdk@current",
visibility: ["//visibility:public"],
java_sdk_libs: ["mysdk_myjavalib@current"],
}
`),
@@ -1549,6 +1612,7 @@ func TestSnapshotWithJavaSdkLibrary_NamingScheme(t *testing.T) {
java_sdk_library_import {
name: "mysdk_myjavalib@current",
sdk_member_name: "myjavalib",
visibility: ["//visibility:public"],
apex_available: ["//apex_available:anyapex"],
naming_scheme: "default",
shared_library: true,
@@ -1564,6 +1628,7 @@ java_sdk_library_import {
java_sdk_library_import {
name: "myjavalib",
prefer: false,
visibility: ["//visibility:public"],
apex_available: ["//apex_available:anyapex"],
naming_scheme: "default",
shared_library: true,
@@ -1578,6 +1643,7 @@ java_sdk_library_import {
sdk_snapshot {
name: "mysdk@current",
visibility: ["//visibility:public"],
java_sdk_libs: ["mysdk_myjavalib@current"],
}
`),
@@ -1622,6 +1688,7 @@ func TestSnapshotWithJavaSdkLibrary_DoctagFiles(t *testing.T) {
java_sdk_library_import {
name: "mysdk_myjavalib@current",
sdk_member_name: "myjavalib",
visibility: ["//visibility:public"],
shared_library: true,
doctag_files: ["doctags/docs/known_doctags"],
public: {
@@ -1636,6 +1703,7 @@ java_sdk_library_import {
java_sdk_library_import {
name: "myjavalib",
prefer: false,
visibility: ["//visibility:public"],
shared_library: true,
doctag_files: ["doctags/docs/known_doctags"],
public: {
@@ -1649,6 +1717,7 @@ java_sdk_library_import {
sdk_snapshot {
name: "mysdk@current",
visibility: ["//visibility:public"],
java_sdk_libs: ["mysdk_myjavalib@current"],
}
`),