Skip to content

ci: use cpanm for multi-version Linux matrix#135

Draft
Koan-Bot wants to merge 1 commit into
garu:masterfrom
Koan-Bot:koan.atoomic/ci-fix-old-perl-deps
Draft

ci: use cpanm for multi-version Linux matrix#135
Koan-Bot wants to merge 1 commit into
garu:masterfrom
Koan-Bot:koan.atoomic/ci-fix-old-perl-deps

Conversation

@Koan-Bot

@Koan-Bot Koan-Bot commented May 3, 2026

Copy link
Copy Markdown
Contributor

What

Replace install-with-cpm action with direct cpanm commands in the multi-version Linux matrix job.

Why

cpm requires Perl 5.24+ to run, causing the install deps step to fail on Perl 5.8–5.22 with:

Perl v5.24.0 required--this is only v5.10.1

This has been breaking CI for all PRs on old Perl versions. Bumping to install-with-cpm@v2 (PR #133) doesn't help — cpm itself has the version requirement.

How

  • Use cpanm --installdeps for required deps (fails the build if broken)
  • Install recommended deps (DBI, Math::BigInt::GMP, etc.) separately with || true since they're optional
  • Remove the PERL5LIB step — cpanm in Docker containers installs to system paths (running as root)
  • Other jobs (ubuntu-latest, distro-matrix, macOS) keep install-with-cpm since they use Perl 5.30+

Supersedes #133.

Testing

  • Local build + test pass on Perl 5.42
  • All non-matrix CI jobs unaffected (they keep cpm)
  • Expect Perl 5.8–5.22 to go green once cpm is no longer involved

🤖 Generated with Claude Code

The install-with-cpm action uses cpm which requires Perl 5.24+,
causing CI failures on Perl 5.8–5.22 (the CPAN MetaDB 404 issue
was actually cpm refusing to run on old Perls).

Replace with direct cpanm commands that work on all Perl versions:
- Required deps via --installdeps (fails build if broken)
- Recommended deps (DBI, Math::BigInt::GMP, etc.) as best-effort

Supersedes garu#133.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant