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

@handle in lib/maintainers.nix must be a github username #18352

Closed
domenkozar opened this issue Sep 6, 2016 · 13 comments
Closed

@handle in lib/maintainers.nix must be a github username #18352

domenkozar opened this issue Sep 6, 2016 · 13 comments
Assignees
Milestone

Comments

@domenkozar
Copy link
Member

domenkozar commented Sep 6, 2016

For sake of communication, handle used in lib/maintainers.nix should be the handle of person behind his/hers contribution on github.com.

This is the first step of implementing #13602 and showed up as a problem in #18209 .

I'd like @NixOS/nixpkgs-committers to address this in master branch, I'll write a script that checks if this rule is respected.

@domenkozar domenkozar added this to the 17.03 milestone Sep 6, 2016
@shlevy
Copy link
Member

shlevy commented Sep 6, 2016

👎 from me. We have some in the community who don't like github's proprietary nature and submit patches via ML, and sometimes your nick of choice isn't available/appropriate on github (e.g. eelco vs edolstra). I'd much rather we annotate maintainers.nix with optional github username info, or at least have a way to say github-name = null or github-name = "something-else" and default github-name to the attribute in maintainers.nix.

@domenkozar
Copy link
Member Author

domenkozar commented Sep 6, 2016

We have some in the community who don't like github's proprietary nature and submit patches via ML

Sure, those who're not registered on github can have a nickname they'd use somewhere else.

sometimes your nick of choice isn't available/appropriate on github (e.g. eelco vs edolstra)

That's the unfortunate nature of primary keys, but you still a nickname on github. We could introduce an attribute set with github nicknames, but do we really want to maintain so much complexity and communication overhead? We'll end up with a hashmap of usernames for each contributor, that's plain insane.

Our platform for development NixOS is github. There's no way to deny that, we can just embrace it better.

@7c6f434c
Copy link
Member

7c6f434c commented Sep 6, 2016

We have some in the community who don't like github's proprietary nature and submit patches via ML

Sure, those who're not registered on github can have a nickname they'd use somewhere else.

sometimes your nick of choice isn't available/appropriate on github (e.g. eelco vs edolstra)

That's the unfortunate nature of primary keys, but you still a nickname on github. We could introduce an attribute set with github nicknames, but do we really want to maintain so much complexity and communication overhead? We'll end up with a hashmap of usernames for each contributor, that's plain insane.

Have you seen my vanity counter script? All possible combinations of
unfortunate events do happen, including change of GitHub usernames for
obviously the same person.

The true nature of primary keys is: you control them completely, or
there is no hope.

So yes, I think we want to keep the handles and add translations
as-needed, it is less insane.

@shlevy
Copy link
Member

shlevy commented Sep 6, 2016

Why a hashmap of usernames for each contributor? We have email, and my suggestion is that we add github which defaults to the maintainer attr but can be overridden if desired. If we ever come to rely on yet another service where we need to associate people with usernames, we will need to add another attribute in either case, except for those lucky enough to have the same github username as username on the new service.

@shlevy
Copy link
Member

shlevy commented Sep 6, 2016

So maintainers.nix can be either:

foo = "bar@example.com": github username foo, email bar@example.com
foo = { email = "bar@example.com"; github = "baz"; }: github username baz, email bar@example.com
foo = { email = "bar@example.com"; github = null; }: No github username, email bar@example.com

@shlevy
Copy link
Member

shlevy commented Sep 6, 2016

Our platform for development NixOS is github. There's no way to deny that, we can just embrace it better.

When we switched to git, a major concern was relying on github and it was decided at the time that people could develop via ML instead, and indeed some do. So yes, I think you can deny that github is our only platform for development, though of course it is the main one.

@domenkozar
Copy link
Member Author

OK, sure. You can't take something from a person that was already once given :)

@shlevy
Copy link
Member

shlevy commented Sep 6, 2016

(FWIW, I personally don't share the concerns people have about github, but I think we should respect them given that it's not a significant burden to do so)

@zimbatm
Copy link
Member

zimbatm commented Sep 6, 2016

Maybe we should define the responsibilities of a maintainer. If a maintainer should handle issues related to his package, and github is our issue tracker then it means having a github account is a requirement. And people who want to contribute patches on the mailing list can't become maintainers (but can still contribute patches and need to find another maintainer for new packages).

If that doesn't work then we have to either relax the responsibilities of the maintainer or change issue tracker.

@shlevy
Copy link
Member

shlevy commented Sep 6, 2016

Personally I don't see a problem with users emailing maintainers (cc'ing the ml) who aren't on github. But I can understand why some would see that as a burden.

@vcunat
Copy link
Member

vcunat commented Sep 7, 2016

I personally find it very comfortable to use @mention whenever I see maintainers.mention, without having to lookup anything. I know only about a single regular contributor who doesn't have a github account.

@benley
Copy link
Member

benley commented Sep 7, 2016

I also really appreciate it when handles match github usernames, but if we're not going to require that they match, something like shlevy's hashmap suggestion seems like a decent compromise. Perhaps in conjunction with a .mailmap file?

@domenkozar domenkozar self-assigned this Oct 19, 2016
@globin globin modified the milestones: 17.09, 17.03 Mar 20, 2017
FRidh added a commit to FRidh/nixpkgs that referenced this issue Feb 11, 2018
This commit allows values in lib.maintainers to be not only a string,
but also a set. This gives the possibility to obtain the GitHub handle
of maintainers by evaluation, and the possibility to add additional
means for contacting maintainers.

This is based on the suggestion made in
NixOS#18352 (comment).
@fpletz
Copy link
Member

fpletz commented Mar 4, 2018

Alternative solution merged in #36119.

@fpletz fpletz closed this as completed Mar 4, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

8 participants