[cfe-dev] !!! 3.2 Release branch patching and the Code Owners

32bitmicro root at 32bitmicro.com
Fri Nov 16 23:14:53 PST 2012

>> Understanding the internal llvm/clang structure is easy,
>> deducing the correct code owner is not due to the
>> vague and changing nature of the CODE_OWNERS.TXT
> Does not seem to me and many people around. If in doubt - ask at ML or IRC.

I have been through somewhat similar situations before
and the only solution that works is to have a quick and
unambiguous way of determining the required information.
Indirection through ML or IRC does not work particularly
well for a geographically spread team like llvm.
It might work locally but we are working in so many
different timezones that lag introduced by the indirection
is just another headache.

>> "Exception handling, Windows codegen, ARM EABI"
> Just for your information - this covers some lines in some files in
> llvm/CodeGen, some files in lib/Target, some files in lib/Target/X86
> and so on. Note that subjects are split across the files, we do not
> have one-to-one or one-to-many mapping between subject and file. If
> we'd follow your approach we'd need either specify too wide wildcards
> (e.g. lib/CodeGen/*) or specify line ranges in the files, which does
> not make any sense.

I have checked-in this llvm/utils/wciia.py utility
(aka Whose Code Is It Anyway for lack of a better name).

It works of the CODE_OWNERS.TXT file as it tries to
determine the owner of the particular path or file.
Even this first rough version shows that it can be useful
without burdening the code owner with too much extra work.
It is not perfect and I have listed limitations in the
source code but it deals with overlapping ownership,
by listing all of the owners who have laid claim to the
particular path.

Anyway, it can be improved if needed, patches are welcome!

Here are couple of examples:

$ utils/wciia.py .
The owner(s) of the (.) is(are) : ['Chris Lattner']

$ utils/wciia.py lib/
The owner(s) of the (lib/) is(are) : ['Owen Anderson', 'Joe
Abbey','Justin Holewinski', 'Chris Lattner']

$ utils/wciia.py lib/Target/NVPTX/
The owner(s) of the (lib/Target/NVPTX/) is(are) : ['Justin Holewinski',
'Chris Lattner']

$ utils/wciia.py lib/Target/NAN
path (lib/Target/NAN) does not exist

> --
> With best regards, Anton Korobeynikov
> Faculty of Mathematics and Mechanics, Saint Petersburg State University


More information about the cfe-dev mailing list