MYMETA-CPANFILE(1)
π¦ MYMETA-CPANFILE(1) π¦
okay so bestie, welcome to mymeta-cpanfile β it's a little Perl script that lives in your terminal and it's literally so useful. it's part of the User Contributed Perl Documentation crew, and honestly? iconic.
β¨ NAME β¨
mymeta-cpanfile β dumps a cpanfile out of your (MY)META files π
πΈ SYNOPSIS πΈ
perl Makefile.PL # or Build.PL
mymeta-cpanfile
# Skip configures phase and suggests type
mymeta-cpanfile --no-configure --no-suggests
# Include empty blcok for phases without prereqs
mymeta-cpanfile --include-empty
like, that's the whole vibe. run it, get a cpanfile. slay. π
π DESCRIPTION π
so here's the deal: this script reads the prereqs metadata out of the MYMETA files sitting in your current directory, and then prints out a cpanfile that represents all those prereqs. so clean, so organized.
why would you even want that? because it's lowkey perfect when you're trying to migrate to using cpanfile from your existing Makefile.PL or Build.PL that already has dependency specification in it. no cap β it just lifts the info out and hands it to you in the nicer format. π«Ά
also fun fact: this script is distributed with Module::CPANfile since version 0.9021. so it's been around, it's got main character energy, it knows what it's doing. β
π OPTIONS π
--configure,--build,--test,--runtime,--developβ these pick which phase to include or exclude. the default is to include all phases, but you can drop some by sticking the--no-prefix on the front, like--no-configure. easy. π--requires,--recommends,--suggests,--conflictsβ these pick which type to include or exclude. again, default is to include all types, and again you can exclude the ones you don't want with a--no-prefix, like--no-conflicts. same energy, different axis. β¨--include-emptyβ by default, phases that have no prereqs at all just don't get dumped (nothing to say, so it says nothing). but if you give this option, thecpanfilewill get an empty block, like this:
on test => sub {
};
defaults to false. π
ngl,--include-emptyis the one people forget exists, and then they're confused why theirtestphase vanished. it didn't vanish, bestie β it was empty and got quietly skipped. π§
π AUTHOR π
Tatsuhiko Miyagawa
π SEE ALSO π
Module::CPANfile Β· cpanfile Β· App::mymeta_requires
and that's the whole page, fr fr β brought to you by perl v5.42.0, dated 2018-04-27, from the MYMETA-CPANFILE(1) manual. go forth and migrate your prereqs, queen. ππ₯
π¦ where this page comes from
- opensuse-leap 16.0: perl-Module-CPANfile 1.1004-bp160.1.11 Β· Artistic-1.0 OR GPL-1.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms