<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugzilla.yoctoproject.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.6"
          urlbase="https://bugzilla.yoctoproject.org/"
          
          maintainer="it-coreprojects-helpdesk@linuxfoundation.org"
>

    <bug>
          <bug_id>5799</bug_id>
          
          <creation_ts>2014-02-07 04:04:40 +0000</creation_ts>
          <short_desc>add standardized MAINTAINERS infrastructure</short_desc>
          <delta_ts>2025-06-26 14:57:11 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>7</classification_id>
          <classification>Build System, Metadata &amp; Runtime</classification>
          <product>OE-Core</product>
          <component>configuration</component>
          <version>unspecified</version>
          <rep_platform>x86</rep_platform>
          <op_sys>Multiple</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard>  </status_whiteboard>
          <keywords></keywords>
          <priority>Low</priority>
          <bug_severity>enhancement</bug_severity>
          <target_milestone>Future</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Trevor Woerner">trevor.woerner</reporter>
          <assigned_to name="Richard Purdie">richard.purdie</assigned_to>
          <cc>otavio</cc>
    
    <cc>randy.macleod</cc>
    
    <cc>sgw</cc>
          
          
          <cf_os>---</cf_os>
          <cf_regression_type>---</cf_regression_type>
          
          <cf_docchange>Yes (doc changes required)</cf_docchange>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>40219</commentid>
    <comment_count>0</comment_count>
    <who name="Trevor Woerner">trevor.woerner</who>
    <bug_when>2014-02-07 04:04:40 +0000</bug_when>
    <thetext>http://article.gmane.org/gmane.comp.handhelds.openembedded.core/47894

There currently is no standardized way in which layers keep lists of component maintainers. The Yocto project provides a &quot;recipe&quot; file &quot;meta-poky/meta-yocto/conf/distro/include/maintainers.inc&quot; and various other layers haphazardly try to include maintainership information in various configuration files (e.g. meta-fsl-arm-extra/conf/machine/cfa10036.conf).

But there is a standardized way for a project to keep track of its maintainers: by using a top-level MAINTAINERS file.

A MAINTAINERS file is standardized, and includes many useful clauses to indicate maintainership in various ways. For example maintainership can extend to a directory, a directory plus everything below it, or just a file. Provisions are available to also include websites and multiple maintainers.

The nice thing about having a MAINTAINERS file is the ability to use a &quot;get_maintainer.pl&quot; script to look through patches (before submission) to suggest lists of people to CC. In addition to sending a patch to the mailing list, such a script can parse the standardized MAINTAINERS file to discover addition people who might be interested in learning of patches to their areas of interest. This script is also able to use &quot;git blame&quot; in order to find other potential parties interested in a given patch by creating a list of the people who have modified in the past the lines of code being modified by a given patch.

This issue was discussed at the last OE TSC meeting (Feb 2014). Most were in favour, but there were comments that a MAINTAINERS file might lead some to believe patches could not be applied without a MAINTAINERS &quot;okay&quot;.

I&apos;m creating this issue to track this discussion.

The patch linked to at the start of this issue is an example of a &quot;get_maintainer.pl&quot; script I adjusted from the Linux kernel code-base to add support for its inclusion in the OE project. Also, see the MAINTAINERS file from the Linux kernel for information regarding its syntax.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>40220</commentid>
    <comment_count>1</comment_count>
    <who name="Trevor Woerner">trevor.woerner</who>
    <bug_when>2014-02-07 04:05:22 +0000</bug_when>
    <thetext>Richard, it was decided at the end of the TSC meeting that we&apos;d like you to make a decision on this issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>40221</commentid>
    <comment_count>2</comment_count>
    <who name="Trevor Woerner">trevor.woerner</who>
    <bug_when>2014-02-07 04:08:24 +0000</bug_when>
    <thetext>In retrospect, I should have probably named my proposed script &quot;get_oe_maintainer.pl&quot; so it doesn&apos;t collide with the similar (but slightly different) &quot;get_maintainer.pl&quot; script from the Linux kernel sources.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>40660</commentid>
    <comment_count>3</comment_count>
    <who name="Richard Purdie">richard.purdie</who>
    <bug_when>2014-02-25 10:03:08 +0000</bug_when>
    <thetext>I&apos;m afraid I have my doubts about whether this makes sense. The kernel has grown in a particular way and therefore adopted particular conventions to handle that.

In some ways OE faces the same problem but it also faces it quite differently too, for example we decided to scale with layers instead.

The model is that each layer has a maintainer or small number of maintainers and its those people who gate the changes. Yes, for OE-Core, there is a mechanism for a notion of someone responsible for a given recipe but that convention is specific to OE-Core and in general has not worked well for the wider OE metadata when we&apos;ve tried it in the past. The metadata we use against OE-Core isn&apos;t even in OE-Core, its in poky. That was done to clearly show that this was a way one of the derivative distros maintained things, it wasn&apos;t meant to be part of the core, its more of a housekeeping mechanism.

I think the notion of a maintainer script will trigger all kinds of user confusion type issues since it will sometimes give good information and sometimes give very bad info. The maintainer is the person(s) listed in the READM (as per the Yocto Project Compatible Guidelines).

I&apos;d therefore really like to take a step back here and ask &quot;what problem are we trying to solve?&quot; and &quot;does it really need solving? Does this solution make sense?&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>40845</commentid>
    <comment_count>4</comment_count>
    <who name="Trevor Woerner">trevor.woerner</who>
    <bug_when>2014-03-03 20:57:21 +0000</bug_when>
    <thetext>&gt; I&apos;d therefore really like to take a step back here and ask &quot;what problem are
&gt; we trying to solve?&quot; and &quot;does it really need solving? Does this solution
&gt; make sense?&quot;.

Succinctly, the two problems I was hoping to address are:

1) I think patches are more likely to get reviewed and perhaps they might get better reviews if the most relevant people are CCed (i.e. both the official maintainer(s), and the people who have most recently made changes to the parts of the project touched by the patch).

2) The declaration of who is maintaining various portions of the project isn&apos;t standardized or located somewhere obvious.


By opening this issue, I&apos;m not suggesting these are huge problems for this project (considering the volume of patches, this project actually does quote a good job!). I suggested this issue more as a tweak to the existing process which I hope would improve patch review a little bit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>43520</commentid>
    <comment_count>5</comment_count>
    <who name="Otavio Salvador">otavio</who>
    <bug_when>2014-05-22 19:03:27 +0000</bug_when>
    <thetext>I think I second Trevor&apos;s view. Having patches being sent to people who has contributed to it and to the maintainer may increase the review quality quite a bit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>43666</commentid>
    <comment_count>6</comment_count>
    <who name="Richard Purdie">richard.purdie</who>
    <bug_when>2014-05-29 15:26:39 +0000</bug_when>
    <thetext>Info added -&gt; New state</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>75007</commentid>
    <comment_count>7</comment_count>
    <who name="Richard Purdie">richard.purdie</who>
    <bug_when>2017-07-13 15:29:31 +0000</bug_when>
    <thetext>There has been various discussions about this but no decision or consensus as yet.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>