git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Jeff King <peff@peff.net>
To: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Cc: Han-Wen Nienhuys <hanwen@google.com>,
	Derrick Stolee <stolee@gmail.com>, Git List <git@vger.kernel.org>
Subject: Re: Git Test Coverage Report (April 30, 2020)
Date: Sun, 3 May 2020 05:55:00 -0400	[thread overview]
Message-ID: <20200503095500.GF170902@coredump.intra.peff.net> (raw)
In-Reply-To: <nycvar.QRO.7.76.6.2005012316350.18039@tvgsbejvaqbjf.bet>

On Sat, May 02, 2020 at 12:08:41AM +0200, Johannes Schindelin wrote:

> I firmly believe that this patch series, in particular the huge patch, can
> be transformed into something that looks a lot more like git.git code, is
> a lot smaller, and is a _lot_ easier to review. Without the confidence
> such a reviewable shape provides, I would actually not trust it enough to
> put it into the hands of end-users.

I agree, and I think it's not just a question of review, but of
maintenance going forward.

We are willing to accept something like compat/regex or kwset having a
vastly differing style and avoiding our usual constructs because they
are pretty stand-alone. They are modular, battle-tested pieces of code
we've taken wholesale $from elsewhere, and we're generally able to treat
them like a black box (that usually works). We really consider them a
"vendor" solution versus a system regex.

But I don't think that's the right attitude for something as critical to
Git as ref storage, or something that is mainly being used by Git (and
so we will be the likely ones to find bugs, not some third-party use).
As much as I do laud efforts to make code that can be used
out-of-the-box by other implementations, within the git.git
implementation stability and maintainability are the _most_ important
things.

Another data point to contrast with kwset, etc, is xdiff. We also took a
stylistically-unusual vendor copy of that into our tree. And I don't
think it has worked all that well. People are hesitant to touch the
code, and it has often lagged (or completely missed out) on project-wide
cleanups like those around memory allocation, size_t overflows, etc. I'd
be even more afraid to see similar issues in something as critical as
ref storage.

-Peff

  reply	other threads:[~2020-05-03  9:55 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-30 11:21 Git Test Coverage Report (April 30, 2020) Derrick Stolee
2020-04-30 15:12 ` Han-Wen Nienhuys
2020-05-01 22:08   ` Johannes Schindelin
2020-05-03  9:55     ` Jeff King [this message]
2020-05-03 16:58       ` Junio C Hamano
2020-05-07 10:11         ` Han-Wen Nienhuys
2020-05-07 18:56           ` 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

  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=20200503095500.GF170902@coredump.intra.peff.net \
    --to=peff@peff.net \
    --cc=Johannes.Schindelin@gmx.de \
    --cc=git@vger.kernel.org \
    --cc=hanwen@google.com \
    --cc=stolee@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).