Skip to content

refactor: simplify Makefile.PL EUMM version guards#35

Draft
toddr-bot wants to merge 1 commit intomainfrom
koan.toddr.bot/simplify-makefile-pl-version-guards
Draft

refactor: simplify Makefile.PL EUMM version guards#35
toddr-bot wants to merge 1 commit intomainfrom
koan.toddr.bot/simplify-makefile-pl-version-guards

Conversation

@toddr-bot
Copy link
Copy Markdown
Collaborator

@toddr-bot toddr-bot commented Apr 6, 2026

What

Remove $ExtUtils::MakeMaker::VERSION conditionals from Makefile.PL by requiring EUMM >= 6.64 upfront.

Why

The file had version-guarded blocks for LICENSE (needs 6.3002) and TEST_REQUIRES (needs 6.64), plus a fallback that merged test deps into PREREQ_PM for ancient toolchains. EUMM 6.64 shipped with Perl 5.19.1 (2013) — any system still on an older EUMM will have it auto-upgraded via CONFIGURE_REQUIRES before Makefile.PL runs.

How

  • Declared CONFIGURE_REQUIRES => { 'ExtUtils::MakeMaker' => '6.64' } so CPAN clients upgrade EUMM before configure phase
  • Removed all three $ExtUtils::MakeMaker::VERSION conditionals
  • Used LICENSE and TEST_REQUIRES directly
  • Kept provides with MM->parse_version() — that's the correct EUMM pattern for multi-package dists

Testing

make test — 183 tests pass. Verified MYMETA.json has correct prereq phases (configure, runtime, test all separate).

🤖 Generated with Claude Code


Quality Report

Changes: 1 file changed, 7 insertions(+), 7 deletions(-)

Code scan: clean

Tests: passed (OK)

Branch hygiene: clean

Generated by Kōan post-mission quality pipeline

Remove version-conditional guards for LICENSE (6.3002) and
TEST_REQUIRES (6.64). Instead, declare ExtUtils::MakeMaker 6.64
in CONFIGURE_REQUIRES so CPAN clients auto-upgrade before
running Makefile.PL. This eliminates all $ExtUtils::MakeMaker::VERSION
checks and the TEST_REQUIRES-to-PREREQ_PM fallback.

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