From f711999132f148448bfb5df164163976b6d20b50 Mon Sep 17 00:00:00 2001 From: Inseob Kim Date: Tue, 30 Jul 2019 19:17:58 +0900 Subject: [PATCH] Implement sysprop_library API stability check sysprop_library now checks the API stability itself, cutting dependency on java_sdk_library. Under the directory {module_dir}/api, {module_name}-current.txt and {module_name}-latest.txt hold API signatures. When sysprop_library is built, or a user run "m {module_name}-check-api" command, API check is performed. First, current.txt must have exactly same signature with built sysprop_library module. Second, current.txt must be compatible with latest.txt. Build system emits a handy error message to generate/update those API files, in case of missing or mismatching. Also, a script file for freezing API files is introduced. Bug: 131637873 Test: 1) m && boot blueline Test: 2) m {sysprop_library} performs API check Test: 3) manual test for check-api, freezing api Change-Id: I6b95eebafaf88ad326be5d7c890e000cbdb79cb5 --- healthd/api/charger_sysprop-current.txt | 29 +++++++++++++++++++++++++ healthd/api/charger_sysprop-latest.txt | 29 +++++++++++++++++++++++++ healthd/api/current.txt | 1 - healthd/api/removed.txt | 1 - healthd/api/system-current.txt | 1 - healthd/api/system-removed.txt | 1 - healthd/api/test-current.txt | 1 - healthd/api/test-removed.txt | 1 - 8 files changed, 58 insertions(+), 6 deletions(-) create mode 100644 healthd/api/charger_sysprop-current.txt create mode 100644 healthd/api/charger_sysprop-latest.txt delete mode 100644 healthd/api/current.txt delete mode 100644 healthd/api/removed.txt delete mode 100644 healthd/api/system-current.txt delete mode 100644 healthd/api/system-removed.txt delete mode 100644 healthd/api/test-current.txt delete mode 100644 healthd/api/test-removed.txt diff --git a/healthd/api/charger_sysprop-current.txt b/healthd/api/charger_sysprop-current.txt new file mode 100644 index 000000000..678c847cd --- /dev/null +++ b/healthd/api/charger_sysprop-current.txt @@ -0,0 +1,29 @@ +props { + module: "android.sysprop.ChargerProperties" + prop { + api_name: "disable_init_blank" + scope: Internal + prop_name: "ro.charger.disable_init_blank" + } + prop { + api_name: "draw_split_offset" + type: Long + scope: Internal + prop_name: "ro.charger.draw_split_offset" + } + prop { + api_name: "draw_split_screen" + scope: Internal + prop_name: "ro.charger.draw_split_screen" + } + prop { + api_name: "enable_suspend" + scope: Internal + prop_name: "ro.charger.enable_suspend" + } + prop { + api_name: "no_ui" + scope: Internal + prop_name: "ro.charger.no_ui" + } +} diff --git a/healthd/api/charger_sysprop-latest.txt b/healthd/api/charger_sysprop-latest.txt new file mode 100644 index 000000000..678c847cd --- /dev/null +++ b/healthd/api/charger_sysprop-latest.txt @@ -0,0 +1,29 @@ +props { + module: "android.sysprop.ChargerProperties" + prop { + api_name: "disable_init_blank" + scope: Internal + prop_name: "ro.charger.disable_init_blank" + } + prop { + api_name: "draw_split_offset" + type: Long + scope: Internal + prop_name: "ro.charger.draw_split_offset" + } + prop { + api_name: "draw_split_screen" + scope: Internal + prop_name: "ro.charger.draw_split_screen" + } + prop { + api_name: "enable_suspend" + scope: Internal + prop_name: "ro.charger.enable_suspend" + } + prop { + api_name: "no_ui" + scope: Internal + prop_name: "ro.charger.no_ui" + } +} diff --git a/healthd/api/current.txt b/healthd/api/current.txt deleted file mode 100644 index d802177e2..000000000 --- a/healthd/api/current.txt +++ /dev/null @@ -1 +0,0 @@ -// Signature format: 2.0 diff --git a/healthd/api/removed.txt b/healthd/api/removed.txt deleted file mode 100644 index d802177e2..000000000 --- a/healthd/api/removed.txt +++ /dev/null @@ -1 +0,0 @@ -// Signature format: 2.0 diff --git a/healthd/api/system-current.txt b/healthd/api/system-current.txt deleted file mode 100644 index d802177e2..000000000 --- a/healthd/api/system-current.txt +++ /dev/null @@ -1 +0,0 @@ -// Signature format: 2.0 diff --git a/healthd/api/system-removed.txt b/healthd/api/system-removed.txt deleted file mode 100644 index d802177e2..000000000 --- a/healthd/api/system-removed.txt +++ /dev/null @@ -1 +0,0 @@ -// Signature format: 2.0 diff --git a/healthd/api/test-current.txt b/healthd/api/test-current.txt deleted file mode 100644 index d802177e2..000000000 --- a/healthd/api/test-current.txt +++ /dev/null @@ -1 +0,0 @@ -// Signature format: 2.0 diff --git a/healthd/api/test-removed.txt b/healthd/api/test-removed.txt deleted file mode 100644 index d802177e2..000000000 --- a/healthd/api/test-removed.txt +++ /dev/null @@ -1 +0,0 @@ -// Signature format: 2.0