From 3b6d270fcf0137fd0ec9de56f75a8236d2981108 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Branislav=20Zahradn=C3=ADk?= Date: Wed, 7 May 2025 19:45:02 +0200 Subject: [PATCH 01/24] Semantic helper functions - skip Use better word to describe intention. Modules marked as `do_not_install` (or `skip` after the update) are not prevented from being installed. They still can be installed as a dependency. --- cpanfile | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/cpanfile b/cpanfile index 84fd5a4..578c85d 100644 --- a/cpanfile +++ b/cpanfile @@ -9,7 +9,7 @@ Semantic sugar to simplify management of modules which changed their required Pe requires_by_perl Module, prior 5.010 => 'use version X', prior 5.012 => 'use version Y', - otherwise do_not_install + otherwise skip ; =cut @@ -31,7 +31,7 @@ sub requires_by_perl { sub prior { @_ } sub otherwise { @_ } -sub do_not_install { undef } +sub skip { undef } requires_by_perl 'Pod::Man', prior 5.010 => '==4.14', @@ -93,7 +93,7 @@ requires 'Test::Version'; requires 'Test::Warnings'; requires_by_perl 'Devel::Cover', - prior 5.010 => do_not_install, + prior 5.010 => skip, prior 5.012 => '==1.42', ; @@ -102,12 +102,12 @@ requires_by_perl 'Test::MockModule', ; requires_by_perl 'Test2::Harness', - prior 5.010 => do_not_install, + prior 5.010 => skip, prior 5.014 => '==1.000156', ; requires_by_perl 'Test2::Harness::Renderer::JUnit', - prior 5.010001 => do_not_install, + prior 5.010001 => skip, prior 5.014 => '==1.000005', ; @@ -136,7 +136,7 @@ if ( "$]" >= 5.020 ) { requires 'Dist::Zilla::PluginBundle::Milla'; requires_by_perl 'Dist::Zilla::PluginBundle::RJBS', - prior 5.020 => do_not_install, + prior 5.020 => skip, prior 5.026 => '==5.023', prior 5.034 => '==5.025', otherwise '>5.028' # 5.028 requires v5.36 whereas following versions only v5.34, so omit it From ddf6b165f4caf79ead503c42a2ac3bde1fd7c445 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Branislav=20Zahradn=C3=ADk?= Date: Wed, 7 May 2025 19:42:07 +0200 Subject: [PATCH 02/24] Semantic helper functions - improve documentation --- cpanfile | 41 ++++++++++++++++++++++++++++++++++++++--- 1 file changed, 38 insertions(+), 3 deletions(-) diff --git a/cpanfile b/cpanfile index 578c85d..6767487 100644 --- a/cpanfile +++ b/cpanfile @@ -3,15 +3,50 @@ use warnings; # satisfy linter =pod -Semantic sugar to simplify management of modules which changed their required Perl version -(directly or via dependencies) +=head1 requires_by_perl - requires_by_perl Module, +Semantic helper to simplify management of modules which have changed +their required Perl version (directly or via dependencies) + + requires_by_perl 'Module', prior 5.010 => 'use version X', prior 5.012 => 'use version Y', otherwise skip ; +=head1 prior + + prior VERSION => VERSION_SPEC, ... + + requires_by_perl 'Module', + prior 5.010 => skip, + ; + +Semantic helper function to give data meaning, +which version of a module should be installed for a Perl version +prior to specified version. + +=head1 otherwise + + otherwise VERSION_SPEC + + requires_by_perl 'Module', + prior 5.010 => skip, + otherwise '5.0', + ; + +Semantic sugar function to give data meaning, +which version of a module to install when none of the previous +L expressions match. + +=head1 skip + + prior 5.010 => skip, + otherwise skip, + +Semantic helper function representing L with the meaning: +do not install explicitly. + =cut sub requires_by_perl { From 6e421fe2c84cca625709f40384fe77a903ee9a29 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Branislav=20Zahradn=C3=ADk?= Date: Thu, 8 May 2025 12:47:06 +0200 Subject: [PATCH 03/24] Move `requires_by_perl` statements to the beginning of requirements --- cpanfile | 52 ++++++++++++++++++++++++++-------------------------- 1 file changed, 26 insertions(+), 26 deletions(-) diff --git a/cpanfile b/cpanfile index 6767487..c65c027 100644 --- a/cpanfile +++ b/cpanfile @@ -68,11 +68,37 @@ sub prior { @_ } sub otherwise { @_ } sub skip { undef } +requires_by_perl 'Devel::Cover', + prior 5.010 => skip, + prior 5.012 => '==1.42', + ; + +requires_by_perl 'Dist::Zilla::PluginBundle::RJBS', + prior 5.020 => skip, + prior 5.026 => '==5.023', + prior 5.034 => '==5.025', + otherwise '>5.028' # 5.028 requires v5.36 whereas following versions only v5.34, so omit it + ; + requires_by_perl 'Pod::Man', prior 5.010 => '==4.14', prior 5.012 => '==5.01', ; +requires_by_perl 'Test2::Harness', + prior 5.010 => skip, + prior 5.014 => '==1.000156', + ; + +requires_by_perl 'Test2::Harness::Renderer::JUnit', + prior 5.010001 => skip, + prior 5.014 => '==1.000005', + ; + +requires_by_perl 'Test::MockModule', + prior 5.012 => '==0.178', + ; + # Last versions which install on < 5.12 if ( "$]" < 5.012 ) { requires 'Data::Section', '==0.200007'; @@ -127,25 +153,6 @@ requires 'Test::Synopsis'; requires 'Test::Version'; requires 'Test::Warnings'; -requires_by_perl 'Devel::Cover', - prior 5.010 => skip, - prior 5.012 => '==1.42', - ; - -requires_by_perl 'Test::MockModule', - prior 5.012 => '==0.178', - ; - -requires_by_perl 'Test2::Harness', - prior 5.010 => skip, - prior 5.014 => '==1.000156', - ; - -requires_by_perl 'Test2::Harness::Renderer::JUnit', - prior 5.010001 => skip, - prior 5.014 => '==1.000005', - ; - if ( "$]" >= 5.010 ) { requires 'Devel::Cover::Report::Codecov'; requires 'Devel::Cover::Report::Coveralls'; @@ -170,13 +177,6 @@ if ( "$]" >= 5.020 ) { requires 'Dist::Zilla::PluginBundle::DROLSKY'; requires 'Dist::Zilla::PluginBundle::Milla'; - requires_by_perl 'Dist::Zilla::PluginBundle::RJBS', - prior 5.020 => skip, - prior 5.026 => '==5.023', - prior 5.034 => '==5.025', - otherwise '>5.028' # 5.028 requires v5.36 whereas following versions only v5.34, so omit it - ; - requires 'Dist::Zilla::PluginBundle::Starter::Git'; requires 'Dist::Zilla::Plugin::CheckChangeLog'; requires 'Dist::Zilla::Plugin::CopyFilesFromRelease'; From 5da1b543ef385baf968324eea191b43e037b6593 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Branislav=20Zahradn=C3=ADk?= Date: Thu, 8 May 2025 12:49:35 +0200 Subject: [PATCH 04/24] Use `requires_by_perl` - Data::Section --- cpanfile | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/cpanfile b/cpanfile index c65c027..37b2a2f 100644 --- a/cpanfile +++ b/cpanfile @@ -68,6 +68,11 @@ sub prior { @_ } sub otherwise { @_ } sub skip { undef } +requires_by_perl 'Data::Section', + prior 5.012 => '==0.200007', + otherwise skip, + ; + requires_by_perl 'Devel::Cover', prior 5.010 => skip, prior 5.012 => '==1.42', @@ -101,7 +106,6 @@ requires_by_perl 'Test::MockModule', # Last versions which install on < 5.12 if ( "$]" < 5.012 ) { - requires 'Data::Section', '==0.200007'; requires 'Data::OptList', '==0.113'; requires 'Plack', '==1.0050'; requires 'Software::License::Perl_5', '==0.104004'; From cf0450a6d51869371686488e11052a37eb9c2906 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Branislav=20Zahradn=C3=ADk?= Date: Thu, 8 May 2025 14:56:40 +0200 Subject: [PATCH 05/24] Use `requires_by_perl` - Data::OptList --- cpanfile | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/cpanfile b/cpanfile index 37b2a2f..1bb5738 100644 --- a/cpanfile +++ b/cpanfile @@ -68,6 +68,11 @@ sub prior { @_ } sub otherwise { @_ } sub skip { undef } +requires_by_perl 'Data::OptList', + prior 5.012 => '==0.113', + otherwise skip + ; + requires_by_perl 'Data::Section', prior 5.012 => '==0.200007', otherwise skip, @@ -106,7 +111,6 @@ requires_by_perl 'Test::MockModule', # Last versions which install on < 5.12 if ( "$]" < 5.012 ) { - requires 'Data::OptList', '==0.113'; requires 'Plack', '==1.0050'; requires 'Software::License::Perl_5', '==0.104004'; requires 'Sub::Exporter', '==0.990'; From 636057d74a3c297c6308dd05cc5f346cea9171f3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Branislav=20Zahradn=C3=ADk?= Date: Thu, 8 May 2025 14:17:28 +0200 Subject: [PATCH 06/24] Use `requires_by_perl` - Plack --- cpanfile | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/cpanfile b/cpanfile index 1bb5738..cfefe46 100644 --- a/cpanfile +++ b/cpanfile @@ -90,6 +90,11 @@ requires_by_perl 'Dist::Zilla::PluginBundle::RJBS', otherwise '>5.028' # 5.028 requires v5.36 whereas following versions only v5.34, so omit it ; +requires_by_perl 'Plack', + prior 5.012 => '==1.0050', + otherwise skip + ; + requires_by_perl 'Pod::Man', prior 5.010 => '==4.14', prior 5.012 => '==5.01', @@ -111,7 +116,6 @@ requires_by_perl 'Test::MockModule', # Last versions which install on < 5.12 if ( "$]" < 5.012 ) { - requires 'Plack', '==1.0050'; requires 'Software::License::Perl_5', '==0.104004'; requires 'Sub::Exporter', '==0.990'; requires 'Test::Deep', '==1.130'; From da2fac92510cb86e9dfedefdc00171cefb0bc17e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Branislav=20Zahradn=C3=ADk?= Date: Thu, 8 May 2025 14:20:00 +0200 Subject: [PATCH 07/24] Use `requires_by_perl` - Software::License::Perl_5 --- cpanfile | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/cpanfile b/cpanfile index cfefe46..3e4d54d 100644 --- a/cpanfile +++ b/cpanfile @@ -100,6 +100,10 @@ requires_by_perl 'Pod::Man', prior 5.012 => '==5.01', ; +requires_by_perl 'Software::License::Perl_5', + prior 5.012 => '==0.104004', + ; + requires_by_perl 'Test2::Harness', prior 5.010 => skip, prior 5.014 => '==1.000156', @@ -116,12 +120,10 @@ requires_by_perl 'Test::MockModule', # Last versions which install on < 5.12 if ( "$]" < 5.012 ) { - requires 'Software::License::Perl_5', '==0.104004'; requires 'Sub::Exporter', '==0.990'; requires 'Test::Deep', '==1.130'; } else { - requires 'Software::License::Perl_5'; requires 'Plack::Test'; } From 33bf816b89253bde07eef354c3f07e16d01acd4f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Branislav=20Zahradn=C3=ADk?= Date: Thu, 8 May 2025 14:20:55 +0200 Subject: [PATCH 08/24] Use `requires_by_perl` - Sub::Exporter --- cpanfile | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/cpanfile b/cpanfile index 3e4d54d..bdeeeaf 100644 --- a/cpanfile +++ b/cpanfile @@ -104,6 +104,11 @@ requires_by_perl 'Software::License::Perl_5', prior 5.012 => '==0.104004', ; +requires_by_perl 'Sub::Exporter', + prior 5.012 => '==0.990', + otherwise skip + ; + requires_by_perl 'Test2::Harness', prior 5.010 => skip, prior 5.014 => '==1.000156', @@ -120,7 +125,6 @@ requires_by_perl 'Test::MockModule', # Last versions which install on < 5.12 if ( "$]" < 5.012 ) { - requires 'Sub::Exporter', '==0.990'; requires 'Test::Deep', '==1.130'; } else { From 39f194366c73f40bdd651d41683a7e47ea00eb3c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Branislav=20Zahradn=C3=ADk?= Date: Thu, 8 May 2025 14:21:52 +0200 Subject: [PATCH 09/24] Use `requires_by_perl` - Test::Deep --- cpanfile | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/cpanfile b/cpanfile index bdeeeaf..c7ae4c2 100644 --- a/cpanfile +++ b/cpanfile @@ -119,13 +119,17 @@ requires_by_perl 'Test2::Harness::Renderer::JUnit', prior 5.014 => '==1.000005', ; +requires_by_perl 'Test::Deep', + prior 5.012 => '==1.130', + otherwise skip + ; + requires_by_perl 'Test::MockModule', prior 5.012 => '==0.178', ; # Last versions which install on < 5.12 if ( "$]" < 5.012 ) { - requires 'Test::Deep', '==1.130'; } else { requires 'Plack::Test'; From 26ee7f043b5c5922dad2fa9048e8ad2e42f4ae34 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Branislav=20Zahradn=C3=ADk?= Date: Thu, 8 May 2025 14:22:50 +0200 Subject: [PATCH 10/24] Use `requires_by_perl` - Plack::Test --- cpanfile | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/cpanfile b/cpanfile index c7ae4c2..745d362 100644 --- a/cpanfile +++ b/cpanfile @@ -95,6 +95,10 @@ requires_by_perl 'Plack', otherwise skip ; +requires_by_perl 'Plack::Test', + prior 5.012 => skip + ; + requires_by_perl 'Pod::Man', prior 5.010 => '==4.14', prior 5.012 => '==5.01', @@ -128,13 +132,6 @@ requires_by_perl 'Test::MockModule', prior 5.012 => '==0.178', ; -# Last versions which install on < 5.12 -if ( "$]" < 5.012 ) { -} -else { - requires 'Plack::Test'; -} - if ( "$]" >= 5.010 ) { requires 'Perl::Critic', '>= 1.144'; } From 0bb7ce42f10b8def7f4fe2aed272db0fadb14ca5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Branislav=20Zahradn=C3=ADk?= Date: Thu, 8 May 2025 14:23:51 +0200 Subject: [PATCH 11/24] Use `requires_by_perl` - Perl::Critic --- cpanfile | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/cpanfile b/cpanfile index 745d362..48be2e0 100644 --- a/cpanfile +++ b/cpanfile @@ -90,6 +90,11 @@ requires_by_perl 'Dist::Zilla::PluginBundle::RJBS', otherwise '>5.028' # 5.028 requires v5.36 whereas following versions only v5.34, so omit it ; +requires_by_perl 'Perl::Critic', + prior 5.010 => '==1.142', + otherwise '>= 1.144', + ; + requires_by_perl 'Plack', prior 5.012 => '==1.0050', otherwise skip @@ -132,13 +137,6 @@ requires_by_perl 'Test::MockModule', prior 5.012 => '==0.178', ; -if ( "$]" >= 5.010 ) { - requires 'Perl::Critic', '>= 1.144'; -} -else { - requires 'Perl::Critic', '==1.142'; -} - requires 'App::cpanoutdated'; requires 'ExtUtils::MakeMaker'; requires 'File::Temp'; From 7f5abd1a8db05f24d0bebb007265b4ff0eb09c55 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Branislav=20Zahradn=C3=ADk?= Date: Thu, 8 May 2025 14:25:00 +0200 Subject: [PATCH 12/24] Use `requires_by_perl` - Pod::Readme --- cpanfile | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/cpanfile b/cpanfile index 48be2e0..5fb0f66 100644 --- a/cpanfile +++ b/cpanfile @@ -109,6 +109,10 @@ requires_by_perl 'Pod::Man', prior 5.012 => '==5.01', ; +requires_by_perl 'Pod::Readme', + prior 5.012 => skip, + ; + requires_by_perl 'Software::License::Perl_5', prior 5.012 => '==0.104004', ; @@ -143,7 +147,6 @@ requires 'File::Temp'; requires 'List::MoreUtils'; requires 'Module::Build'; requires 'Perl::Tidy', '>= 20220217'; -requires 'Pod::Readme' if "$]" >= 5.012000; requires 'Pod::Spell', '>= 1.25'; requires 'Test2::Bundle::Extended'; requires 'Test2::Plugin::NoWarnings'; From ae687a40f9653d2cccc8a9815b119b7e99993d47 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Branislav=20Zahradn=C3=ADk?= Date: Thu, 8 May 2025 14:26:27 +0200 Subject: [PATCH 13/24] Use `requires_by_perl` - Devel::Cover::Report::Codecov --- cpanfile | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/cpanfile b/cpanfile index 5fb0f66..192127c 100644 --- a/cpanfile +++ b/cpanfile @@ -83,6 +83,10 @@ requires_by_perl 'Devel::Cover', prior 5.012 => '==1.42', ; +requires_by_perl 'Devel::Cover::Report::Codecov', + prior 5.010 => skip, + ; + requires_by_perl 'Dist::Zilla::PluginBundle::RJBS', prior 5.020 => skip, prior 5.026 => '==5.023', @@ -174,7 +178,6 @@ requires 'Test::Version'; requires 'Test::Warnings'; if ( "$]" >= 5.010 ) { - requires 'Devel::Cover::Report::Codecov'; requires 'Devel::Cover::Report::Coveralls'; requires 'Minilla'; requires 'Test::Vars'; From 0ee503fe1702f4f695222e7b8b6713da922fcae4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Branislav=20Zahradn=C3=ADk?= Date: Thu, 8 May 2025 14:27:10 +0200 Subject: [PATCH 14/24] Use `requires_by_perl` - Devel::Cover::Report::Coveralls --- cpanfile | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/cpanfile b/cpanfile index 192127c..7616b79 100644 --- a/cpanfile +++ b/cpanfile @@ -87,6 +87,10 @@ requires_by_perl 'Devel::Cover::Report::Codecov', prior 5.010 => skip, ; +requires_by_perl 'Devel::Cover::Report::Coveralls', + prior 5.010 => skip, + ; + requires_by_perl 'Dist::Zilla::PluginBundle::RJBS', prior 5.020 => skip, prior 5.026 => '==5.023', @@ -178,7 +182,6 @@ requires 'Test::Version'; requires 'Test::Warnings'; if ( "$]" >= 5.010 ) { - requires 'Devel::Cover::Report::Coveralls'; requires 'Minilla'; requires 'Test::Vars'; } From 4478dc95e26b5181d6dda44aa8f13dce98fc98c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Branislav=20Zahradn=C3=ADk?= Date: Thu, 8 May 2025 14:28:51 +0200 Subject: [PATCH 15/24] Use `requires_by_perl` - Minilla --- cpanfile | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/cpanfile b/cpanfile index 7616b79..35c4c44 100644 --- a/cpanfile +++ b/cpanfile @@ -98,6 +98,10 @@ requires_by_perl 'Dist::Zilla::PluginBundle::RJBS', otherwise '>5.028' # 5.028 requires v5.36 whereas following versions only v5.34, so omit it ; +requires_by_perl 'Minilla', + prior 5.010 => skip, + ; + requires_by_perl 'Perl::Critic', prior 5.010 => '==1.142', otherwise '>= 1.144', @@ -182,7 +186,6 @@ requires 'Test::Version'; requires 'Test::Warnings'; if ( "$]" >= 5.010 ) { - requires 'Minilla'; requires 'Test::Vars'; } From 43475d25b61b7e5d4780a6651d2a7fafdf1db073 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Branislav=20Zahradn=C3=ADk?= Date: Thu, 8 May 2025 14:30:01 +0200 Subject: [PATCH 16/24] Use `requires_by_perl` - Test::Vars --- cpanfile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/cpanfile b/cpanfile index 35c4c44..906428d 100644 --- a/cpanfile +++ b/cpanfile @@ -153,6 +153,10 @@ requires_by_perl 'Test::MockModule', prior 5.012 => '==0.178', ; +requires_by_perl 'Test::Vars', + prior 5.010 => skip, + ; + requires 'App::cpanoutdated'; requires 'ExtUtils::MakeMaker'; requires 'File::Temp'; @@ -185,10 +189,6 @@ requires 'Test::Synopsis'; requires 'Test::Version'; requires 'Test::Warnings'; -if ( "$]" >= 5.010 ) { - requires 'Test::Vars'; -} - if ( "$]" >= 5.012 ) { requires 'Code::TidyAll::Plugin::SortLines::Naturally'; requires 'Code::TidyAll::Plugin::Test::Vars'; From 47413209f30b04a761e513f62199b7fffbe750ac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Branislav=20Zahradn=C3=ADk?= Date: Thu, 8 May 2025 14:31:23 +0200 Subject: [PATCH 17/24] Use `requires_by_perl` - Code::TidyAll::Plugin::SortLines::Naturally --- cpanfile | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/cpanfile b/cpanfile index 906428d..4061f67 100644 --- a/cpanfile +++ b/cpanfile @@ -68,6 +68,10 @@ sub prior { @_ } sub otherwise { @_ } sub skip { undef } +requires_by_perl 'Code::TidyAll::Plugin::SortLines::Naturally', + prior 5.012 => skip + ; + requires_by_perl 'Data::OptList', prior 5.012 => '==0.113', otherwise skip @@ -190,7 +194,6 @@ requires 'Test::Version'; requires 'Test::Warnings'; if ( "$]" >= 5.012 ) { - requires 'Code::TidyAll::Plugin::SortLines::Naturally'; requires 'Code::TidyAll::Plugin::Test::Vars'; requires 'Code::TidyAll::Plugin::UniqueLines'; requires 'Pod::Coverage::TrustPod'; From 5e37854c496a15430edf540aa2abaffe8ffb89f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Branislav=20Zahradn=C3=ADk?= Date: Thu, 8 May 2025 14:32:37 +0200 Subject: [PATCH 18/24] Use `requires_by_perl` - Code::TidyAll::Plugin::Test::Vars --- cpanfile | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/cpanfile b/cpanfile index 4061f67..f410101 100644 --- a/cpanfile +++ b/cpanfile @@ -72,6 +72,10 @@ requires_by_perl 'Code::TidyAll::Plugin::SortLines::Naturally', prior 5.012 => skip ; +requires_by_perl 'Code::TidyAll::Plugin::Test::Vars', + prior 5.012 => skip, + ; + requires_by_perl 'Data::OptList', prior 5.012 => '==0.113', otherwise skip @@ -194,7 +198,6 @@ requires 'Test::Version'; requires 'Test::Warnings'; if ( "$]" >= 5.012 ) { - requires 'Code::TidyAll::Plugin::Test::Vars'; requires 'Code::TidyAll::Plugin::UniqueLines'; requires 'Pod::Coverage::TrustPod'; } From cb13da7dd2041c35b666e209d57a88a3ab4e163a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Branislav=20Zahradn=C3=ADk?= Date: Thu, 8 May 2025 14:33:54 +0200 Subject: [PATCH 19/24] Use `requires_by_perl` - Code::TidyAll::Plugin::UniqueLines --- cpanfile | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/cpanfile b/cpanfile index f410101..2064738 100644 --- a/cpanfile +++ b/cpanfile @@ -76,6 +76,10 @@ requires_by_perl 'Code::TidyAll::Plugin::Test::Vars', prior 5.012 => skip, ; +requires_by_perl 'Code::TidyAll::Plugin::UniqueLines', + prior 5.014 => skip, + ; + requires_by_perl 'Data::OptList', prior 5.012 => '==0.113', otherwise skip @@ -198,7 +202,6 @@ requires 'Test::Version'; requires 'Test::Warnings'; if ( "$]" >= 5.012 ) { - requires 'Code::TidyAll::Plugin::UniqueLines'; requires 'Pod::Coverage::TrustPod'; } From 33ab00409a51d8660020e3c7f4669d9c680d9e94 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Branislav=20Zahradn=C3=ADk?= Date: Thu, 8 May 2025 14:35:18 +0200 Subject: [PATCH 20/24] Use `requires_by_perl` - Pod::Coverage::TrustPod --- cpanfile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/cpanfile b/cpanfile index 2064738..03670e6 100644 --- a/cpanfile +++ b/cpanfile @@ -128,6 +128,10 @@ requires_by_perl 'Plack::Test', prior 5.012 => skip ; +requires_by_perl 'Pod::Coverage::TrustPod', + prior 5.014 => skip, + ; + requires_by_perl 'Pod::Man', prior 5.010 => '==4.14', prior 5.012 => '==5.01', @@ -201,10 +205,6 @@ requires 'Test::Synopsis'; requires 'Test::Version'; requires 'Test::Warnings'; -if ( "$]" >= 5.012 ) { - requires 'Pod::Coverage::TrustPod'; -} - if ( "$]" < 5.014 ) { requires 'IO::Socket::IP', '==0.41'; } From c2e83b9bb7bb9cfb45e03ce1f09d5fd88f6b2b8c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Branislav=20Zahradn=C3=ADk?= Date: Thu, 8 May 2025 14:36:36 +0200 Subject: [PATCH 21/24] Use `requires_by_perl` - IO::Socket::IP --- cpanfile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/cpanfile b/cpanfile index 03670e6..ec63173 100644 --- a/cpanfile +++ b/cpanfile @@ -110,6 +110,10 @@ requires_by_perl 'Dist::Zilla::PluginBundle::RJBS', otherwise '>5.028' # 5.028 requires v5.36 whereas following versions only v5.34, so omit it ; +requires_by_perl 'IO::Socket::IP', + prior 5.014 => '==0.41', + ; + requires_by_perl 'Minilla', prior 5.010 => skip, ; @@ -205,10 +209,6 @@ requires 'Test::Synopsis'; requires 'Test::Version'; requires 'Test::Warnings'; -if ( "$]" < 5.014 ) { - requires 'IO::Socket::IP', '==0.41'; -} - if ( "$]" >= 5.020 ) { requires 'Dist::Zilla::PluginBundle::Author::ETHER'; requires 'Dist::Zilla::PluginBundle::Author::OALDERS'; From 1ebd27c830b31f00599ab8d5d294462edbbbcb6c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Branislav=20Zahradn=C3=ADk?= Date: Thu, 8 May 2025 14:37:39 +0200 Subject: [PATCH 22/24] Use `requires_by_perl` - Dist::Zilla::PluginBundle::* --- cpanfile | 25 ++++++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) diff --git a/cpanfile b/cpanfile index ec63173..24f42dd 100644 --- a/cpanfile +++ b/cpanfile @@ -103,6 +103,22 @@ requires_by_perl 'Devel::Cover::Report::Coveralls', prior 5.010 => skip, ; +requires_by_perl 'Dist::Zilla::PluginBundle::Author::ETHER', + prior 5.020 => skip, + ; + +requires_by_perl 'Dist::Zilla::PluginBundle::Author::OALDERS', + prior 5.020 => skip, + ; + +requires_by_perl 'Dist::Zilla::PluginBundle::DROLSKY', + prior 5.020 => skip, + ; + +requires_by_perl 'Dist::Zilla::PluginBundle::Milla', + prior 5.020 => skip, + ; + requires_by_perl 'Dist::Zilla::PluginBundle::RJBS', prior 5.020 => skip, prior 5.026 => '==5.023', @@ -110,6 +126,10 @@ requires_by_perl 'Dist::Zilla::PluginBundle::RJBS', otherwise '>5.028' # 5.028 requires v5.36 whereas following versions only v5.34, so omit it ; +requires_by_perl 'Dist::Zilla::PluginBundle::Starter::Git', + prior 5.020 => skip, + ; + requires_by_perl 'IO::Socket::IP', prior 5.014 => '==0.41', ; @@ -210,12 +230,7 @@ requires 'Test::Version'; requires 'Test::Warnings'; if ( "$]" >= 5.020 ) { - requires 'Dist::Zilla::PluginBundle::Author::ETHER'; - requires 'Dist::Zilla::PluginBundle::Author::OALDERS'; - requires 'Dist::Zilla::PluginBundle::DROLSKY'; - requires 'Dist::Zilla::PluginBundle::Milla'; - requires 'Dist::Zilla::PluginBundle::Starter::Git'; requires 'Dist::Zilla::Plugin::CheckChangeLog'; requires 'Dist::Zilla::Plugin::CopyFilesFromRelease'; requires 'Dist::Zilla::Plugin::Deprecated'; From ada0a4401e1e71ad03e064807796606fbf712cc9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Branislav=20Zahradn=C3=ADk?= Date: Thu, 8 May 2025 14:43:15 +0200 Subject: [PATCH 23/24] Use `requires_by_perl` - Dist::Zilla::Plugin::* --- cpanfile | 50 ++++++++++++++++++++++++++++++++++++-------------- 1 file changed, 36 insertions(+), 14 deletions(-) diff --git a/cpanfile b/cpanfile index 24f42dd..323a9e1 100644 --- a/cpanfile +++ b/cpanfile @@ -103,6 +103,42 @@ requires_by_perl 'Devel::Cover::Report::Coveralls', prior 5.010 => skip, ; +requires_by_perl 'Dist::Zilla::Plugin::CheckChangeLog', + prior 5.020 => skip, + ; + +requires_by_perl 'Dist::Zilla::Plugin::CopyFilesFromRelease', + prior 5.020 => skip, + ; + +requires_by_perl 'Dist::Zilla::Plugin::Deprecated', + prior 5.020 => skip, + ; + +requires_by_perl 'Dist::Zilla::Plugin::Git::Contributors', + prior 5.020 => skip, + ; + +requires_by_perl 'Dist::Zilla::Plugin::GitHubREADME::Badge', + prior 5.020 => skip, + ; + +requires_by_perl 'Dist::Zilla::Plugin::OurPkgVersion', + prior 5.020 => skip, + ; + +requires_by_perl 'Dist::Zilla::Plugin::Regenerate::AfterReleasers', + prior 5.020 => skip, + ; + +requires_by_perl 'Dist::Zilla::Plugin::StaticInstall', + prior 5.020 => skip, + ; + +requires_by_perl 'Dist::Zilla::Plugin::Test::ReportPrereqs', + prior 5.020 => skip, + ; + requires_by_perl 'Dist::Zilla::PluginBundle::Author::ETHER', prior 5.020 => skip, ; @@ -229,17 +265,3 @@ requires 'Test::Synopsis'; requires 'Test::Version'; requires 'Test::Warnings'; -if ( "$]" >= 5.020 ) { - - requires 'Dist::Zilla::Plugin::CheckChangeLog'; - requires 'Dist::Zilla::Plugin::CopyFilesFromRelease'; - requires 'Dist::Zilla::Plugin::Deprecated'; - requires 'Dist::Zilla::Plugin::Git::Contributors'; - requires 'Dist::Zilla::Plugin::GitHubREADME::Badge'; - requires 'Dist::Zilla::Plugin::OurPkgVersion'; - requires 'Dist::Zilla::Plugin::Regenerate::AfterReleasers'; - requires 'Dist::Zilla::Plugin::StaticInstall'; - requires 'Dist::Zilla::Plugin::Test::ReportPrereqs'; - - # ... -} From 30cbbbd4fd43d2d954f90a8c3ff006ef11660e09 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Branislav=20Zahradn=C3=ADk?= Date: Thu, 8 May 2025 14:53:38 +0200 Subject: [PATCH 24/24] Use `requires_by_perl` - prepare skeletons for other `requires` and sort required modules aplhabetically (though for most pleasant developer experience one may need to use folding) --- cpanfile | 124 +++++++++++++++++++++++++++++++++++++++++-------------- 1 file changed, 93 insertions(+), 31 deletions(-) diff --git a/cpanfile b/cpanfile index 323a9e1..3b7f7e8 100644 --- a/cpanfile +++ b/cpanfile @@ -68,6 +68,9 @@ sub prior { @_ } sub otherwise { @_ } sub skip { undef } +requires_by_perl 'App::cpanoutdated', + ; + requires_by_perl 'Code::TidyAll::Plugin::SortLines::Naturally', prior 5.012 => skip ; @@ -166,19 +169,34 @@ requires_by_perl 'Dist::Zilla::PluginBundle::Starter::Git', prior 5.020 => skip, ; +requires_by_perl 'ExtUtils::MakeMaker', + ; + +requires_by_perl 'File::Temp', + ; + requires_by_perl 'IO::Socket::IP', prior 5.014 => '==0.41', ; +requires_by_perl 'List::MoreUtils', + ; + requires_by_perl 'Minilla', prior 5.010 => skip, ; +requires_by_perl 'Module::Build', + ; + requires_by_perl 'Perl::Critic', prior 5.010 => '==1.142', otherwise '>= 1.144', ; +requires_by_perl 'Perl::Tidy', '>= 20220217', + ; + requires_by_perl 'Plack', prior 5.012 => '==1.0050', otherwise skip @@ -201,6 +219,10 @@ requires_by_perl 'Pod::Readme', prior 5.012 => skip, ; +requires_by_perl 'Pod::Spell', '>= 1.25', + ; + + requires_by_perl 'Software::License::Perl_5', prior 5.012 => '==0.104004', ; @@ -210,6 +232,9 @@ requires_by_perl 'Sub::Exporter', otherwise skip ; +requires_by_perl 'Test2::Bundle::Extended', + ; + requires_by_perl 'Test2::Harness', prior 5.010 => skip, prior 5.014 => '==1.000156', @@ -220,48 +245,85 @@ requires_by_perl 'Test2::Harness::Renderer::JUnit', prior 5.014 => '==1.000005', ; +requires_by_perl 'Test2::Plugin::NoWarnings', + ; + +requires_by_perl 'Test2::Suite', + ; + +requires_by_perl 'Test2::Tools::Explain', + ; + +requires_by_perl 'Test::Builder', + ; + +requires_by_perl 'Test::CPAN::Meta', + ; + requires_by_perl 'Test::Deep', prior 5.012 => '==1.130', otherwise skip ; +requires_by_perl 'Test::Differences', + ; + +requires_by_perl 'Test::EOL', + ; + +requires_by_perl 'Test::Fatal', + ; + +requires_by_perl 'Test::MinimumVersion', + ; + requires_by_perl 'Test::MockModule', prior 5.012 => '==0.178', ; +requires_by_perl 'Test::Mojibake', + ; + +requires_by_perl 'Test::More', + ; + +requires_by_perl 'Test::Needs', + ; + +requires_by_perl 'Test::NoTabs', + ; + +requires_by_perl 'Test::Perl::Critic', + ; + +requires_by_perl 'Test::Pod', + ; + +requires_by_perl 'Test::Pod::Coverage', + ; + +requires_by_perl 'Test::Portability::Files', + ; + +requires_by_perl 'Test::RequiresInternet', + ; + +requires_by_perl 'Test::Simple', + ; + +requires_by_perl 'Test::Spelling', + ; + +requires_by_perl 'Test::Synopsis', + ; + requires_by_perl 'Test::Vars', prior 5.010 => skip, ; -requires 'App::cpanoutdated'; -requires 'ExtUtils::MakeMaker'; -requires 'File::Temp'; -requires 'List::MoreUtils'; -requires 'Module::Build'; -requires 'Perl::Tidy', '>= 20220217'; -requires 'Pod::Spell', '>= 1.25'; -requires 'Test2::Bundle::Extended'; -requires 'Test2::Plugin::NoWarnings'; -requires 'Test2::Suite'; -requires 'Test2::Tools::Explain'; -requires 'Test::Builder'; -requires 'Test::CPAN::Meta'; -requires 'Test::Differences'; -requires 'Test::EOL'; -requires 'Test::Fatal'; -requires 'Test::MinimumVersion'; -requires 'Test::Mojibake'; -requires 'Test::More'; -requires 'Test::Needs'; -requires 'Test::NoTabs'; -requires 'Test::Perl::Critic'; -requires 'Test::Pod'; -requires 'Test::Pod::Coverage'; -requires 'Test::Portability::Files'; -requires 'Test::RequiresInternet'; -requires 'Test::Simple'; -requires 'Test::Spelling'; -requires 'Test::Synopsis'; -requires 'Test::Version'; -requires 'Test::Warnings'; +requires_by_perl 'Test::Version', + ; + +requires_by_perl 'Test::Warnings', + ;