-
-
Notifications
You must be signed in to change notification settings - Fork 14.5k
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
Convert maintainer file entries to attributes, add github handles #36119
Conversation
Thanks for the effort. Note the merge conflict though. |
lib/maintainers.nix
Outdated
}; | ||
dizfer = { | ||
email = "[email protected]"; | ||
githu |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
My github id is cillianderoiste, thanks!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks, fixed.
03c6ac3
to
cb09e44
Compare
Yeah, I expect this to take a while to merge, so there might be multiple changes to maintainers nix by then. |
Right. That's why I suggested merging #34842 first, then fixing Hydra, and when that is done convert to what you have here. |
lib/maintainers.nix
Outdated
}; | ||
dizfer = { | ||
email = "[email protected]"; | ||
githu |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should be @gavinrogers, see #35714
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Something is broken with these markers, every one points to dizfer
somehow?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
gavin
→ gavinrogers
lib/maintainers.nix
Outdated
}; | ||
dizfer = { | ||
email = "[email protected]"; | ||
githu |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
genesis
→ bignaux
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ok
lib/maintainers.nix
Outdated
}; | ||
dizfer = { | ||
email = "[email protected]"; | ||
githu |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
eelco
→ edolstra
It looks like cross-checking entries <5 chars is not enough, normal dictionary words will most likely also overlap. |
The problem with that commit is that lots of github handles are simply wrong, because the maintainer names don’t translate. So we are going to mention lots of non-nixos people. |
How hard would it be to check if given handle contributed to the nixpkgs repo and (manually) fix those that did not? Edit: There is https://github.com/NixOS/nixpkgs/commits?author=ttuegel |
Well, may vanity counter does build a correspondence of names, emails and github names |
lib/maintainers.nix
Outdated
}; | ||
dizfer = { | ||
email = "[email protected]"; | ||
githu |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's actually me, 7c6f434c
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
raskin
→ 7c6f434c
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
GitHub is really weird today.
Probably not very, might be sensible to use the Github API for that and rewrite the script (in the commit) a bit. |
|
Checking for commits right now, this finds quite a few accounts that are not commiters. |
Okay, here we go. Now every handle that had no nixpkgs commits is corrected! |
cbfe828
to
53df522
Compare
08f2720
to
53df522
Compare
Yay, nice!
Can we also rename this file to `maintainers/maintainers-list.nix` while we at this? Motivation: much saner `git log ./lib`. I wanted to do it for a while now, but was too lazy to make a separate PR for that.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe also run curl "https://github.com/NixOS/nixpkgs/pulls?utf8=%E2%9C%93&q=author%3A${user}" | grep 'No results matched your search'
for users that commit without matching e-mail address.
lib/maintainers.nix
Outdated
@@ -1319,7 +1313,6 @@ | |||
}; | |||
fuzzy-id = { | |||
email = "[email protected]"; | |||
github = "fuzzy-id"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lib/maintainers.nix
Outdated
@@ -1150,7 +1145,6 @@ | |||
}; | |||
epitrochoid = { | |||
email = "[email protected]"; | |||
github = "epitrochoid"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lib/maintainers.nix
Outdated
@@ -1020,7 +1017,6 @@ | |||
}; | |||
drewkett = { | |||
email = "[email protected]"; | |||
github = "drewkett"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Based on NixOS#34842, the nix-instantiate output was pretty-printed and the validity of the github handles manually verified, by automatically checking whether the user handles exist on github (https://github.com/userhandle, status 200 or 404). Each handle under 5 characters was manually checked (because the collision probability with non-maintainer accounts is high), each missing entry was manually researched. The script used is kept in `maintainers/scripts` as an example of how to work with the mainainers list through nix’ JSON interface.
Now also finds name-clashes for github handles who never contributed to nixpkgs before. Also deals with too many request errors.
Corrected every handle that had no commits to nixpkgs, manually researched the correct handles by looking at maintained packages & blames/history on Github.
Add new maintainers that were added before merging the new `maintainers.nix` file format.
53df522
to
050abd0
Compare
@jtojnar I don’t understand, why is this a problem? |
See #36275. |
@GrahamcOfBorg eval |
@Profpatsch the problem is, you are removing GitHub handles that have commits in nixpkgs (but GitHub cannot pair them). |
I removed every handle where Github couldn’t resolve to a user page, yes, since those are either commits from non-Github users (via normal git commits) or Github accounts that don’t exist anymore. |
At least the three I mentioned do resolve to a user page, are commits by GitHub users, and the accounts do still exist, only GitHub cannot pair them correctly (due to e-mail address mismatch). Checking the pull requests should fix these unpaired accounts. Then only renamed accounts will remain. They need to be checked manually by checking the git log for expressions by the maintainer. |
Ah, I see. Can you open a new issue (or maybe even pull request) for those cases? Thanks for the scrutiny! |
Many commits unrelated to `lib` touch that file, this will make `git log ./lib` much saner. This is what I meant in NixOS#36119 (comment).
Was inconveniently sorted since NixOS#36119
Was inconveniently sorted since NixOS#36119
Based on #34842, the
nix-instantiate output was pretty-printed and the validity of the github handles
manually verified, by automatically checking whether the user handles exist on
github (https://github.com/userhandle, status 200 or 404).
Each handle under 5 characters was manually checked (because the collision
probability with non-maintainer accounts is high), each missing entry was
manually researched.
The script used is kept in
maintainers/scripts
as an example of how to workwith the mainainers list through nix’ JSON interface.
Hydra might need to be patched.
cc @FRidh @vcunat