git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Ariadne Conill <ariadne@dereferenced.org>
To: Taylor Blau <me@ttaylorr.com>
Cc: Junio C Hamano <gitster@pobox.com>,
	Git Mailing List <git@vger.kernel.org>,
	Phil Hord <phil.hord@gmail.com>
Subject: Re: What's cooking in git.git (Jul 2019, #06; Thu, 25)
Date: Thu, 8 Aug 2019 22:04:18 -0500	[thread overview]
Message-ID: <CAAOiGNyW9EpPgaMH1wEFG8gNNtypo2FaqOoOCe55i1TyT4L36A@mail.gmail.com> (raw)
In-Reply-To: <20190809020732.GA89008@syl.lan>

Hello,

On Thu, Aug 8, 2019 at 9:07 PM Taylor Blau <me@ttaylorr.com> wrote:
>
> Hi Ariadne,
>
> Thank you for replying. I'm replying myself to the quoted hunks below,
> and I very much appreciate your input. I would like to note that I
> myself did not come up with these concerns alone, they were merely
> suggested to me by a coworker, and I found them concerning.
>
> I am not myself transgender, instead I am simply raising an issue that I
> found myself concerning.

Sure, there are concerns with the use of .mailmap being the primary
source of truth for identities in a git repository.  However, this is
the present design.  I'm not against improving the design, but see no
reason to block changes that *improve quality of life* for people who
are both transgender (or simply have changed their name for whatever
reason) and those who collaborate with said people.  I also believe
that this is an *intended* use of the design, since mailmap allows
rewriting names.  If it is not intended, then why does mailmap support
rewriting names?

This isn't an either/or thing.  This is more along the lines of --
lets improve what we have now -- and deal with making a more robust
mailmap replacement down the line, because that is going to require
more careful consideration.

> On Thu, Aug 08, 2019 at 09:34:15PM -0400, Ariadne Conill wrote:
> > Hello,
> >
> > On August 8, 2019 8:13:15 PM EDT, Taylor Blau <me@ttaylorr.com> wrote:
> > >Hi Junio,
> > >
> > >On Thu, Jul 25, 2019 at 05:19:23PM -0700, Junio C Hamano wrote:
> > >> Here are the topics that have been cooking.  Commits prefixed with
> > >> '-' are only in 'pu' (proposed updates) while commits prefixed with
> > >> '+' are in 'next'.  The ones marked with '.' do not appear in any of
> > >> the integration branches, but I am still holding onto them.
> > >>
> > >> The seventh batch is in; I've merged fix-up topics that has been in
> > >> 'master' for some time (i.e. up to the third batch of this cycle)
> > >> down to 'maint'.
> > >>
> > >> You can find the changes described here in the integration branches
> > >> of the repositories listed at
> > >>
> > >>     http://git-blame.blogspot.com/p/git-public-repositories.html
> > >>
> > >> --------------------------------------------------
> > >> [Graduated to "master"]
> > >>
> > >> *snip*
> > >>
> > >> * ac/log-use-mailmap-by-default-transition (2019-07-15) 3 commits
> > >>   (merged to 'next' on 2019-07-19 at e5669de950)
> > >>  + tests: defang pager tests by explicitly disabling the log.mailmap
> > >warning
> > >>  + documentation: mention --no-use-mailmap and log.mailmap false
> > >setting
> > >>  + log: add warning for unspecified log.mailmap setting
> > >>
> > >>  The "git log" command learns to issue a warning when log.mailmap
> > >>  configuration is not set and --[no-]mailmap option is not used, to
> > >>  prepare users for future versions of Git that uses the mailmap by
> > >>  default.
> > >
> > >Sorry for jumping into this discussion quite late. I was discussing
> > >this
> > >change with a colleague of mine who pointed out an issue with the
> > >eventual new defaults. I'd like to re-raise the issues they shared with
> > >me on the list for discussion, and if agreement is reached, I will send
> > >a series that reverts these changes.
> > >
> > >If a transgender person uses '.mailmap' to rewrite their deadname to
> > >their legal name (as was the original motivation in [1]), there are two
> > >potential issues:
> >
> > What does myself being transgender have to do with anything?  Please
> > explain.
> >
> > My motivation was to allow anyone to document their name change.
> > People other than transgender individuals do change their names.
>
> I think that the '.mailmap' is a good solution for other identity
> changes, like when someone leaves a company, acquires an email address,
> and wishes to take their contributions with them.

