Merge changes I1ed3ab24,I68678ddf

* changes:
  Use stubs from .txt files for hiddenapi
  Rename JavaLibraryNameFromText function
diff --git a/android/allowlists/allowlists.go b/android/allowlists/allowlists.go
index d09b92f..ff0d33e 100644
--- a/android/allowlists/allowlists.go
+++ b/android/allowlists/allowlists.go
@@ -886,10 +886,12 @@
 		// depends on //system/tools/aidl/build:aidl_metadata_json, which is an aidl_interfaces_metadata custom Soong type.
 		"aidl_metadata_in_cpp",
 		"libaidlmetadata",
+		"libaidlmetadata_test",
 
 		// depends on //system/tools/hidl/build:hidl_metadata_json, which is an hidl_interfaces_metadata custom Soong type.
 		"hidl_metadata_in_cpp",
 		"libhidlmetadata",
+		"hidl_metadata_test",
 
 		// cc_test related.
 		// b/274164834 "Could not open Configuration file test.cfg"
@@ -1507,26 +1509,263 @@
 	// The list of modules which are expected to spend lots of build time.
 	// With `--ninja_weight_source=soong`, ninja builds these modules and deps first.
 	HugeModulesMap = map[string]int{
-		"libbt_packets":                           DEFAULT_NINJA_WEIGHT,
-		"libbt_packets_nonapex":                   DEFAULT_NINJA_WEIGHT,
-		"crosvm":                                  DEFAULT_NINJA_WEIGHT,
-		"system-api-stubs-docs-non-updatable":     DEFAULT_NINJA_WEIGHT,
-		"test-api-stubs-docs-non-updatable":       DEFAULT_NINJA_WEIGHT,
-		"module-lib-api-stubs-docs-non-updatable": DEFAULT_NINJA_WEIGHT,
-		"libdevices":                              DEFAULT_NINJA_WEIGHT,
-		"libaom":                                  DEFAULT_NINJA_WEIGHT,
-		"libart-disassembler":                     DEFAULT_NINJA_WEIGHT,
-		"libart":                                  DEFAULT_NINJA_WEIGHT,
-		"libprotobuf":                             DEFAULT_NINJA_WEIGHT,
-		"libsyn":                                  DEFAULT_NINJA_WEIGHT,
-		"api-stubs-docs-non-updatable":            DEFAULT_NINJA_WEIGHT,
-		"framework-res":                           DEFAULT_NINJA_WEIGHT,
-		"SystemUI-core":                           DEFAULT_NINJA_WEIGHT,
-		"services-non-updatable-stubs":            DEFAULT_NINJA_WEIGHT,
-		"art.module.public.api.stubs.source":      DEFAULT_NINJA_WEIGHT,
-		"art.module.intra.core.api.stubs.source":  DEFAULT_NINJA_WEIGHT,
-		"virtmgr":                                 DEFAULT_NINJA_WEIGHT,
-		"metalava":                                DEFAULT_NINJA_WEIGHT,
-		"libkeystore2":                            DEFAULT_NINJA_WEIGHT,
+		"AccountManagementApp":                          DEFAULT_NINJA_WEIGHT,
+		"ActivityManagerPerfTestsStubApp1":              DEFAULT_NINJA_WEIGHT,
+		"ActivityManagerPerfTestsStubApp2":              DEFAULT_NINJA_WEIGHT,
+		"ActivityManagerPerfTestsStubApp3":              DEFAULT_NINJA_WEIGHT,
+		"api-stubs-docs-non-updatable":                  DEFAULT_NINJA_WEIGHT,
+		"AppCompatibilityTest":                          DEFAULT_NINJA_WEIGHT,
+		"AppTransitionTests":                            DEFAULT_NINJA_WEIGHT,
+		"art_compiler_tests":                            DEFAULT_NINJA_WEIGHT,
+		"art.module.intra.core.api.stubs.source":        DEFAULT_NINJA_WEIGHT,
+		"art.module.public.api.stubs.source":            DEFAULT_NINJA_WEIGHT,
+		"AttestationVerificationTest":                   DEFAULT_NINJA_WEIGHT,
+		"BatteryUsageStatsProtoTests":                   DEFAULT_NINJA_WEIGHT,
+		"bluetooth_test_gd_unit":                        DEFAULT_NINJA_WEIGHT,
+		"Bluetooth":                                     DEFAULT_NINJA_WEIGHT,
+		"BluetoothInstrumentationTests":                 DEFAULT_NINJA_WEIGHT,
+		"Calendar":                                      DEFAULT_NINJA_WEIGHT,
+		"CalendarProvider":                              DEFAULT_NINJA_WEIGHT,
+		"Camera2":                                       DEFAULT_NINJA_WEIGHT,
+		"CarRotaryControllerUnitTests":                  DEFAULT_NINJA_WEIGHT,
+		"CarSettingsForUnitTesting":                     DEFAULT_NINJA_WEIGHT,
+		"CarSettingsUnitTests":                          DEFAULT_NINJA_WEIGHT,
+		"CarSystemUI-tests":                             DEFAULT_NINJA_WEIGHT,
+		"CellBroadcastApp":                              DEFAULT_NINJA_WEIGHT,
+		"CellBroadcastLegacyApp":                        DEFAULT_NINJA_WEIGHT,
+		"CellBroadcastReceiverOemUnitTests":             DEFAULT_NINJA_WEIGHT,
+		"CellBroadcastServiceModule":                    DEFAULT_NINJA_WEIGHT,
+		"CompanionDeviceManager":                        DEFAULT_NINJA_WEIGHT,
+		"ConnectivityChecker":                           DEFAULT_NINJA_WEIGHT,
+		"Contacts":                                      DEFAULT_NINJA_WEIGHT,
+		"ContactsProvider":                              DEFAULT_NINJA_WEIGHT,
+		"ContentCapturePerfTests":                       DEFAULT_NINJA_WEIGHT,
+		"CorePerfTests":                                 DEFAULT_NINJA_WEIGHT,
+		"crosvm":                                        DEFAULT_NINJA_WEIGHT,
+		"CtsDomainVerificationDeviceMultiUserTestCases": DEFAULT_NINJA_WEIGHT,
+		"CtsLogdTestCases":                              DEFAULT_NINJA_WEIGHT,
+		"CtsMediaProviderTranscodeTests":                DEFAULT_NINJA_WEIGHT,
+		"CtsRollbackManagerHostTestHelperApp":           DEFAULT_NINJA_WEIGHT,
+		"CtsRollbackManagerHostTestHelperApp2":          DEFAULT_NINJA_WEIGHT,
+		"CtsRootPackageInstallerTestCases":              DEFAULT_NINJA_WEIGHT,
+		"CtsRootRollbackManagerHostTestHelperApp":       DEFAULT_NINJA_WEIGHT,
+		"CtsTranscodeTestAppSupportsHevc":               DEFAULT_NINJA_WEIGHT,
+		"CtsTranscodeTestAppSupportsSlowMotion":         DEFAULT_NINJA_WEIGHT,
+		"CuttlefishDisplayHotplugHelperApp":             DEFAULT_NINJA_WEIGHT,
+		"cvd-host_package":                              DEFAULT_NINJA_WEIGHT,
+		"DelegateTestApp":                               DEFAULT_NINJA_WEIGHT,
+		"DeskClock":                                     DEFAULT_NINJA_WEIGHT,
+		"Development":                                   DEFAULT_NINJA_WEIGHT,
+		"DeviceAdminTestApp":                            DEFAULT_NINJA_WEIGHT,
+		"DevicePolicyManagementRoleHolderTestApp":       DEFAULT_NINJA_WEIGHT,
+		"dex2oatd":                                      DEFAULT_NINJA_WEIGHT,
+		"DocumentsUI":                                   DEFAULT_NINJA_WEIGHT,
+		"EasterEgg":                                     DEFAULT_NINJA_WEIGHT,
+		"EffectProxyTest":                               DEFAULT_NINJA_WEIGHT,
+		"EmergencyInfo":                                 DEFAULT_NINJA_WEIGHT,
+		"EmptyTestApp":                                  DEFAULT_NINJA_WEIGHT,
+		"ExtServices":                                   DEFAULT_NINJA_WEIGHT,
+		"FacebookAppsScenarioTests":                     DEFAULT_NINJA_WEIGHT,
+		"flickerlib-core":                               DEFAULT_NINJA_WEIGHT,
+		"flickerlib":                                    DEFAULT_NINJA_WEIGHT,
+		"FlickerLibTest":                                DEFAULT_NINJA_WEIGHT,
+		"FlickerTests":                                  DEFAULT_NINJA_WEIGHT,
+		"framework-minus-apex":                          DEFAULT_NINJA_WEIGHT,
+		"framework-res":                                 DEFAULT_NINJA_WEIGHT,
+		"FrameworksCoreTests":                           DEFAULT_NINJA_WEIGHT,
+		"FrameworksMockingCoreTests":                    DEFAULT_NINJA_WEIGHT,
+		"FrameworksMockingServicesTests":                DEFAULT_NINJA_WEIGHT,
+		"FrameworksNetSmokeTests":                       DEFAULT_NINJA_WEIGHT,
+		"FrameworksNetTests":                            DEFAULT_NINJA_WEIGHT,
+		"FrameworksServicesTests":                       DEFAULT_NINJA_WEIGHT,
+		"FrameworksTelephonyTests":                      DEFAULT_NINJA_WEIGHT,
+		"FrameworksUiServicesTests":                     DEFAULT_NINJA_WEIGHT,
+		"FrameworksVcnTests":                            DEFAULT_NINJA_WEIGHT,
+		"Gallery2":                                      DEFAULT_NINJA_WEIGHT,
+		"GameCoreDevice":                                DEFAULT_NINJA_WEIGHT,
+		"GoogleBluetoothInstrumentationTests":           DEFAULT_NINJA_WEIGHT,
+		"guice_munged_srcs":                             DEFAULT_NINJA_WEIGHT,
+		"HalfSheetUX":                                   DEFAULT_NINJA_WEIGHT,
+		"ImePerfTests":                                  DEFAULT_NINJA_WEIGHT,
+		"imgdiag":                                       DEFAULT_NINJA_WEIGHT,
+		"ImsServiceEntitlement":                         DEFAULT_NINJA_WEIGHT,
+		"ImsServiceEntitlementUnitTests":                DEFAULT_NINJA_WEIGHT,
+		"InputTests":                                    DEFAULT_NINJA_WEIGHT,
+		"InstallTest":                                   DEFAULT_NINJA_WEIGHT,
+		"IntentResolver":                                DEFAULT_NINJA_WEIGHT,
+		"JankBench":                                     DEFAULT_NINJA_WEIGHT,
+		"jsilver":                                       DEFAULT_NINJA_WEIGHT,
+		"KeyChain":                                      DEFAULT_NINJA_WEIGHT,
+		"KeyChainTests":                                 DEFAULT_NINJA_WEIGHT,
+		"keystore2":                                     DEFAULT_NINJA_WEIGHT,
+		"LargeResourcesCompressed":                      DEFAULT_NINJA_WEIGHT,
+		"LatinIME":                                      DEFAULT_NINJA_WEIGHT,
+		"Launcher3QuickStepLib":                         DEFAULT_NINJA_WEIGHT,
+		"libaom":                                        DEFAULT_NINJA_WEIGHT,
+		"libart-broken":                                 DEFAULT_NINJA_WEIGHT,
+		"libart-compiler":                               DEFAULT_NINJA_WEIGHT,
+		"libart-disassembler":                           DEFAULT_NINJA_WEIGHT,
+		"libart":                                        DEFAULT_NINJA_WEIGHT,
+		"libartd":                                       DEFAULT_NINJA_WEIGHT,
+		"libaudiohal@7.1":                               DEFAULT_NINJA_WEIGHT,
+		"libbluetooth_core_rs":                          DEFAULT_NINJA_WEIGHT,
+		"libbluetooth_gd_unit_tests":                    DEFAULT_NINJA_WEIGHT,
+		"libbluetooth_gd":                               DEFAULT_NINJA_WEIGHT,
+		"libbluetooth_rs":                               DEFAULT_NINJA_WEIGHT,
+		"libbluetooth-for-tests":                        DEFAULT_NINJA_WEIGHT,
+		"libbt_common":                                  DEFAULT_NINJA_WEIGHT,
+		"libbt_packets_nonapex":                         DEFAULT_NINJA_WEIGHT,
+		"libbt_packets":                                 DEFAULT_NINJA_WEIGHT,
+		"libbt_shim_ffi":                                DEFAULT_NINJA_WEIGHT,
+		"libbt_shim":                                    DEFAULT_NINJA_WEIGHT,
+		"libbt-audio-hal-interface":                     DEFAULT_NINJA_WEIGHT,
+		"libbt-bta-core":                                DEFAULT_NINJA_WEIGHT,
+		"libbt-bta":                                     DEFAULT_NINJA_WEIGHT,
+		"libbt-common":                                  DEFAULT_NINJA_WEIGHT,
+		"libbt-hci":                                     DEFAULT_NINJA_WEIGHT,
+		"libbt-platform-protos-lite":                    DEFAULT_NINJA_WEIGHT,
+		"libbt-protos-lite":                             DEFAULT_NINJA_WEIGHT,
+		"libbt-sbc-decoder":                             DEFAULT_NINJA_WEIGHT,
+		"libc":                                          DEFAULT_NINJA_WEIGHT,
+		"libclap":                                       DEFAULT_NINJA_WEIGHT,
+		"libcodec2_soft_av1dec_gav1":                    DEFAULT_NINJA_WEIGHT,
+		"libcompositionengine_test":                     DEFAULT_NINJA_WEIGHT,
+		"libdevices":                                    DEFAULT_NINJA_WEIGHT,
+		"libfrontend_proto":                             DEFAULT_NINJA_WEIGHT,
+		"libhwtrust":                                    DEFAULT_NINJA_WEIGHT,
+		"libjni":                                        DEFAULT_NINJA_WEIGHT,
+		"libkeystore2":                                  DEFAULT_NINJA_WEIGHT,
+		"libkmr_ta":                                     DEFAULT_NINJA_WEIGHT,
+		"liblmp":                                        DEFAULT_NINJA_WEIGHT,
+		"libopenjdkjvmtid":                              DEFAULT_NINJA_WEIGHT,
+		"libprotobuf_deprecated":                        DEFAULT_NINJA_WEIGHT,
+		"libprotobuf":                                   DEFAULT_NINJA_WEIGHT,
+		"libregex":                                      DEFAULT_NINJA_WEIGHT,
+		"LibStatsPullTests":                             DEFAULT_NINJA_WEIGHT,
+		"libstd":                                        DEFAULT_NINJA_WEIGHT,
+		"libsurfaceflinger_unittest":                    DEFAULT_NINJA_WEIGHT,
+		"libsyn":                                        DEFAULT_NINJA_WEIGHT,
+		"libtokio":                                      DEFAULT_NINJA_WEIGHT,
+		"libuwb_core":                                   DEFAULT_NINJA_WEIGHT,
+		"libuwb_uci_jni_rust":                           DEFAULT_NINJA_WEIGHT,
+		"libuwb_uci_packets":                            DEFAULT_NINJA_WEIGHT,
+		"libvpx":                                        DEFAULT_NINJA_WEIGHT,
+		"libvulkan_enc":                                 DEFAULT_NINJA_WEIGHT,
+		"libwebrtc":                                     DEFAULT_NINJA_WEIGHT,
+		"LiveWallpapersPicker":                          DEFAULT_NINJA_WEIGHT,
+		"LockTaskApp":                                   DEFAULT_NINJA_WEIGHT,
+		"LongevityPlatformLibTests":                     DEFAULT_NINJA_WEIGHT,
+		"ManagedProvisioning":                           DEFAULT_NINJA_WEIGHT,
+		"ManagedProvisioningTests":                      DEFAULT_NINJA_WEIGHT,
+		"MediaProvider":                                 DEFAULT_NINJA_WEIGHT,
+		"MediaProviderClientTests":                      DEFAULT_NINJA_WEIGHT,
+		"MediaProviderLegacy":                           DEFAULT_NINJA_WEIGHT,
+		"messaging":                                     DEFAULT_NINJA_WEIGHT,
+		"metalava":                                      DEFAULT_NINJA_WEIGHT,
+		"MicrobenchmarkRunnerTests":                     DEFAULT_NINJA_WEIGHT,
+		"microdroid_manager":                            DEFAULT_NINJA_WEIGHT,
+		"minikin_tests":                                 DEFAULT_NINJA_WEIGHT,
+		"MLCTestApp":                                    DEFAULT_NINJA_WEIGHT,
+		"MmsService":                                    DEFAULT_NINJA_WEIGHT,
+		"MmsServiceTests":                               DEFAULT_NINJA_WEIGHT,
+		"module-lib-api-stubs-docs-non-updatable":       DEFAULT_NINJA_WEIGHT,
+		"motion_tool_lib_tests":                         DEFAULT_NINJA_WEIGHT,
+		"MtpService":                                    DEFAULT_NINJA_WEIGHT,
+		"MultiUserTests":                                DEFAULT_NINJA_WEIGHT,
+		"NearbyIntegrationUiTests":                      DEFAULT_NINJA_WEIGHT,
+		"net_test_bluetooth":                            DEFAULT_NINJA_WEIGHT,
+		"net_test_btif":                                 DEFAULT_NINJA_WEIGHT,
+		"net_test_main_shim":                            DEFAULT_NINJA_WEIGHT,
+		"net_test_stack":                                DEFAULT_NINJA_WEIGHT,
+		"net-tests-utils":                               DEFAULT_NINJA_WEIGHT,
+		"NetworkStackCoverageTests":                     DEFAULT_NINJA_WEIGHT,
+		"NetworkStackIntegrationTests":                  DEFAULT_NINJA_WEIGHT,
+		"NetworkStackNext":                              DEFAULT_NINJA_WEIGHT,
+		"NfcNci":                                        DEFAULT_NINJA_WEIGHT,
+		"NfcNciUnitTests":                               DEFAULT_NINJA_WEIGHT,
+		"NotEmptyTestApp":                               DEFAULT_NINJA_WEIGHT,
+		"NotificationFunctionalTests":                   DEFAULT_NINJA_WEIGHT,
+		"oatdumpd":                                      DEFAULT_NINJA_WEIGHT,
+		"OsuLogin":                                      DEFAULT_NINJA_WEIGHT,
+		"PackageInstaller":                              DEFAULT_NINJA_WEIGHT,
+		"PackageManagerComponentOverrideTests":          DEFAULT_NINJA_WEIGHT,
+		"PackageManagerPerfTests":                       DEFAULT_NINJA_WEIGHT,
+		"PackageManagerServiceServerTests":              DEFAULT_NINJA_WEIGHT,
+		"PackageManagerServiceUnitTests":                DEFAULT_NINJA_WEIGHT,
+		"PackageWatchdogTest":                           DEFAULT_NINJA_WEIGHT,
+		"PandoraServerLib":                              DEFAULT_NINJA_WEIGHT,
+		"pdl":                                           DEFAULT_NINJA_WEIGHT,
+		"perfetto_trace_java_protos":                    DEFAULT_NINJA_WEIGHT,
+		"perfetto_trace-full":                           DEFAULT_NINJA_WEIGHT,
+		"PermissionController":                          DEFAULT_NINJA_WEIGHT,
+		"PermissionControllerMockingTests":              DEFAULT_NINJA_WEIGHT,
+		"PixelAppCompTests":                             DEFAULT_NINJA_WEIGHT,
+		"platform-bootclasspath":                        DEFAULT_NINJA_WEIGHT,
+		"PlatformCommonScenarioTests":                   DEFAULT_NINJA_WEIGHT,
+		"PlatformComposeCoreTests":                      DEFAULT_NINJA_WEIGHT,
+		"platformprotoslite":                            DEFAULT_NINJA_WEIGHT,
+		"PlatformRuleTests":                             DEFAULT_NINJA_WEIGHT,
+		"precompiled_sepolicy-without_apex":             DEFAULT_NINJA_WEIGHT,
+		"PresencePolling":                               DEFAULT_NINJA_WEIGHT,
+		"PrintSpooler":                                  DEFAULT_NINJA_WEIGHT,
+		"QuickSearchBox":                                DEFAULT_NINJA_WEIGHT,
+		"RemoteDPCTestApp":                              DEFAULT_NINJA_WEIGHT,
+		"RemoteProvisioningServiceTests":                DEFAULT_NINJA_WEIGHT,
+		"RkpdAppUnitTests":                              DEFAULT_NINJA_WEIGHT,
+		"Robolectric_shadows_framework":                 DEFAULT_NINJA_WEIGHT,
+		"RoleHolderApp":                                 DEFAULT_NINJA_WEIGHT,
+		"SdkSandbox":                                    DEFAULT_NINJA_WEIGHT,
+		"service-appsearch":                             DEFAULT_NINJA_WEIGHT,
+		"service-connectivity":                          DEFAULT_NINJA_WEIGHT,
+		"service-uwb":                                   DEFAULT_NINJA_WEIGHT,
+		"service-wifi":                                  DEFAULT_NINJA_WEIGHT,
+		"services-non-updatable-stubs":                  DEFAULT_NINJA_WEIGHT,
+		"services":                                      DEFAULT_NINJA_WEIGHT,
+		"Settings-core":                                 DEFAULT_NINJA_WEIGHT,
+		"Settings":                                      DEFAULT_NINJA_WEIGHT,
+		"SettingsIntelligence":                          DEFAULT_NINJA_WEIGHT,
+		"SettingsLibTests":                              DEFAULT_NINJA_WEIGHT,
+		"SettingsProvider":                              DEFAULT_NINJA_WEIGHT,
+		"Shell":                                         DEFAULT_NINJA_WEIGHT,
+		"SimAppDialog":                                  DEFAULT_NINJA_WEIGHT,
+		"sl4a":                                          DEFAULT_NINJA_WEIGHT,
+		"SmsApp":                                        DEFAULT_NINJA_WEIGHT,
+		"SoundPicker":                                   DEFAULT_NINJA_WEIGHT,
+		"StagedInstallTest":                             DEFAULT_NINJA_WEIGHT,
+		"StatementService":                              DEFAULT_NINJA_WEIGHT,
+		"StatsdFrameworkTestApp":                        DEFAULT_NINJA_WEIGHT,
+		"StatsdFrameworkTestAppNoPermission":            DEFAULT_NINJA_WEIGHT,
+		"statsdprotolite":                               DEFAULT_NINJA_WEIGHT,
+		"Stk":                                           DEFAULT_NINJA_WEIGHT,
+		"StorageManager":                                DEFAULT_NINJA_WEIGHT,
+		"system-api-stubs-docs-non-updatable":           DEFAULT_NINJA_WEIGHT,
+		"SystemUI-core":                                 DEFAULT_NINJA_WEIGHT,
+		"SystemUI-tests-base":                           DEFAULT_NINJA_WEIGHT,
+		"SystemUI-tests":                                DEFAULT_NINJA_WEIGHT,
+		"SystemUI":                                      DEFAULT_NINJA_WEIGHT,
+		"SystemUIComposeFeatures":                       DEFAULT_NINJA_WEIGHT,
+		"SystemUIComposeFeaturesTests":                  DEFAULT_NINJA_WEIGHT,
+		"SystemUITests":                                 DEFAULT_NINJA_WEIGHT,
+		"Tag":                                           DEFAULT_NINJA_WEIGHT,
+		"Telecom":                                       DEFAULT_NINJA_WEIGHT,
+		"TelecomUnitTests":                              DEFAULT_NINJA_WEIGHT,
+		"telephony-common":                              DEFAULT_NINJA_WEIGHT,
+		"TelephonyProvider":                             DEFAULT_NINJA_WEIGHT,
+		"TeleService":                                   DEFAULT_NINJA_WEIGHT,
+		"test-api-stubs-docs-non-updatable":             DEFAULT_NINJA_WEIGHT,
+		"TetheringIntegrationTests":                     DEFAULT_NINJA_WEIGHT,
+		"TetheringNext":                                 DEFAULT_NINJA_WEIGHT,
+		"ThemePickerTests":                              DEFAULT_NINJA_WEIGHT,
+		"Traceur":                                       DEFAULT_NINJA_WEIGHT,
+		"UsbManagerTests":                               DEFAULT_NINJA_WEIGHT,
+		"UsbTests":                                      DEFAULT_NINJA_WEIGHT,
+		"virtmgr":                                       DEFAULT_NINJA_WEIGHT,
+		"WallpaperPicker2TestLib":                       DEFAULT_NINJA_WEIGHT,
+		"WallpaperPicker2Tests":                         DEFAULT_NINJA_WEIGHT,
+		"WifiDialog":                                    DEFAULT_NINJA_WEIGHT,
+		"wm-proto-parsers":                              DEFAULT_NINJA_WEIGHT,
+		"WMShellFlickerTests":                           DEFAULT_NINJA_WEIGHT,
+		"WmTests":                                       DEFAULT_NINJA_WEIGHT,
+		"wpa_supplicant":                                DEFAULT_NINJA_WEIGHT,
 	}
 )
