[Openembedded-architecture] [openembedded-architecture] Recipe maintainers
Khem Raj
raj.khem at gmail.com
Mon Mar 19 05:19:03 UTC 2018
On 3/18/18 7:12 PM, Joshua Watt wrote:
> All,
>
> I think this topic is somewhat tied into the OE layer quality
> discussion, but different enough that I though it warranted its own
> thread. I wasn't sure if I should post here or openembedded-devel.
> Someone can loop that list in if they think it is necessary.
>
> I would like to open up the discussion about the possibility of
> reworking the way recipe maintainers are currently tracked. I discussed
> this briefly at the ELC with a few, and it was already discussed
> previously in [1] but I think that thread was originally focused on a
> different topic.
>
> I'll start off with a few places where I think the current OE-core
> maintainers.inc behaviour could be improved, or is lacking. These are in
> no particular order, and I'm not necessarily proposing we have to
> address all of them:
>
> 1) My understanding is that it is difficult to assign maintainers in
> layers outside of OE-core in a manner that is consistent with OE-core
> (they can of course do their own thing if they want, but that doesn't
> really relate to this discussion).
>
> 2) Current maintainership outside of OE-core seems to be pretty much
> per-layer. IMHO, this might not be fine grained enough and stressful on
> the maintainers? For example, as a new person looking to help out, I
> might not want to sign up to maintain a whole *layer* per-se, but would
> probably feel comfortable tackling a few recipes.
>
> 3) There is currently no mechanism for having a maintainer for things
> other than recipes (e.g. bbclass files, python libraries, scripts, etc).
> For example, I personally would volunteer to take over ownership of
> waf.bbclass and icecc.bbclass if such a thing were possible.
>
>
> A few possible paths forward are listed below, along with some pros and
> cons. I'm not necessarily advocating one over the other, but just
> listing options, please chime in with more options, or other pros/cons.
>
> 1) Do nothing.
> Perhaps the above concerns aren't sufficiently important to warrant any
> changes.
>
> 2) Move the MAINTAINER variable out of maintainers.inc into each recipe.
> This would potentially solve the problem of assigning maintainers
> outside of OE-core. It might require some changes to RSS [2] as
> discussed previously in [1]. There was some agreement for this in said
> discussion. This wouldn't allow for listing the maintainers of other
> (non-recipe) files. I've heard arguments that having the maintainers
> distributed across recipes makes them harder to maintain (e.g. they get
> out of date), but I've also heard the argument that having them
> centralized is harder to maintain.
>
> 3) Switch to a Linux Kernel style MAINTAINERS file
> I've seen this one proposed in a previous discussion (can't find the
> link right now). This file format already has some tooling around it,
> making it easy to integrate with git send-email and such, and can track
> some other useful attributes about the file (e.g. what the level of
> maintainership is). However, it would certainly require changes to RSS,
> and some work if it is determined we also need that information to be
> extracted to per-recipe bitbake variables since the current tooling is
> in perl. This would allow maintainers to be listed for things other than
> recipes.
>
> 4) Add the ability for other layers to specify their own maintainer.inc
> files... something like a BBLAYER_MAINTAINERS variable?
>
This is a fine idea. Instead of creating separate file, it would be best
to maintain this information in recipe header itself, because when
someone is working on a recipe then he/she can get all needed
information in one place. Alpine project does it this way and Arch
project does it too e.g. see
https://git.archlinux.org/svntogit/packages.git/tree/trunk/PKGBUILD?h=packages/gcc
https://git.alpinelinux.org/cgit/aports/tree/main/musl/APKBUILD
see the following portion in particular.
# Maintainer: name <email>
# Contributor: name <email>
We might make Contributor field optional or may be ignore it completely
but we can adopt Maintainer field.
Maintaining a maintainer file is also a hassle in itself, we quite often
patch it in OE-core too. But moving this information into recipe itself
in a consistent way would be a good approach IMO, consist format would
mean we can run tools over it to grok this info and also add sanity
tests of information is missing e.g.
>
> And now, for my personal opinion:
>
> I think that option #2 or #3 would be the best, as I really do think it
> might be a big help to the current layer maintainers to be able to part
> out maintainership in a more fine grained manner (would any of the
> actual layer maintainers be able to comment?). #2 is probably the
> easiest, but #3 is by far the most expressive and possibly the most
> helpful for the actual maintainers? In any event, I'm willing to devote
> some time to working on this. In the event #3 is chosen, I would even be
> willing to write a python parser for the Kernel MAINTAINERS file format
> so that bitbake can pick internally pick up the maintainer state. It
> sounds like a fun challenge....
>
> Thanks,
> Joshua Watt
>
> [1]
> http://lists.openembedded.org/pipermail/openembedded-architecture/2018-February/000700.html
> <http://lists.openembedded.org/pipermail/openembedded-architecture/2018-February/000700.html>
> [2] http://recipes.yoctoproject.org <http://recipes.yoctoproject.org>
>
> _______________________________________________
> Openembedded-architecture mailing list
> Openembedded-architecture at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-architecture
>
More information about the Openembedded-architecture
mailing list