public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [PATCH 0/3] add GetMaintainer.py helper script
@ 2019-07-12 17:01 Leif Lindholm
  2019-07-12 17:01 ` [PATCH 1/3] Maintainers.txt: update for filesystem area descriptions Leif Lindholm
                   ` (4 more replies)
  0 siblings, 5 replies; 20+ messages in thread
From: Leif Lindholm @ 2019-07-12 17:01 UTC (permalink / raw)
  To: devel
  Cc: Andrew Fish, Laszlo Ersek, Michael D Kinney,
	Philippe Mathieu-Daude, Bob Feng, Liming Gao, Wu, Hao A

Changes are available directly from:
https://git.linaro.org/people/leif.lindholm/edk2.git/log/?h=upstreaming/git-maintainer-v1

This series adds new tags to the Maintainers.txt format, making it possible
to describe which filesystem paths are looked after by which people, and
hence automating the extraction of a list over who should be cc:d on a patch
submission.

Remaining shorcomings in v1:
- Will still be misparsing OvmfPkg and MdeModulePkg due to non-tag lines
  interspersed with the tag lines. These lines will be removed as areas of
  responsibility is formally rewritten as tags.
- * Wildcard support is not fully filesystem compliant except in first or
  last position in the file pattern (it translates as regex .* elsewhere).
  However, actual cases of mismatch are expected to be unlikely, and they
  will be false positives rather than false negatives - so I think this is
  good enough at least for a start.
- Provides no information of why certain people or meiling lists were
  picked - it just bundles all recipients up, deduplicates them, and
  prints them out.

Using the script requires the gitpython module to be installed.

Worthwhile mentioning outside the ChangeLog is the added -l flag, which
lets you look up what a given path would return in the way of matches.
E.g. "python BaseTools/Scripts/GetMaintainer.py -l Non/Existing/Path"
would return:
---
Non/Existing/Path
"Non/Existing/Path": no maintainers found, looking for default
  Andrew Fish <afish@apple.com>
  Laszlo Ersek <lersek@redhat.com>
  Leif Lindholm <leif.lindholm@linaro.org>
  Michael D Kinney <michael.d.kinney@intel.com>
  devel@edk2.groups.io
---

This series would still result in GetMaintainers.py missing some
maintainers/reviewers due to descriptions in prose rather than filename
patterns. My preferred way of handling this would be to merge 1-2/3 as
soon as found acceptable, following up and merging patches to update
ArmVirtPkg, MdeModulePkg, and OvmfPkg, and finally once the file is
consistent, proceed to merge 3/3.

Changelog:
v1:
- Rebase to current Maintainers.txt.
- Fix typos and missed bits in Maintainers.txt.
- Get rid of the magic '<default>' filename, let the single-char '*'
  wildcard resolve this (_using_ the magic '<default>' filename in the
  script, but treating it as if it was a file in the top-level directory).
- Add -l flag to script to look up which maintainers would be returned for
  a given path (which need not exist).
rfc:
- Split patches up
  - one for new Maintainers.txt format (documentation and F: tags).
  - one for adding a new wilcards responsibility area for */Arm, */AArch64
  - one for the GetMaintainer.py script
- Reworked wildcard handling based on Laszlo's explanation
  - Trailing / covers everything under that directory
  - Trailing * does not cover subdirectories
- Added support for X: tag
- Added support for magic '<default>' pathname
- Also prints mailing list addresses for matching L: tags

Cc: Andrew Fish <afish@apple.com>
Cc: Laszlo Ersek <lersek@redhat.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Bob Feng <bob.c.feng@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
Cc: Philippe Mathieu-Daude <philmd@redhat.com>
Cc: "Wu, Hao A" <hao.a.wu@intel.com>

Leif Lindholm (3):
  Maintainers.txt: update for filesystem area descriptions
  Maintainers.txt: add wildcard path association for Arm/AArch64
  BaseTools: add GetMaintainer.py script

 BaseTools/Scripts/GetMaintainer.py | 190 +++++++++++++++++++++++++++++
 Maintainers.txt                    |  54 ++++++++
 2 files changed, 244 insertions(+)
 create mode 100644 BaseTools/Scripts/GetMaintainer.py

-- 
2.20.1


^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2019-07-24 16:49 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-07-12 17:01 [PATCH 0/3] add GetMaintainer.py helper script Leif Lindholm
2019-07-12 17:01 ` [PATCH 1/3] Maintainers.txt: update for filesystem area descriptions Leif Lindholm
2019-07-12 22:54   ` Laszlo Ersek
2019-07-12 17:01 ` [PATCH 2/3] Maintainers.txt: add wildcard path association for Arm/AArch64 Leif Lindholm
2019-07-12 22:54   ` Laszlo Ersek
2019-07-12 17:01 ` [PATCH 3/3] BaseTools: add GetMaintainer.py script Leif Lindholm
2019-07-12 22:58   ` Laszlo Ersek
2019-07-13 10:41     ` Leif Lindholm
2019-07-15 17:08       ` [edk2-devel] " Laszlo Ersek
2019-07-12 22:54 ` [PATCH 0/3] add GetMaintainer.py helper script Laszlo Ersek
2019-07-18 16:27 ` Leif Lindholm
2019-07-18 17:01   ` Philippe Mathieu-Daudé
2019-07-18 17:40     ` Leif Lindholm
2019-07-18 17:50       ` Philippe Mathieu-Daudé
2019-07-18 21:17   ` Laszlo Ersek
2019-07-18 21:56     ` Leif Lindholm
2019-07-24  1:39       ` Liming Gao
2019-07-19  9:00     ` [PATCH 0/3] add GetMaintainer.py helper script (and Maintainers.txt format change) Leif Lindholm
2019-07-24  2:03       ` [edk2-devel] " Bob Feng
2019-07-24 16:49         ` Leif Lindholm

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox