Re: [PATCH 2/7] t: introduce tests for unexpected object types
- From
Taylor Blau <me@ttaylorr.com>
- Date
- Apr 6, 2019, 05:33 UTC
- Message-ID
- <20190406053308.GC37216@Taylors-MBP.hsd1.wa.comcast.net>
- In-Reply-To
- <20190405205345.GB8166@sigill.intra.peff.net>
On Fri, Apr 05, 2019 at 04:53:45PM -0400, Jeff King wrote:
Show 23 quoted lines
> On Fri, Apr 05, 2019 at 03:25:43PM -0400, Eric Sunshine wrote:
>
> > On Fri, Apr 5, 2019 at 2:24 PM Jeff King <peff@peff.net> wrote:
> > > On Fri, Apr 05, 2019 at 12:50:33PM +0200, SZEDER Gábor wrote:
> > > > > + git cat-file commit $commit |
> > > > > + perl -lpe "/^author/ && print q(parent $blob)" \
> > > > > + >broken-commit &&
> > >
> > > > Wouldn't a 'sed' one-liner suffice, so we won't have yet another perl
> > > > dependency?
> > >
> > > Heh, this was actually the subject of much discussion before the patches
> > > hit the list. If you can write such a one-liner that is both readable
> > > and portable, please share it. I got disgusted with sed and suggested
> > > this perl.
> >
> > Trivial and portable 'sed' equivalent:
> >
> > git cat-file commit $commit | sed "/^author/ { h; s/.*/parent $blob/; G; }"
>
> I always forget about the hold space. That's pretty readable (though
> being sed, it's terse enough that I actually think the perl is more
> readable; that may be personal taste, though).Ah, very nice. Thanks Eric, your sed-fu is much stronger than mine ;-).
I share Peff's view that this might be less readable than its Perl counterpart, but am similarly sympathetic to the notion that more Perl is a bad example in 't'.
I think that I'll take this for v2 and get rid of the Perl.
Thanks, Taylor