kumquat-buildroot/docs/manual/developers.txt
Thomas Petazzoni 47f359a615 utils/get-developers: implement a -v action for DEVELOPERS file validation
Commit "45aabcddc5 utils/get-developers: really make it callable from
elsewhere than the toplevel directory" had a unforeseen side-effect:
the fact that check-developers with no arguments used to validate the
syntax of the DEVELOPERS no longer works. Indeed, the
parse_developers() call was moved *after* the check that verifies if
at least one action is passed. Due to this, the check-DEVELOPERS
verification in Gitlab CI, which invokes get-developers without
argument to validate the DEVELOPERS file... no longer does anything
useful.

In order to fix this, we introduce an explicit action in
get-developers to request the validation of the DEVELOPERS file. The
implementation is trivial, as the validation is already done by
calling parse_developers(), but at least now we have an action that
does "nothing", except execute until the validation is done.

This is also much more explicit than "invoke get-developers without
arguments to just do validation".

The initial investigation of the issue was done by Ricardo Martincoski
<ricardo.martincoski@gmail.com> and reported at
https://patchwork.ozlabs.org/project/buildroot/patch/20220528014832.289907-1-ricardo.martincoski@gmail.com/,
but we have chosen to introduce a separate -v option rather than
making the validation part of the existing -c action, which serves a
different purpose.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2022-07-23 16:32:58 +02:00

51 lines
2.1 KiB
Plaintext

// -*- mode:doc; -*-
// vim: set syntax=asciidoc:
[[DEVELOPERS]]
== DEVELOPERS file and get-developers
The main Buildroot directory contains a file named +DEVELOPERS+ that
lists the developers involved with various areas of Buildroot. Thanks
to this file, the +get-developers+ tool allows to:
- Calculate the list of developers to whom patches should be sent, by
parsing the patches and matching the modified files with the
relevant developers. See xref:submitting-patches[] for details.
- Find which developers are taking care of a given architecture or
package, so that they can be notified when a build failure occurs on
this architecture or package. This is done in interaction with
Buildroot's autobuild infrastructure.
We ask developers adding new packages, new boards, or generally new
functionality in Buildroot, to register themselves in the +DEVELOPERS+
file. As an example, we expect a developer contributing a new package
to include in his patch the appropriate modification to the
+DEVELOPERS+ file.
The +DEVELOPERS+ file format is documented in detail inside the file
itself.
The +get-developers+ tool, located in +utils/+ allows to use
the +DEVELOPERS+ file for various tasks:
- When passing one or several patches as command line argument,
+get-developers+ will return the appropriate +git send-email+
command. If the +-e+ option is passed, only the email addresses are
printed in a format suitable for +git send-email --cc-cmd+.
- When using the +-a <arch>+ command line option, +get-developers+ will
return the list of developers in charge of the given architecture.
- When using the +-p <package>+ command line option, +get-developers+
will return the list of developers in charge of the given package.
- When using the +-c+ command line option, +get-developers+ will look
at all files under version control in the Buildroot repository, and
list the ones that are not handled by any developer. The purpose of
this option is to help completing the +DEVELOPERS+ file.
- When using the +-v+ command line option, it validates the integrity
of the DEVELOPERS file and will note WARNINGS for items that don't
match.