diff --git a/android/namespace.go b/android/namespace.go
index f357ca7..c47a1c5 100644
--- a/android/namespace.go
+++ b/android/namespace.go
@@ -245,6 +245,10 @@
 	return allModules
 }
 
+func (r *NameResolver) SkippedModuleFromName(moduleName string, namespace blueprint.Namespace) (skipInfos []blueprint.SkippedModuleInfo, skipped bool) {
+	return r.rootNamespace.moduleContainer.SkippedModuleFromName(moduleName, namespace)
+}
+
 // parses a fully-qualified path (like "//namespace_path:module_name") into a namespace name and a
 // module name
 func (r *NameResolver) parseFullyQualifiedName(name string) (namespaceName string, moduleName string, ok bool) {
@@ -333,11 +337,16 @@
 
 	// determine which namespaces the module can be found in
 	foundInNamespaces := []string{}
+	skippedDepErrors := []error{}
 	for _, namespace := range r.sortedNamespaces.sortedItems() {
 		_, found := namespace.moduleContainer.ModuleFromName(depName, nil)
 		if found {
 			foundInNamespaces = append(foundInNamespaces, namespace.Path)
 		}
+		_, skipped := namespace.moduleContainer.SkippedModuleFromName(depName, nil)
+		if skipped {
+			skippedDepErrors = append(skippedDepErrors, namespace.moduleContainer.MissingDependencyError(depender, dependerNamespace, depName))
+		}
 	}
 	if len(foundInNamespaces) > 0 {
 		// determine which namespaces are visible to dependerNamespace
@@ -350,6 +359,9 @@
 		text += fmt.Sprintf("\nModule %q is defined in namespace %q which can read these %v namespaces: %q", depender, dependerNs.Path, len(importedNames), importedNames)
 		text += fmt.Sprintf("\nModule %q can be found in these namespaces: %q", depName, foundInNamespaces)
 	}
+	for _, err := range skippedDepErrors {
+		text += fmt.Sprintf("\n%s", err.Error())
+	}
 
 	return fmt.Errorf(text)
 }