Then maybe .mailmap should be scoped to rewriting e-mail addresses only.

> I don't think that being transgender changes one's usage of '.mailmap'.
> I do, however, share the concern with my coworker that these patches are
> being used to assist in deadname rewriting. It was my impression that
> these patches are a response to the thread [1] that I linked in my last
> email, and thus that eventually turning on '.mailmap'-rewriting by
> default was the solution given to Phil Hord.

Yes, they *are* being used to assist in deadname rewriting, because
that is the mechanism that already exists in the code to facilitate
it.

In what case would you *not* want to know the current name of the
person who authored a contribution?  There are legal situations
involving auditing the copyright status of contributions where
*current* identity information for the author is desirable over what
was there historically, because you need to contact the author and
find out his or her wishes involving the code.  Situations like
relicensing, for example.

> > Perhaps the fact that I am transgender means I am more attuned to the
> > risks involved in using .mailmap in this way.
>
> I'll certainly defer to your opinion on how this feature affects
> transgender users over mine, and very much appreciate your perspective
> and insight.
>
> > >  - The '.mailmap' provides a list of transgender individuals, along
> > >    with their deadname, which can be used to harass them.
> >
> > This is potentially a problem but it's not as bad as you depict.  A
> > mailmap rule can match against e-mail only, which is precisely what I
> > have done in my projects.
>
> Ah, I may be severely mistaken -- my memory was that '.mailmap'
> rewriting could be used to rewrite both name and email, not merely
> email. I thought that records could take:
>
>   A U Thor <author@xample.com> -> B C Xyzz <newname@example.com>
>
> instead of canonicalizing by email alone. If this is the case, then I
> completely agree and share the opinion that this is not as bad as I
> originally depicted.

Yes, you can write mailmap entries with just the email like I have
done in pkgconf for example[1].

> > And to be clear, anybody who is out there doxing transgender people
> > are going to be using sources that are more reliable than a mailmap
> > file.
>
> Indeed. I think the '.mailmap' file doesn't contain much information if
> it doesn't remap author names, and certainly individuals can choose not
> to use it.
>
> > >  - If they are not in control of the '.mailmap', and 'log.mailmap' is
> > >    not specifiable (and instead defaults to 'true'), then a malicious
> > >    maintainer or contributor can submit a change that rewrites their
> > >    real name to their deadname, and harasses them further.
> >
> > The log.mailmap setting remains specifiable in these changes.  Sure, a
> > maintainer can abuse mailmap, but they could already do so.  This
> > commit changes absolutely nothing in that regard.
>
> I think that I might be mistaken about the intentions of your patch
> series. Do you hope to eventually remove 'log.mailmap', instead having
> all clients automatically obey the '.mailmap'? If so, I think that this
> does change the behavior, at least down the road. If a maintainer wishes
> to abuse mailmap, today no one has to see it, because they have the
> option to turn off mailmap rewriting. If this setting doesn't exist, it
> gives more power to maintainers and contributors with write-level
> access to force mailmap rewriting to take place.

I have no interest in removing the log.mailmap setting, but I would
like to see the setting behave consistently across all applets.  In
other words, "git shortlog", "git log" and "git blame" should have the
same behaviour given log.mailmap being set a certain way.  They
presently don't have consistent behaviour (shortlog and blame always
use mailmap), and I found that surprising.  This allows people to look
at the raw data if they have explicit interest in it, by setting
log.mailmap to false, and ensuring that people get reasonable
behaviour by default (log.mailmap is default to true).

I also want to explicitly state that I believe wholeheartedly that
people will fork projects with a hostile maintainer who renames people
in the mailmap file to derogatory names, so I think that is a
non-issue.  Somebody who is trolling by using mailmap files to rewrite
contributor names is indicative that a project shouldn't be taken
seriously.

