Leverage gitmailmap for fixing authors' names#40396
Leverage gitmailmap for fixing authors' names#40396peterfpeterson wants to merge 2 commits intomantidproject:mainfrom
Conversation
This PR gets rid of the custom work for fixing committer/author information to use functionality git already has. [gitmailmap](https://git-scm.com/docs/gitmailmap) is a built in git functionality for converting the random names/emails that people supply into something more meaningful. This includes correcting the names and email addresses.
thomashampson
left a comment
There was a problem hiding this comment.
I like that you can now run the authors.py script directly to print a list of authors for a given version. However, I think these points need to be addressed:
- It does not return the names in "last_name, first_name(s)" format, as per the DOI schema.
- It relies on a .mailmap file existing to map multiple aliases to each author. This would need to be hosted somewhere and updated by the technical release manager each release.
- Some people may want there DOI author name to differ from their github name (e.g.
Robmight want his formal nameRobertto be his author name). This information is already captured in the existing translations list, and would need to be replicated in the mailmap.
|
All your points are quite valid. This moves the responsibility of correctly referring to committers to the mailmap file, which is maintained separately. Changes to the mailmap are as frequent as editing the existing script currently is. We could address the issues of the naming conventions in the mailmap file, but that assumes we stick with this approach. The bad part of using the mailmap is that we have to share/sync it separately. A totally separate question I have is how we could use this to update the |
|
This is replaced by #40633 |
To make debugging the author mapping easier, add a main entrypoint to the authors tool. It also adds some flags to the `git log` call to make it more stable and skip merge commits. There is no associated issue. This is a trimmed down version of #40396 because we decided that having a mailmap file required finding a place to store/share it. ### To test: This added the ability to get the authors directly from tools/DOI/authors.py and can be run without accidentally creating a DOI. Use tools/DOI/authors.py --help to find out how to use it and try the two modes. *This does not require release notes* because it modifies how authors are generated for the DOI tool.
To make debugging the author mapping easier, add a main entrypoint to the authors tool. It also adds some flags to the `git log` call to make it more stable and skip merge commits. There is no associated issue. This is a trimmed down version of mantidproject#40396 because we decided that having a mailmap file required finding a place to store/share it. ### To test: This added the ability to get the authors directly from tools/DOI/authors.py and can be run without accidentally creating a DOI. Use tools/DOI/authors.py --help to find out how to use it and try the two modes. *This does not require release notes* because it modifies how authors are generated for the DOI tool.
This PR gets rid of the custom work for fixing committer/author information to use functionality git already has.
gitmailmap is a built in git functionality for converting the random names/emails that people supply into something more meaningful. This includes correcting the names and email addresses.
There is no associated issue.
To test:
This added the ability to get the authors directly from
tools/DOI/authors.pyand can be run without accidentally creating a DOI. Usetools/DOI/authors.py --helpto find out how to use it and try the two modes. As it says, you need to contact a TWG member (i.e. me) to get the.gitmailmapfile.This does not require release notes* because it modifies how authors are generated for the DOI tool.
Reviewer
Your comments will be used as part of the gatekeeper process. Comment clearly on what you have checked and tested during your review. Provide an audit trail for any changes requested.
As per the review guidelines:
mantid-developersormantid-contributorsteams, add a review commentrerun cito authorize/rerun the CIGatekeeper
As per the gatekeeping guidelines: