git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Johannes Schindelin <Johannes.Schindelin@gmx.de>
To: Stefan Beller <sbeller@google.com>
Cc: "Brandon Williams" <bmwill@google.com>,
	"Ævar Arnfjörð Bjarmason" <avarab@gmail.com>,
	"Jeff King" <peff@peff.net>,
	"Git Mailing List" <git@vger.kernel.org>,
	"Jonathan Nieder" <jrnieder@gmail.com>,
	frank@gevaerts.be
Subject: Re: [RFC] dropping support for ancient versions of curl
Date: Wed, 5 Apr 2017 10:49:47 +0200 (CEST)	[thread overview]
Message-ID: <alpine.DEB.2.20.1704051031200.4268@virtualbox> (raw)
In-Reply-To: <CAGZ79kb5VeKCzzafw+nEcRda2apuit-K=qZxxZ3Li96MiMdOXA@mail.gmail.com>

Hi Stefan,

On Tue, 4 Apr 2017, Stefan Beller wrote:

> On Tue, Apr 4, 2017 at 3:46 PM, Johannes Schindelin
> <Johannes.Schindelin@gmx.de> wrote:
> >
> > On Tue, 4 Apr 2017, Brandon Williams wrote:
> >
> >> I'm all for seeing a patch like this applied.  I agree that we can't
> >> expect the world to be running the most up-to-date version of curl
> >> but we should be able to select some "oldest" version we will support
> >> which can be bumped up every couple of years.
> >>
> >> I mean, ensuring that you are running with an up-to-date version of
> >> curl is really important when it comes to all of the security fixes
> >> that have been made in each revision.
> >
> > I am not in the business of dictating to others what software they
> > have to run. I am in the business of maintaining Git for Windows. And
> > part of that job is to drag along code that is maybe not the most
> > elegant, but works.
> >
> > The patch in question resolves such a wart. Sure, it would be a
> > cleanup.  Is it a huge maintenance burden to keep those few #ifdef's,
> > though?  Absolutely not.
> 
> Keeping them around is the easy part, the hard part is promising to
> users that the software you maintain is as good as your reputation, when
> e.g.  we find out that certain #ifdefs don't even compile.  (See Frank
> Gevaerts answer)

From that point of view, we should drop support for platforms as soon as
we have a bug in our code that lets the build fail: there is little
difference between the #ifdef's that let Git build with older dependencies
and #ifdef's that let Git build on platforms other than Linux.

By that reasoning, we would have dropped FreeBSD support a gazillion
times. Or for that matter, Windows support.

I obviously disagree with this stance.

> Initially I thought I had a similar stance as you ("A well written line
> of code is cheap") but I kept quiet, as I do not have a lot of
> experience with dealing "old" Software.

I am speaking from my point of view, of course, maintaining Git for
Windows. Of course I would love to drop support for old MSys. But that's
not going to happen because at least one active contributor has a vested
interest in keeping it going.

But even then, it sometimes takes a while until any breakages get fixed.
Prematurely removing a build option "because it has been broken for a
couple of major versions" would make it infinitely harder for (often
overworked) contributors to fix the breakage.

Anyway, this whole discussion took way more effort from my side than to
maintain a couple of slightly stale #ifdef's. From
https://xkcd.com/1205/'s point of view, I should have ignored the
"let's rip out stuff just because we can" patch.

I just thought that we care a bit more about contributors' experience.

> Maybe the git community would want to take a look at the kernel
> community (or other similar communities), how they solve the "long term
> stable" problem of computer science.

If we want to follow the example of a inclusive community that values
contributors' time and effort, maybe we should look elsewhere?

I vividly remember hearing Greg KH's statement at Git Merge 2016 "we
deliberately waste contributors' time". Very vividly. Very, very vividly.

> So I would propose to take this patch, but be prepared to revert it in case
> some user yells.

It would be much nicer to contributors (who are likely not subscribed to
the Git mailing list, or at least do not read all the mails coming in on
that channel) if they could simply imitate the surrounding #ifdef's and
make that tiny patch that adds a guard around an unused static function.

If you require them to revert a patch first that reinstates an almost
working state with an old dependency, you expect them to know that there
was such a patch in the first place, and to dig it up.

Let's reiterate that we are talking about some #ifdef's here that are a
tiny maintenance burden. That may have a bug here and there, easily fixed.

Again, I am sure that we can provide a much better contributors'
experience.

Also, maybe, just maybe, there are more pressing issues than removing a
couple lines here and there? This discussion vaguely reminds me of the
opening statement of https://en.wikipedia.org/wiki/Law_of_triviality...
Just saying'...

Ciao,
Dscho

  reply	other threads:[~2017-04-05  8:51 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-04-04  2:54 [RFC] dropping support for ancient versions of curl Jeff King
2017-04-04  3:08 ` Jeff King
2017-04-04  5:44   ` Jessie Hernandez
2017-04-04  8:17 ` Ævar Arnfjörð Bjarmason
2017-04-04  8:33   ` Jeff King
2017-04-04 10:44     ` Ævar Arnfjörð Bjarmason
2017-04-04 11:54       ` Johannes Schindelin
2017-04-04 14:06         ` Ævar Arnfjörð Bjarmason
2017-04-04 16:53           ` Brandon Williams
2017-04-04 22:46             ` Johannes Schindelin
2017-04-04 23:03               ` Brandon Williams
2017-04-04 23:03               ` Stefan Beller
2017-04-05  8:49                 ` Johannes Schindelin [this message]
2017-04-05  9:29                   ` Jeff King
2017-04-04 20:16           ` Jeff King
2017-04-04 13:32 ` Frank Gevaerts
2017-04-05  9:33 ` Tom G. Christensen
2017-04-05 10:51   ` Ævar Arnfjörð Bjarmason
2017-04-05 13:04     ` [PATCH 0/7] Patches to support older RHEL releases Tom G. Christensen
2017-04-05 13:04       ` [PATCH 1/7] Make NO_PERL_MAKEMAKER behave more like ExtUtils::MakeMaker Tom G. Christensen
2017-04-05 13:04       ` [PATCH 2/7] Install man pages when NO_PERL_MAKEMAKER is used Tom G. Christensen
2017-04-05 13:04       ` [PATCH 3/7] Allow svnrdump_sim.py to be used with Python 2.2 Tom G. Christensen
2017-04-05 13:40         ` Ævar Arnfjörð Bjarmason
2017-04-05 14:36           ` Tom G. Christensen
2017-04-05 13:04       ` [PATCH 4/7] Handle missing HTTP_CONNECTCODE in curl < 7.10.7 Tom G. Christensen
2017-04-05 13:50         ` Ævar Arnfjörð Bjarmason
2017-04-05 15:58           ` Franke, Knut
2017-04-05 13:04       ` [PATCH 5/7] Add support for gnupg < 1.4 Tom G. Christensen
2017-04-05 13:45         ` Ævar Arnfjörð Bjarmason
2017-04-13  6:31           ` Junio C Hamano
2017-04-13 15:17           ` Ævar Arnfjörð Bjarmason
2017-04-05 13:04       ` [PATCH 6/7] Handle missing CURLINFO_SSL_DATA_{IN,OUT} Tom G. Christensen
2017-04-05 13:52         ` Ævar Arnfjörð Bjarmason
2017-04-05 13:04       ` [PATCH 7/7] Do not use curl_easy_strerror with curl < 7.12.0 Tom G. Christensen
2017-04-05 13:53         ` Ævar Arnfjörð Bjarmason
2017-04-06  9:18         ` Jeff King
2017-04-13  6:28           ` Junio C Hamano
2017-04-13 10:52             ` Jacob Keller
2017-04-05 13:04     ` [RFC] dropping support for ancient versions of curl Tom G. Christensen
2017-04-06  0:53     ` brian m. carlson
2017-04-06  1:16       ` Todd Zullinger
2017-04-06  9:29       ` Jeff King
2017-04-07 11:18         ` Johannes Schindelin
2017-04-10 18:22           ` Jeff King
2017-04-06  9:21   ` Jeff King
2017-04-06 16:43     ` Tom G. Christensen
2017-04-07  4:54       ` Jeff King
2017-04-14 11:12         ` Junio C Hamano

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

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

  git send-email \
    --in-reply-to=alpine.DEB.2.20.1704051031200.4268@virtualbox \
    --to=johannes.schindelin@gmx.de \
    --cc=avarab@gmail.com \
    --cc=bmwill@google.com \
    --cc=frank@gevaerts.be \
    --cc=git@vger.kernel.org \
    --cc=jrnieder@gmail.com \
    --cc=peff@peff.net \
    --cc=sbeller@google.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.
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 NNTP newsgroup(s).