diff --git a/bp2build/bp2build_product_config.go b/bp2build/bp2build_product_config.go
index fdda35b..ab2f821 100644
--- a/bp2build/bp2build_product_config.go
+++ b/bp2build/bp2build_product_config.go
@@ -78,20 +78,18 @@
 	# currently lunched, product, turn this into a select with an arm for each product.
 	actual = "@soong_injection//{PRODUCT_FOLDER}:{PRODUCT}-{VARIANT}",
 )
-
-alias(
-	name = "product_vars",
-	actual = select({
-		# TODO: When we start generating the platforms for more than just the
-		# currently lunched, product, this select should have an arm for each product.
-		"@soong_injection//{PRODUCT_FOLDER}:{PRODUCT}-{VARIANT}_constraint_value": "@soong_injection//{PRODUCT_FOLDER}:{PRODUCT}-{VARIANT}_product_vars",
-		"@soong_injection//product_config_platforms/products/aosp_arm_for_testing:aosp_arm_for_testing_constraint_value": "@soong_injection//product_config_platforms/products/aosp_arm_for_testing:aosp_arm_for_testing_product_vars",
-		"@soong_injection//product_config_platforms/products/aosp_arm64_for_testing:aosp_arm64_for_testing_constraint_value": "@soong_injection//product_config_platforms/products/aosp_arm64_for_testing:aosp_arm64_for_testing_product_vars",
-		"@soong_injection//product_config_platforms/products/aosp_x86_for_testing:aosp_x86_for_testing_constraint_value": "@soong_injection//product_config_platforms/products/aosp_x86_for_testing:aosp_x86_for_testing_product_vars",
-		"@soong_injection//product_config_platforms/products/aosp_x86_64_for_testing:aosp_x86_64_for_testing_constraint_value": "@soong_injection//product_config_platforms/products/aosp_x86_64_for_testing:aosp_x86_64_for_testing_product_vars",
-		"@soong_injection//product_config_platforms/products/aosp_arm64_for_testing_no_compression:aosp_arm64_for_testing_no_compression_constraint_value": "@soong_injection//product_config_platforms/products/aosp_arm64_for_testing_no_compression:aosp_arm64_for_testing_no_compression_product_vars",
-	}),
-)
+`)),
+		newFile(
+			"product_config_platforms",
+			"product_labels.bzl",
+			productReplacer.Replace(`
+# This file keeps a list of all the products in the android source tree, because they're
+# discovered as part of a preprocessing step before bazel runs.
+# TODO: When we start generating the platforms for more than just the
+# currently lunched product, they should all be listed here
+product_labels = [
+  "@soong_injection//{PRODUCT_FOLDER}:{PRODUCT}-{VARIANT}"
+]
 `)),
 		newFile(
 			"product_config_platforms",
@@ -127,42 +125,5 @@
 `)),
 	}
 
