Re: [PATCH 2/2] Allow passing pipes for input pipes to diff --no-index
- From
Thomas Guyot-Sionnest <tguyot@gmail.com>
- Date
- Sep 18, 2020, 17:39 UTC
- Message-ID
- <CALqVoheztgciT1PBGmWu-M-Y_Lt13fhbSyXrMfoqmAotVCthNA@mail.gmail.com>
- In-Reply-To
- <20200918171950.GA183026@coredump.intra.peff.net>
Hi Jeff,
On Fri, 18 Sep 2020 at 13:19, Jeff King <peff@peff.net> wrote:
> On Fri, Sep 18, 2020 at 12:34:48PM -0400, Thomas Guyot-Sionnest wrote: > But we do have to account for this in the test suite, which must be able > to run under a vanilla POSIX shell. So you'd probably want to set up a > prerequisite that lets us skip these tests on other shells, like:
Indeed, the bash test library that was suggested earlier may be better as it exec() bash rather than skipping tests. Testing as a prereq works, another approach which may be harder to swallow but allow testing when default shell is /bin/sh is to run each git command through bash - could be coupled with a dep if bash isn't installed at all.
> Though it is a little sad that people running the suite with a vanilla > /bin/sh like dash wouldn't ever run the tests. I wonder if there's a > more portable way to formulate it.
Debian defaults to dash, a minimalistic and afaik POSIX-compliant shell.
Show 11 quoted lines
> Getting back to the overall feature, this is definitely something that > has come up before. The last I know of is: > > https://lore.kernel.org/git/20181220002610.43832-1-sandals@crustytoothpaste.net/ > > which everybody seemed to like the direction of; I suspect the original > author (cc'd) just never got around to it again. Compared to this > approach, it uses a command-line option to avoid dereferencing symlinks. > That puts an extra burden on the caller to pass the option, but it's way > less magical; you could drop all of the "does this look like a symlink > to a pipe" heuristics. It would also be much easier to test. ;)
Thanks for the info. Another consideration is how other commands - diff, vim, sed, curl, etc can take input the same way, so being able to swap-in git is a plus imho,and one less switch to learn (or even learn about, I never looked for one for this issue).
Regards,
Thomas