git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [RFC PATCH 0/2] contrib/credential/netrc Makefile & test improvements

From
Todd Zullinger <tmz@pobox.com>
Date
Jun 13, 2018, 03:08 UTC
Message-ID
<20180613030852.GG3094@zaya.teonanacatl.net>
In-Reply-To
<87efhfvxzu.fsf@evledraar.gmail.com>
Hi,
Ævar Arnfjörð Bjarmason wrote:
Show 30 quoted lines
> 
> On Sun, Jun 10 2018, Todd Zullinger wrote:
> 
>>> I added 'use autodie;' without realizing it had external dependencies.
>>> According to the documentation
>>> http://perldoc.perl.org/autodie.html
>>> it's a pragma since perl 5.10.1
>>> Removing 'use autodie;' should be fine: it's not critical.
>>
>> I should clarify that part of why autodie isn't in my build
>> environment is that the Fedora and RHEL7+ perl packages
>> split out many modules which are shipped as part of the core
>> perl tarball.  So while all the platforms I care about have
>> perl >= 5.10.1, the Fedora and newer RHEL systems have the
>> autodie module in a separate package.
>>
>> That said, the INSTALL docs still suggest that we only
>> require perl >= 5.8, so if autodie is easily removed, that
>> would probably be a good plan.
> 
> The intent of those docs was and still is to say "5.8 and the modules it
> ships with".
> 
> This was discussed when 2.17.0 was released with my changes to make us
> unconditionally use Digest::MD5:
> https://public-inbox.org/git/87fu50e0ht.fsf@evledraar.gmail.com/
> 
> As noted there that's not some dogmatic "RedHat altered perl so we don't
> care about them", but rather that in practice this doesn't impact users
> negatively, so I think it's fine.

Yeah, that was my understanding. I only included the information on why it was missing from my build environment despite having perl-5.10.1 was due to the Fedora/Red Hat packaging. I agree that any issues which fall out of those packaging differences are on Fedora/Red Hat packagers to fix.

(Which should all be relatively trivial, as the perl modules contain a 'Provides: perl($module)'. That allows dnf|yum install 'perl(autodie)' to easily pull in the right package. And the rpm perl dep generator creates a 'Requires: perl(autodie)' when is sees 'use autodie'.)

Sorry if I muddied the conversation with that tangential info. :)

Show 15 quoted lines
>> Ævar brought up bumping the minimum supported perl to 5.10.0
>> last December, in <20171223174400.26668-1-avarab@gmail.com>
>> (https://public-inbox.org/git/20171223174400.26668-1-avarab@gmail.com/).
>> The general consensus seemed positive, but I don't think
>> it's happened.  Even so, that was 5.10.0, not the 5.10.1
>> which added autodie.
> 
> Right, this doesn't apply to autodie. Looking at
> https://www.cpan.org/ports/binaries.html there were a lot of releases
> that had 5.10.0, not *.1.
> 
> Also git-credential-netrc is in contrib, I don't know if that warrants
> treating it differently, I don't use it myself, and don't know how much
> it's "not really contrib" in practice (e.g. like the bash completion
> which is installed everywhere...)>

Indeed, that's a fine question. All the platforms I care about have 5.10.1 or newer, so either way works for me.

> But yeah, skimming the code it would be easy to remove the dependency.

I wrapped up the changes from Luis which replace my 2/2 "use in-tree Git.pm for tests" and to ensure the tests exit properly on failures. I'll send those out now in the hope that it saves a little effort in moving these minor fixes forward.

As far as removing the autodie dep, is there anything more to that than dropping the 'use autodie' line? It looks like doing so leaves us no worse than we were before, but I haven't written any perl in a long time.

Thanks,
-- 
Todd
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Ocean, n. A body of water occupying about two-thirds of a world made
for man -- who has no gills.
    -- Ambrose Bierce, "The Devil's Dictionary"
Previous: Ævar Arnfjörð BjarmasonNext: Luis Marsano
Message 7 of 20 in “contrib/credential/netrc Makefile & test improvements”
  1. 0/2 contrib/credential/netrc Makefile & test improvementsTodd Zullinger, Jun 7, 2018
  2. 1/2 git-credential-netrc: make "all" default target of MakefileTodd Zullinger, Jun 7, 2018
  3. 2/2 git-credential-netrc: use in-tree Git.pm for testsTodd Zullinger, Jun 7, 2018
  4. Luis MarsanoJun 9, 2018
  5. Todd ZullingerJun 10, 2018
  6. Ævar Arnfjörð BjarmasonJun 10, 2018
  7. Todd ZullingerJun 13, 2018
  8. Luis MarsanoJun 13, 2018
  9. git-credential-netrc: remove use of "autodie"Ævar Arnfjörð Bjarmason, Jun 13, 2018
  10. Junio C HamanoJun 13, 2018
  11. Todd ZullingerJun 13, 2018
  12. 0/4 contrib/credential/netrc Makefile & test improvementsTodd Zullinger, Jun 13, 2018
  13. Luis MarsanoJun 13, 2018
  14. 1/4 git-credential-netrc: make "all" default target of MakefileTodd Zullinger, Jun 13, 2018
  15. 2/4 git-credential-netrc: minor whitespace cleanup in test scriptTodd Zullinger, Jun 13, 2018
  16. Eric SunshineJun 13, 2018
  17. Todd ZullingerJun 13, 2018
  18. Eric SunshineJun 13, 2018
  19. 3/4 git-credential-netrc: use in-tree Git.pm for testsTodd Zullinger, Jun 13, 2018
  20. 4/4 git-credential-netrc: fix exit status when tests failTodd Zullinger, Jun 13, 2018

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.