Eliminate another duplicated list of all modules. This one has a couple
of workarounds due to different naming of impl libs, and bluetooth not
being ready.
Bug: 169103987
Test: m framework-all and diff intermediates (no diffs)
Merged-In: Ia8627c6e3977cd271e389ec482388ff73661881d
Change-Id: Ia8627c6e3977cd271e389ec482388ff73661881d
Previously, conscrypt and i18n were excluded from the list of modules
from which combined_apis retrieved system and module-lib API files as
they did not provide those files. They now provide those files so no
longer need to be treated specially.
The conscrypt and i18n (and art) are excluded from the
framework-updatable-stubs-module_libs_api as that is used with a
java_system_modules that already provides the conscrypt and i18n
and art APIs.
Bug: 216435117
Test: m all-modules-system-stubs
m frameworks-base-api-system-current.txt
m frameworks-base-api-module-lib-current.txt
Change-Id: I58502249c59b1faa65fb288ac11becd9496ff37e
Previously, conscrypt and i18n were excluded from the list of modules
from which combined_apis retrieved annotation zip files as they did not
provide those files. They now provide those files so no longer need to
be treated specially.
Bug: 216435117
Test: m sdk-annotations.zip
Change-Id: I6db85a44715362dfb288ddf9010e2289233acf78
Eliminate another two enumerations of all modules.
Bug: 169103987
Test: m android_{,system_}stubs_current && diff intermediates (no diffs)
Merged-In: I0d35f1e76320356ee4e5535a40614cf7d8ff4486
Change-Id: I0d35f1e76320356ee4e5535a40614cf7d8ff4486
- Split out nsd APIs and hidden APIs to Connectivity module.
- Keep the all files in f/b/packages/Connectivity-T and add
framework-connectivity-tiramisu library on p/m/Connectivity.
Then make framework to use this module library.
- Remove NsdService from SystemServer which will register from
ConnectivityServiceInitializer
Bug: 206893064
Test: m online-sdk-dev-docs
Test: atest FrameworksNetTests CtsNetTestCases
CTS-Coverage-Bug: 207804007
Merged-In: I72c7de124b9cc53f2263bd452ecd5f39e88e485b
Change-Id: I72c7de124b9cc53f2263bd452ecd5f39e88e485b
For use by framework-doc-stubs, to avoid duplicating the list of
modules there.
Bug: 169103987
Test: m framework-doc-stubs ; diff intermediates before & after
Merged-In: Ib1a1d1bb9fcf866278c6ddd057712a9c92716dbf
Change-Id: Ib1a1d1bb9fcf866278c6ddd057712a9c92716dbf
- Make a more generically useful "expandArray" function that can handle
all the various transforms needed here (another one in the next cl).
- Move all the utility functions to the bottom of the file.
Test: presubmit
Merged-In: If0362c6dd90635831ac2cb2f7da336212f4c23fd
Change-Id: If0362c6dd90635831ac2cb2f7da336212f4c23fd
Bug: 169103987
Test: m framework-updatable-stubs-module_libs_api and diff intermediates
folder before and after.
Merged-In: I6018791ae136bc764a6e846078c6bce59bcc123b
Change-Id: I6018791ae136bc764a6e846078c6bce59bcc123b
Some bootclasspath libraries are currently conditionally included
in the SDK. Add support for that in api.go.
Bug: 169103987
Test: mmm frameworks/base/api
Merged-In: I7704a884675eb58c429a59f99a663cf09807ecec
Change-Id: I7704a884675eb58c429a59f99a663cf09807ecec
Avoid hardcoding the list of modules in yet another place.
Bug: 169103987
Test: diff zip before & after (identical)
Merged-In: Id3983bf5f4b96b23b1da09fd3617870ac3926ea1
Change-Id: Id3983bf5f4b96b23b1da09fd3617870ac3926ea1
This simplifies the addition of new modules by cutting down the number
of lists that the new module must be added to. The combined_apis module
generates equivalent genrules in a programmatic fashion.
Bug: 169103987
Test: `mmm frameworks/base/api` before and after and compare the soong
intermediates of that folder.
Merged-In: Ia718f9374042e5fbb2168476f5bad3b1867b8a05
Change-Id: Ia718f9374042e5fbb2168476f5bad3b1867b8a05
The gitlinter tool consumes the Android.bp file and from it mines
the module names of libraries that contribute to the public API surface.
The format required by the previous incarnation of api.go (creating a
list in Android.bp and passing that multiple times) did not lend itself
to being easily consumed by gitlinter.
So, change some of the constructs to simplify the Android.bp definition:
- hardcode a couple of "anomalies" inside the go code instead (which
modules have only public APIs and what modules should be filtered
from the lint DB). There's no real benefit to plumb them through the
Android.bp.
- only pass the list of modules once (this allows inlining the list)
Also change the output filename of the genrules. This makes no practical
difference but does match the existing genrules.
Bug: 169103987
Test: in the followup-change that defines a combined_apis
Change-Id: I6715fa9d24603e3cbb8b09510b64c2bf6bac1f27
Merged-In: I6715fa9d24603e3cbb8b09510b64c2bf6bac1f27
Add a soong plugin that can generate the genrule definitions for the
merged api txt files. This will allow removing a lot of duplicated
lists in the Android.bp and simplify adding new modules.
Bug: 169103987
Test: follow-up that uses these rules (branch dependent)
Change-Id: I0c7a9921b7f4c5b74f8b652cb357abf9444ce93f
This goal doesn't exist anymore. The build system automatically
translates it to "sdk".
Test: m win_sdk dist && inspect out/dist/apistubs
Change-Id: Ifc4fb07ce32ef21906e8bb8eae0003b1486a525a
This makes it follow the same naming pattern as other modules
in this directory, which makes it easier to auto-generate.
Bug: 169103987
Test: m
Change-Id: I1c68a433808c034e83049239a72c9b505546bf20
We now produce annotation.zip files individually for each module, but
for the public SDK it's easier to distribute a single zip file with
merged contents. Add a tool for merging these (simple) files.
Bug: 187397779
Test: unittest in cl
Test: diff tests in follow-on CL merging all module annotations.zip
Change-Id: Ic5bb94425dccafab43340805f73fafacab53cb28
Tradefed will need the python unit test verbosity to be set as 2 to make
the test cases information could be parsing correctly.
Bug: 201273904
Test: atest api_versions_trimmer_unittests
Change-Id: I414eb9ec18dbe45e9d2360a5c1baa0bc0b315170
When intentional API breakages are made, the incompatibilities tracking
file must be updated. This makes the failing build rule output the
baseline/incompatibilities file that would have made the build rule
succeed. This file can then be used to update prebuilts/sdk.
Whilst here, also make metalava quiet so we don't need to capture
stdout.
Test: make breaking change, build compat rule, inspect output dir
Change-Id: Ia95b65548371329cd467fd3093db92b471e6986d
lint database file (api-versions.xml) is used for NewApi checks. These checks
were written thinking about app developers.
When used inside the platform codebase, quite often it produces false positives
which make relying on it cumbersome.
This CL removes APIs introduced by mainline modules from the lint database to
remove many such false positives. While some of them might be real issues, the
alternative would be not turning these checks on at all.
Bug: 186478867
Bug: 177434707
Test: m lint-check
Test: m filter-api-versions
Test: atest api_versions_trimmer_unittests
Merged-In: Ic45db0b71a2f13dc456463ce04b2f7744a0e330c
Change-Id: Ic45db0b71a2f13dc456463ce04b2f7744a0e330c
lint database file (api-versions.xml) is used for NewApi checks. These checks
were written thinking about app developers.
When used inside the platform codebase, quite often it produces false positives
which make relying on it cumbersome.
This CL removes APIs introduced by mainline modules from the lint database to
remove many such false positives. While some of them might be real issues, the
alternative would be not turning these checks on at all.
Bug: 186478867
Bug: 177434707
Test: m lint-check
Test: m filter-api-versions
Test: atest api_versions_trimmer_unittests
Change-Id: Ic45db0b71a2f13dc456463ce04b2f7744a0e330c
This dir is home of the modularized SDK now. Add hansson and
modularization team as explicit owners so that we can e.g. approve new
modules being added.
Bug: 184125529
Test: No
Change-Id: I97802b98d24309759f9cf5d3192da6b80dc7657b
Merged-In: I97802b98d24309759f9cf5d3192da6b80dc7657b
This dir is home of the modularized SDK now. Add hansson and
modularization team as explicit owners so that we can e.g. approve new
modules being added.
Bug: 184125529
Test: No
Change-Id: I97802b98d24309759f9cf5d3192da6b80dc7657b
Use the stubs obtained by merging the system server stubs from
non updatable code in the system server, and the system server apis
exposed by mainline modules in SYSTEMSERVERCLASSPATH.
Test: builds
Bug: 177640454
Change-Id: I3687aeb0a4905418d07c819f1091266aaf708558
The global hidden API flags generation has moved from the singleton to
the platform_bootclasspath module type so this change provides the
paths to the additional hidden API flag configuration as part of the
definition of the platform-bootclasspath module.
Bug: 177892522
Test: verified that the out/soong/hiddenapi/... files are unchanged
by this change
Change-Id: Id82b45d2abd6ca2efcfd730689b1eda92d55978e
Necessary for use by API council near the end of a release to verify
their server-side tool has filed bugs for all the API changes.
This utilized bazel-query to figure out what contributes to current.txt,
and then finds api subdirectories in the relevant directories. Finally,
it prints the non-merge SHAs of changes in those directories.
Test: frameworks/base/api/dump_api_shas.sh
Change-Id: I330bfe24fb4df5a8a9218241540f7a7ab3b66e2f
service-media-s does not currently export any system server apis,
however its sources are used to generate the 'old style' system server
stubs.
Test: m checkapi
Bug: 177640454
Change-Id: I075915212af44a207ad70b0761403cacc0a80241