> > The commit does make `git shortlog` and `git log` consistent which is what most people expect.
> >
> > >This issue was not raised in the original discussion, but it's clear
> > >that this has the potential be used for bad, not good.
> >
> > Every tool has the potential to be abused.  I would not have submitted
> > this merge request if I thought that the benefits outweighed the
> > trolling possibilities.
>
> Yes, I agree that tools can be abused, and I do not question your
> judgement in submitting this patch whatsoever. Again, I was merely
> pointing out that there does seem to be a greater potential for this
> tool to be misused, but only if I am understanding it correctly.

Based on your misunderstanding of the mailmap feature, I believe
you're not understanding the patches correctly.

> > >Given that the release is so close, I propose we revert this change
> > >before v2.23.0 is tagged. After that, we ought to discuss ways for
> > >folks
> > >to change how their name is displayed in porcelain commands, and
> > >thoroughly consider whether or not a new plan is exploitable.
> > >
> > >If you think this is a good course of action, I will send a series to
> > >revert the changes that were queued here.
> >
> > I do not think this is a good course of action and I think your
> > justification is extremely flimsy.
> >
> > While I would like to see the ability to commit a special commit that
> > documents a name change, this does not change the fact that such
> > commits will be mined in the same way.
> >
> > While I am glad that you are concerned about this from a trolling and
> > harassment issue, I propose that you should allow individuals to make
> > their own assessments on what they should do regarding documenting
> > their changes using the mailmap file.
>
> I'm happy to defer to the judgement of others, here; again I merely
> wanted to raise a concern and share a proposed course of action in
> response to it. If others do not buy into the justification, or if I
> have misunderstood the feature, then we ought to let the release proceed
> as normal.

As previously stated, I think that your justification is flimsy, but I
think that's simply due to a misunderstanding of how mailmap works,
and to what level of consistency mailmap is respected.  Hopefully this
explanation is useful.

[1]: https://git.sr.ht/~kaniini/pkgconf/tree/master/.mailmap

Ariadne

  reply	other threads:[~2019-08-09  3:04 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-07-26  0:19 What's cooking in git.git (Jul 2019, #06; Thu, 25) Junio C Hamano
2019-07-26 14:33 ` Johannes Schindelin
2019-07-26 20:23   ` Junio C Hamano
2019-07-27 19:38 ` Rohit Ashiwal
2019-07-27 20:40   ` Elijah Newren
2019-07-27 20:57     ` Rohit Ashiwal
2019-07-27 21:42       ` Elijah Newren
2019-07-28 20:34 ` Carlo Arenas
2019-08-09  0:13 ` Taylor Blau
2019-08-09  1:34   ` Ariadne Conill
2019-08-09  2:07     ` Taylor Blau
2019-08-09  3:04       ` Ariadne Conill [this message]
2019-08-09  3:07       ` Phil Hord
2019-08-09  3:21         ` Ariadne Conill
2019-08-09 11:21           ` Taylor Blau
2019-08-09 11:41         ` Jeff King
2019-08-09 17:39           ` Phil Hord
2019-08-09 14:06     ` Randall S. Becker
2019-08-09 16:29       ` Jeff King
2019-08-09 16:32         ` Randall S. Becker
2019-08-09 17:45         ` Junio C Hamano
2019-08-09 18:05           ` Phil Hord
2019-08-10  6:10             ` Jeff King
2019-08-12  0:39               ` Junio C Hamano
2019-08-12 13:39                 ` Randall S. Becker
2019-08-09 17:44       ` Junio C Hamano
2019-08-09 19:06         ` Randall S. Becker

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: http://vger.kernel.org/majordomo-info.html

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAAOiGNyW9EpPgaMH1wEFG8gNNtypo2FaqOoOCe55i1TyT4L36A@mail.gmail.com \
    --to=ariadne@dereferenced.org \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=me@ttaylorr.com \
    --cc=phil.hord@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).