Improve OWNERS coverage across frameworks/base/.

As general background, OWNERS files expedite code reviews by helping
code authors quickly find relevant reviewers, and they also ensure
that stakeholders are involved in code changes in their areas.

Some teams under frameworks/base/ have been using OWNERS files
successfully for many years, and we're ready to expand them to cover
more areas.  Here's the historical coverage statistics for the last
two years of changes before these new OWNERS changes land:

-- 56% of changes are fully covered by OWNERS
-- 17% of changes are partially covered by OWNERS
-- 25% of changes have no OWNERS coverage

Working closely with team leads, we've now identified clear OWNERS on
a per-package basis, and we're using "include" directives whenever
possible to to simplify future maintenance.  With this extensive
effort, we've now improved our coverage as follows:

-- 98% of changes are fully covered by OWNERS
-- 1% of changes are partially covered by OWNERS
-- 1% of changes have no OWNERS coverage

This specific change begins defining top-level OWNERS lists,
including a general catch-all for string translations.

Bug: 174932174
Test: manual
Exempt-From-Owner-Approval: refactoring with team leads buy-in
Change-Id: Ie7ac3302d40a717fa048115cca2ea4359de64959
This commit is contained in:
Jeff Sharkey 2020-12-05 22:30:34 -07:00
parent 6fb53d53d4
commit 061c2ec3b6
7 changed files with 92 additions and 1 deletions

19
OWNERS Normal file
View File

@ -0,0 +1,19 @@
# This top-level list should remain narrowly defined as team leads; individual
# teams are strongly encouraged to define narrower OWNERS files at deeper
# levels within the source tree; see OWNERS.md for more details
dsandler@android.com
dsandler@google.com
hackbod@android.com
hackbod@google.com
jsharkey@android.com
jsharkey@google.com
michaelwr@google.com
nandana@google.com
narayan@google.com
ogunwale@google.com
svetoslavganov@android.com
svetoslavganov@google.com
yamasani@google.com
# Support bulk translation updates
per-file */res*/values*/*.xml = byi@google.com

34
OWNERS.md Normal file
View File

@ -0,0 +1,34 @@
As general background, `OWNERS` files expedite code reviews by helping code
authors quickly find relevant reviewers, and they also ensure that stakeholders
are involved in code changes in their areas.
The structure of `frameworks/base/` is unique among Android repositories, and
it's evolved into a complex interleaved structure over the years. Because of
this structure, the best place to authoritatively define `OWNERS` can vary
wildly, but here are some common patterns:
* `core/java/` contains source that is included in the base classpath, and as
such it's where most APIs are defined:
* `core/java/android/app/`
* `core/java/android/content/`
* `services/core/` contains most system services, and these directories
typically have more granularity than `core/java/`, since they can be refactored
without API changes:
* `services/core/java/com/android/server/net/`
* `services/core/java/com/android/server/wm/`
* `services/` contains several system services that have been isolated from the
main `services/core/` project:
* `services/appwidget/`
* `services/midi/`
* `apex/` contains Mainline modules:
* `apex/jobscheduler/`
* `apex/permission/`
* Finally, some teams may have dedicated top-level directories:
* `media/`
* `wifi/`
Area maintainers are strongly encouraged to list people in a single
authoritative `OWNERS` file in **exactly one** location. Then, other paths
should reference that single authoritative `OWNERS` file using an include
directive. This approach ensures that updates are applied consistently across
the tree, reducing maintenance burden.

5
ZYGOTE_OWNERS Normal file
View File

@ -0,0 +1,5 @@
calin@google.com
chriswailes@google.com
maco@google.com
narayan@google.com
ngeoffray@google.com

2
core/api/OWNERS Normal file
View File

@ -0,0 +1,2 @@
# API changes are managed via Prolog rules, not OWNERS
*

17
core/res/OWNERS Normal file
View File

@ -0,0 +1,17 @@
adamp@google.com
alanv@google.com
dsandler@android.com
dsandler@google.com
hackbod@android.com
hackbod@google.com
jsharkey@android.com
jsharkey@google.com
michaelwr@google.com
nandana@google.com
narayan@google.com
ogunwale@google.com
patb@google.com
svetoslavganov@android.com
svetoslavganov@google.com
toddke@google.com
yamasani@google.com

View File

@ -1 +1,13 @@
per-file privapp-permissions-platform.xml = hackbod@android.com, jsharkey@android.com, svetoslavganov@google.com, toddke@google.com, yamasani@google.com, cbrubaker@google.com, jeffv@google.com, moltmann@google.com, lorenzo@google.com
cbrubaker@google.com
hackbod@android.com
hackbod@google.com
jeffv@google.com
jsharkey@android.com
jsharkey@google.com
lorenzo@google.com
moltmann@google.com
svetoslavganov@android.com
svetoslavganov@google.com
toddke@android.com
toddke@google.com
yamasani@google.com

2
services/api/OWNERS Normal file
View File

@ -0,0 +1,2 @@
# API changes are managed via Prolog rules, not OWNERS
*