Re: [PATCH v3 06/20] t: introduce PERL_TEST_HELPERS prerequisite

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Patrick,

On Wed, 2 Apr 2025, Patrick Steinhardt wrote:

> On Tue, Apr 01, 2025 at 08:26:36PM +0200, Johannes Schindelin wrote:
> > On Thu, 27 Mar 2025, Patrick Steinhardt wrote:
> >
> > > In the early days of Git, Perl was used quite prominently throughout
> > > the project. This has changed significantly as almost all of the
> > > executables we ship nowadays have eventually been rewritten in C.
> > > Only a handful of subsystems remain that require Perl:
> > >
> > >   - gitweb, a read-only web interface.
> > >
> > >   - A couple of scripts that allow importing repositories from GNU Arch,
> > >     CVS and Subversion.
> > >
> > >   - git-send-email(1), which can be used to send mails.
> >
> > There is also `git request-pull` which is a _shell_ script that runs
> > `perl` to parse the output of `ls-remote`, and there is `git
> > filter-branch` (which was apparently not yet dropped?) that uses Perl if
> > the `--state-branch` option is in use.
>
> Ah, indeed, thanks!
>
> I should probably mark both of these to require Perl in our build
> systems so that we have a source of truth what requires Perl and what
> doesn't. git-filter-branch(1) also looks somewhat broken because it uses
> Perl directly instead of using PERL_PATH.

True.

> On the other hand, maybe the better fix would be to just convert tools
> to not use Perl at all anymore so that we can eventually get rid of this
> dependency altogether. It feels like we're quite close, and many of
> these conversions are low-hanging fruit.

As for `git filter-branch`, we could simply -- what were the wise words of
Elijah's mentor? -- "debug" it. I.e. delete it and be happy about it.

> > The patch looks good, in particular when fetching the `b4/pks-t-perlless`
> > branch from https://gitlab.com/gitlab-org/git and inspecting 8fc639f99d9f
> > manually, as it is a rather large patch that is pretty much unreviewable
> > on a mailing list.
> >
> > Using several write-only `sed` invocations, I identified that there are
> > only three hunks that are neither adding a stand-alone `PERL_TEST_HELPERS`
> > prereq nor adding a test preamble of this form:
> >
> > 	if ! test_have_prereq PERL_TEST_HELPERS
> > 	then
> > 		skip_all='skipping <something>; Perl not available'
> > 		test_done
> > 	fi
>
> Thanks for double checking!

You're welcome. I am a bit embarrassed to admit that it took me quite a
bit of time, I believe it was around an hour, to validate this patch
alone.

Ciao,
Johannes





[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux