Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Parse authors from git log #2423

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

janhoy
Copy link
Contributor

@janhoy janhoy commented Apr 26, 2024

Script that parses authors and co-authors from git log since last release. Intended for use by Release Manager to obtain a list of developers to credit for a release.

usage: parseAuthorsFromGitLog.py [-h] --version VERSION

Parse authors and co-authors from git log output.

options:
  -h, --help         show this help message and exit
  --version VERSION  Solr version to select commits for

When on the HEAD of branch_9_6 this outputs:

> dev-tools/scripts/parseAuthorsFromGitLog.py --version 9.6.0
Selecting git log since releases/solr/9.5.0
Eric Pugh (24)
Jason Gerlowski (22)
Solr Bot (18)
Jan Høydahl (15)
Christine Poerschke (13)
Andrey Bozhko (11)
David Smiley (10)
Chris Hostetter (9)
Michael Gibney (5)
pjmcarthur (5)
Paul McArthur (5)
Mikhail Khludnev (5)
Pierre Salagnac (5)
Houston Putman (5)
Gus Heck (4)
jdyer1 (4)
James Dyer (4)
Vincent Primault (4)
Drini Cami (3)
Andrzej Białecki (3)
Bruno Roustant (2)
Vincenzo D'Amore (2)
Radu Gheorghe (2)
aparnasuresh85 (2)
Przemyslaw Ciezkowski (2)
Rahul Goswami (2)
Justin Sweeney (2)
Jeb Nix (2)
Sanjay Dutt (2)
iamsanjay (2)
Nazerke Seidan (2)
Alessandro Benedetti (1)
Peter Molnar (1)
Torsten Bøgh Köster (1)
ejn (1)
mariemat (1)
Mathieu Marie (1)
Kevin Risden (1)
Vickie Karasic (1)
Antoine Bursaux (1)
weiwang19 (1)
wwang30 (1)
Clay Johnson (1)
Ere Maijala (1)
Dan Niles (1)
Arnout Engelen (1)
Matteias Collet (1)
Julien Pilourdault (1)
Calvin Smith (1)
Yohann Callea (1)

The list is sorted by number of contributions. The number is sum of Author: and Co-authored-by: for a user with that unique NAME. Email addresses may vary for the same person, so they are disregarded.

Ideas:

  • The list could of course be sorted alphabetically instead of by number of contributions
  • Filter out committers to focus on external contributors? Would be easy if everyone used their apache email, but sadly not
  • Integrate directly as a function in releaseWizard so it could be added to release email template

For this to be as good quality as CHANGES.txt names we'd need to step up the game on adding Co-Authored-By tags in final commit message whenever we squash-merge a PR, and also add such tags manually when committing a patch from JIRA or when we feel that a person has contributed a lot in e.g. review process without having done commits.

@janhoy janhoy marked this pull request as draft April 26, 2024 20:25
@janhoy
Copy link
Contributor Author

janhoy commented Apr 26, 2024

I did a diff between contributors found by this script and those found by David's CHANGES.txt parser

  • Most names were the same
  • Some diffs due to using different name variant in commit and in changes
  • Some more names found in git log than changes. For 9.6 there were a handful of drive-by contributions to ref-guide, build and other minor fixes that did not have a JIRA nor a CHANGES line
  • Some names found by this script were false positives, from commits to branch_9x after tagging of releases/solr/9.5.0, that were then back-ported to branch_9_5.

It'd be nice to be able to mention all contributors, also the minor contributions. But it's be hard to automate a unification I guess.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
1 participant