Re: [PATCH 0/8] Resend of GIT_TEST_PROTOCOL_VERSION patches
- From
Jeff King <peff@peff.net>
- Date
- Feb 6, 2019, 21:34 UTC
- Message-ID
- <20190206213458.GC12737@sigill.intra.peff.net>
- In-Reply-To
- <cover.1549411880.git.jonathantanmy@google.com>
On Tue, Feb 05, 2019 at 04:21:14PM -0800, Jonathan Tan wrote:
Show 7 quoted lines
> This is on the latest master (8feddda32c ("Fifth batch for 2.21",
> 2019-02-05)) + js/protocol-advertise-multi.
>
> This is a resend of [1], which was built on the result of merging many
> branches. Now that most of the branches have been merged to master, I
> have rebased it on master. The only branch that I needed to merge was
> js/protocol-advertise-multi.Thanks for working on this. With the exception of the final patch, this all seems pretty sane to me from a quick look.
There is one thing that your test patches made me wonder. When we have to make an exception to a test (i.e., that doesn't work under v2), you do it by unsetting GIT_TEST_PROTOCOL_VERSION in the environment. That means we'll actually run the test, but not with the version that the caller specified.
I wonder if it would be more obvious what's going on if we instead had a prereq like:
test_expect_success !PROTO_V2 'ls-remote --symref' '
...
'and just skipped those tests entirely (and in a way that appears in the TAP output).
I think it would also future-proof us a bit for v2 becoming the default (i.e., when GIT_TEST_PROTOCOL_VERSION being blank does mean "use v2").
I dunno. It probably doesn't matter all that much, so it may not be worth going back and changing at this point. Just a thought.
-Peff