1 |
On Mon, 09 Jul 2018 10:40:22 +0200 |
2 |
Michał Górny <mgorny@g.o> wrote: |
3 |
|
4 |
> Hi, |
5 |
> |
6 |
> We currently don't enforce any particular standard for e-mail addresses |
7 |
> for developers committing to gentoo.git. FWICS, the majority of |
8 |
> developers is using their @gentoo.org e-mail addresses. However, a few |
9 |
> developers are using some other addresses. |
10 |
> |
11 |
> Using non-@g.o e-mail addresses generally causes problems |
12 |
> in accounting for commits. For example, our retirement scripts can't |
13 |
> detect commits made using non-Gentoo e-mail address. My dev-timeline |
14 |
> scripts [1] account for all emails in LDAP (which doesn't cover all |
15 |
> addresses developers use). FWIK gkeys accounts for all addresses |
16 |
> in the OpenPGP key UIDs. In my opinion, that's a lot of hoops to jump |
17 |
> through to workaround bad practice. |
18 |
> |
19 |
> Therefore, I'd like to start enforcing (at the level of the hook |
20 |
> verifying signatures) that all commits made to gentoo.git (and other |
21 |
> repositories requiring dev signatures) are made using @gentoo.org e-mail |
22 |
> address (for committer field). |
23 |
> |
24 |
> Is anyone opposed to that? Does anyone know of a valid reason to use |
25 |
> non-@g.o address when committing? |
26 |
> |
27 |
> [1]:https://dev.gentoo.org/~mgorny/dev-timeline.html |
28 |
> |
29 |
|
30 |
There's one fun problem here technologically for proxy-maint, but |
31 |
getting the conditions right for it to occur happen very rarely. |
32 |
|
33 |
1. Assume the proxied maintainer has a git repo, where they commit |
34 |
themselves. |
35 |
|
36 |
2. Assume their proxy has said git repo as an alternative remote, for |
37 |
which they relay work. ( That is, they work closely together directly |
38 |
instead of via github pull requests and textual patches ) |
39 |
|
40 |
3. ::gentoo is quiet, and the proxied maintainer has rebased their own |
41 |
work on top of ::gentoo, setting Committer: metadata and signing |
42 |
commits. |
43 |
|
44 |
Then, in that situation, it is trivial for the proxy to relay those |
45 |
commits verbatim to ::gentoo, without changing either Committer: or |
46 |
signature data. |
47 |
|
48 |
Standard git tools will not attempt to even *change* these commits even |
49 |
with an explicit rebase, because Git will detect that nothing needs to |
50 |
change, and will no-op the rebase, leaving Committer and Signatures |
51 |
intact, degrading to a fast-forward merge. |
52 |
|
53 |
It seems like it would happen not-very-often, but ... |
54 |
|
55 |
git log --show-signature --format=fuller --committer=".*@\([^g]\|g[^e]\)" |
56 |
|
57 |
Well, the last example happened in 2017, so maybe something happened |
58 |
*since* then that prevented this situation occurring via other means? |
59 |
*shrug* |
60 |
|
61 |
|
62 |
commit 76eb43412b532a045d92d524dfa5ed1b1bcca671 |
63 |
Author: Michael Mair-Keimberger <m.mairkeimberger@×××××.com> |
64 |
AuthorDate: 2017-10-02 02:47:28 +1300 |
65 |
Commit: Michael Mair-Keimberger <m.mairkeimberger@×××××.com> |
66 |
CommitDate: 2017-10-10 07:45:09 +1300 |
67 |
|
68 |
To the best of my knowledge, Michael isn't a Gentoo Dev. |