LibreCat / Catmandu

Catmandu - a data processing toolkit
https://librecat.org
175 stars 31 forks source link

Replace Travis with GitHub Actions #385

Closed nichtich closed 2 years ago

nichtich commented 2 years ago

Travis does not work anymore. The gh-actions branch contains a first try to use GitHub Actions instead but it fails on some Perl versions.

zmughal commented 2 years ago

The failure is because App::Cmd needs Perl ≥ v5.20.0:

Entering App-Cmd-0.334
Checking configure dependencies from META.json
Checking if you have ExtUtils::MakeMaker 6.78 ... Yes (7.62)
Running Makefile.PL
Configuring App-Cmd-0.334 ... Perl v5.20.0 required--this is only v5.14.4, stopped at Makefile.PL line 5.
jorol commented 2 years ago

Thanks for the hint. ~I think another problem is https://github.com/perl4lib/marc-perl/issues/14.~

vpeil commented 2 years ago

Thanks for the hint. I think another problem is perl4lib/marc-perl#14.

But why? I can't see this dependency in cpanfile.

vpeil commented 2 years ago

@zmughal you are right. Here's the proof: https://github.com/LibreCat/Catmandu/runs/4367128386?check_suite_focus=true#step:6:675

I think there's no other way than requiring perl 5.20 for catmandu if we need App::Cmd (and perl 5.20 is from 2014)

nichtich commented 2 years ago

I don't see any good reason why App::Cmd requires Perl 5.20 since 2021. Is it possible to use an older version of App:Cmd, such as 0.330?

zmughal commented 2 years ago

I don't see any good reason why App::Cmd requires Perl 5.20 since 2021.

The reason App::Cmd bumped up the Perl requirement was because the code started using postderef.

Is it possible to use an older version of App:Cmd, such as 0.330?

Yes, but this would need to specified to cpanm as:

cpanm 'Getopt::Long::Descriptive~<0.105' 'App::Cmd~<0.332'  Catmandu

which can be added to the CI for testing against older Perls only. That way if somebody does have a need for running on older Perls for now, they have a way to do that which has been tested. The drawback is that it won't benefit from any newer bug-fixes in the future.

zmughal commented 2 years ago

Is it possible to use an older version of App:Cmd, such as 0.330?

[...] can be added to the CI for testing against older Perls only.

I have now done this on the zmughal:gh-actions branch.

All that remains is to run Perl::Tidy on the files so that the release tests pass.

nics commented 2 years ago

resolved by #386