-	// Add some products for testing
-	for _, arch := range []string{"arm", "arm64", "x86", "x86_64"} {
-		result = append(result, newFile(
-			fmt.Sprintf("product_config_platforms/products/aosp_%s_for_testing", arch),
-			"BUILD",
-			fmt.Sprintf(`
-package(default_visibility=[
-    "@soong_injection//product_config_platforms:__subpackages__",
-    "@//build/bazel/product_config:__subpackages__",
-])
-load("@//build/bazel/tests/products:aosp_%s.variables.bzl", _soong_variables = "variables")
-load("@//build/bazel/product_config:android_product.bzl", "android_product")
-
-android_product(
-    name = "aosp_%s_for_testing",
-    soong_variables = _soong_variables,
-)
-`, arch, arch)))
-	}
-	result = append(result, newFile(
-		"product_config_platforms/products/aosp_arm64_for_testing_no_compression",
-		"BUILD",
-		`
-package(default_visibility=[
-    "@soong_injection//product_config_platforms:__subpackages__",
-    "@//build/bazel/product_config:__subpackages__",
-])
-load("@bazel_skylib//lib:dicts.bzl", "dicts")
-load("@//build/bazel/tests/products:aosp_arm64.variables.bzl", _soong_variables = "variables")
-load("@//build/bazel/product_config:android_product.bzl", "android_product")
-
-android_product(
-    name = "aosp_arm64_for_testing_no_compression",
-    soong_variables = dicts.add(_soong_variables, {"CompressedApex": False}),
-)
-`))
-
 	return result, nil
 }
