RFC: safe pattern matching for problematic encoding

Martin Geisler martin at geisler.net
Thu Jun 7 20:47:54 UTC 2012


Matt Mackall <mpm at selenic.com> writes:

> On Thu, 2012-06-07 at 17:31 +0200, Martin Geisler wrote:
>> I've been really disappointed by the silence here since I expected
>> people to point out that the angry tone is unacceptable.
>
> I certainly didn't like writing it. On the other hand, it was sincere.
> I am sincerely angry with you. I sincerely no long want to work with
> you because of how you regularly troll me. When you stop trolling me,
> I will stop being angry, no sooner.

I had to look it up, and it seems that trolling means to send messages
with the aim of provoking emotional responses and disrupting the normal
discussion. I'm not doing that and I think "insistent" would be a better
way to describe me.

> Tell me, Martin, which of these do you honestly expect is the most
> likely end result of continuing to bring up the same old Unicode
> debate?
>
> a) I finally agree with you
> b) I finally stop caring about doing it right and let you win

The pro-Unicode side has already "won" (if you insist on calling it
that) in the sense that we've agreed that we need to use the Unicode API
on Windows. I like the UTF-8 plan on the wiki and it's great to see
FUJIWARA Katsunori digging into this. I just hope he has the stamina to
pull it through.

What made me write

  http://markmail.org/message/xzbmdbfodpcdymkc

was your continued claims that everything works "JUST FINE" (your
emphasis) with the current behavior and that it solves the "makefile
problem". I did an experiment and couldn't verify your claims, so I
called you out on it. That was really all.

To me, it seem that you expect people to just accept what you say at
face value. It works, people don't question the makefile problem at all
and I got an off-list message saying something like:

  ...but Martin, why do you insist on making life hard for all the users
  that rely on the current system...

I asked in return "which users would that be?". The basic premise of the
makefile problem is that users will put up with garbled filenames and
actually build important tool chains on top of such files.

Maybe you assume that this is how we like it in a non-ASCII world, but
that doesn't match with my personal experience. I gave a concrete
example where I saw a new user's reaction to a garbled filename: she
renamed the spreadsheet immediately.

> c) I finally lose the very last scintilla of patience I have for you
> d) I finally make you the inaugural member of my kill-file
> e) I finally give up and find a less stressful project to work on

No, that's also not it -- I just want people to pause and pay attention
to the underlying premise of your makefile problem. It's supposed to be
a technical discussion: you highlight the problem as a key problem and I
don't believe it really exist as much as you claim.

> Anyone who's been paying any attention knows it won't be (a) or (b).
> So which of the remaining outcomes are you shooting for? I'm guessing
> you're aiming for (d), just for the bragging rights.

There should really be a smiley there -- otherwise it's hard to see when
you're being ironic and when you're being sincere. I don't want to be in
any kill-file and it's sad if you suggest that sincerely.

> Note that I don't consider the following an option:
>
> f) I finally agree to disagree
>
> ..because as a core contributor, every time you say "hey, we should do
> it this way", I feel obligated as project leader to follow up and say
> "hey, no, sorry, we never ever will" so that users who don't know the
> history here don't start asking when we're switching to Unicode. It's
> like you're repeatedly lighting a little fire I need to come stamp
> out.

You don't need to control everything like that -- if you don't promise
something, then nobody can fault you for not delivering this or that
feature. They can come back and be angry with me if I've somehow implied
that it would be ready Really Soon Now(tm).

We should trust users to be able to differentiate between me talking
about a hypothetical feature and the feature actually being implemented.

> Here's the thing that perhaps you don't understand: being the project
> leader puts you in a role of being the defacto bad guy.

Sorry, but I don't agree with this idea. I've started a couple of open
source projects and while they were not as successful as Mercurial, I
did not feel the need for this "I must be the bad guy" attitude at all.

> Someone has to make decisions and some of those decisions are going to
> be "no". And many of those "no" decisions are ones that each wave of
> newcomers will question. So I spend lots of my time saying "no,
> compatiblity", "no, known bad idea", "no, design choice", "no,
> performance" at newcomers, and I _really don't enjoy it_. And because
> no one else enjoys it either, I end up doing the bulk of it.
> Burnout++, every day.

Maybe you could distribute this a bit? Instead of insisting that
everything goes through you, then it could be good if a core group could
take these decisions. We have different areas of interest and expertise
so it would make sense if we were responsible for different areas.

It's great to have a direction, but frankly, because you insist on
deciding everything yourself, I sometimes think "oh well, Matt can deal
with this patch or this bug, it's his project after all" or "Matt will
insist on doing it his way anyway, so why bother?". That's a really
negative way of thinking and I'm not happy about it.

> Which means when someone like you who is not a newcomer and already
> knows the answers but still wants to keep an argument going even
> though it's already gone on for 7 YEARS and everything that can
> possibly be said about it has already been said, and makes me play the
> bad guy even more than I already need to, when you know full well it's
> going to make me angry... it makes me angry. Burnout += 50.

Have you considered that you make me a little bit angry every time you
mention your "Unicode hate" and make it sound like non-ASCII characters
are some kind of unnecessary luxury?

Angry is too strong a word, I'm more puzzled and I wonder how I can help
to explain the problems that users face with these filenames.

In any case, it's okay that you puzzle me -- I wont blame you for that
and I don't think you can blame me for how you react to my mails. I'm
not talking bad about your mom or anything silly like that :-)

> Option (f) is available to YOU at any time, however. And you also have
> the option of starting your own Mercurial fork, which I'd frankly
> prefer to wasting another hour on this topic.

No, that would be a shame and I don't have the time this summer.

-- 
Martin Geisler

aragost Trifork
Commercial Mercurial support
http://aragost.com/mercurial/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 835 bytes
Desc: not available
URL: <http://lists.mercurial-scm.org/pipermail/mercurial-devel/attachments/20120607/80c762a8/attachment.asc>


More information about the Mercurial-devel mailing list