diff --git a/cc/config/riscv64_device.go b/cc/config/riscv64_device.go
index 35c57f9..76c8e5d 100644
--- a/cc/config/riscv64_device.go
+++ b/cc/config/riscv64_device.go
@@ -28,6 +28,9 @@
 		"-fno-emulated-tls",
 		// For -fsanitize=shadow-call-stack.
 		"-ffixed-x18",
+		// A temporary fix for SExtWRemoval miscompilation bug.
+		"-mllvm",
+		"-riscv-disable-sextw-removal=true",
 	}
 
 	riscv64ArchVariantCflags = map[string][]string{}
diff --git a/cmd/sbox/sbox.go b/cmd/sbox/sbox.go
index 91e3540..fc56dd5 100644
--- a/cmd/sbox/sbox.go
+++ b/cmd/sbox/sbox.go
@@ -390,7 +390,7 @@
 		}
 	}
 
-	const maxErrors = 10
+	const maxErrors = 25
 
 	if len(incorrectOutputDirectoryErrors) > 0 {
 		errorMessage := ""
diff --git a/rust/builder.go b/rust/builder.go
index 09dfe02..b89e7ad 100644
--- a/rust/builder.go
+++ b/rust/builder.go
@@ -256,7 +256,7 @@
 	// Disallow experimental features
 	modulePath := android.PathForModuleSrc(ctx).String()
 	if !(android.IsThirdPartyPath(modulePath) || strings.HasPrefix(modulePath, "prebuilts")) {
-		rustcFlags = append(rustcFlags, "-Zallow-features=\"default_alloc_error_handler,custom_inner_attributes,mixed_integer_ops\"")
+		rustcFlags = append(rustcFlags, "-Zallow-features=\"custom_inner_attributes,mixed_integer_ops\"")
 	}
 
 	// Collect linker flags
diff --git a/rust/protobuf.go b/rust/protobuf.go
index 88e80fe..e30f25d 100644
--- a/rust/protobuf.go
+++ b/rust/protobuf.go
@@ -73,7 +73,7 @@
 	outDir := android.PathForModuleOut(ctx)
 	protoFiles := android.PathsForModuleSrc(ctx, proto.Properties.Protos)
 	grpcFiles := android.PathsForModuleSrc(ctx, proto.Properties.Grpc_protos)
-	protoPluginPath := ctx.Config().HostToolPath(ctx, "protoc-gen-rust")
+	protoPluginPath := ctx.Config().HostToolPath(ctx, "protoc-gen-rust-deprecated")
 
 	commonProtoFlags = append(commonProtoFlags, defaultProtobufFlags...)
 	commonProtoFlags = append(commonProtoFlags, proto.Properties.Proto_flags...)
@@ -206,7 +206,7 @@
 
 func (proto *protobufDecorator) SourceProviderDeps(ctx DepsContext, deps Deps) Deps {
 	deps = proto.BaseSourceProvider.SourceProviderDeps(ctx, deps)
-	deps.Rustlibs = append(deps.Rustlibs, "libprotobuf")
+	deps.Rustlibs = append(deps.Rustlibs, "libprotobuf_deprecated")
 	deps.HeaderLibs = append(deps.SharedLibs, proto.Properties.Header_libs...)
 
 	if len(proto.Properties.Grpc_protos) > 0 {
diff --git a/rust/protobuf_test.go b/rust/protobuf_test.go
index f0f5ec0..0aa4549 100644
--- a/rust/protobuf_test.go
+++ b/rust/protobuf_test.go
@@ -42,14 +42,14 @@
 	`)
 	// Check that libprotobuf is added as a dependency.
 	librust_proto := ctx.ModuleForTests("librust_proto", "android_arm64_armv8-a_dylib").Module().(*Module)
-	if !android.InList("libprotobuf", librust_proto.Properties.AndroidMkDylibs) {
-		t.Errorf("libprotobuf dependency missing for rust_protobuf (dependency missing from AndroidMkDylibs)")
+	if !android.InList("libprotobuf_deprecated", librust_proto.Properties.AndroidMkDylibs) {
+		t.Errorf("libprotobuf_deprecated dependency missing for rust_protobuf (dependency missing from AndroidMkDylibs)")
 	}
 
 	// Make sure the correct plugin is being used.
 	librust_proto_out := ctx.ModuleForTests("librust_proto", "android_arm64_armv8-a_source").Output("buf.rs")
 	cmd := librust_proto_out.RuleParams.Command
-	if w := "protoc-gen-rust"; !strings.Contains(cmd, w) {
+	if w := "protoc-gen-rust-deprecated"; !strings.Contains(cmd, w) {
 		t.Errorf("expected %q in %q", w, cmd)
 	}
 
diff --git a/rust/testing.go b/rust/testing.go
index 24ca3d6..a33d948 100644
--- a/rust/testing.go
+++ b/rust/testing.go
@@ -127,7 +127,7 @@
 			min_sdk_version: "29",
 		}
 		rust_library {
-			name: "libprotobuf",
+			name: "libprotobuf_deprecated",
 			crate_name: "protobuf",
 			srcs: ["foo.rs"],
 			host_supported: true,