Module...::Skip(3pm)

πŸ’– Module...::Skip(3pm) β€” the manual, but make it cute πŸ’–

okay bestie, you found the manual page for Module...::Skip(3pm) (perl v5.40.1, dated 2026-04-05, if you were wondering β€” sign-off details are at the bottom, no skipping ahead 🫢). It's the User Contributed Perl Documentation, and it's all about a lil module that handles your MANIFEST.SKIP situation for you. Let's get into it. ✨


✨ NAME ✨

Module::Manifest::Skip β€” MANIFEST.SKIP Manangement for Modules πŸŽ€

(yes, "Manangement" β€” that's how it's spelled in the original, and we respect the typo, it's iconic πŸ’…)


πŸ¦‹ SYNOPSIS πŸ¦‹

Straight from the command line, like a boss:

> perl -MModule::Manifest::Skip=create

From Perl, with a lil IO::All assist:

use Module::Manifest::Skip;
use IO::All;

my $mms = Module::Manifest::Skip->new;
# optional add and removes:
$mms->add('^foo-bar$');
$mms->remove('^foo$');
$mms->remove(qr/\Q\bfoo\b/);
io('MANIFEST.SKIP')->print($mms->text);

look at that. add, remove, print, done. main character energy fr fr πŸ‘‘


πŸ’… DESCRIPTION πŸ’…

NOTE: This module is mostly intended for module packaging frameworks to share a common, up-to-date MANIFEST.SKIP base. For example, Module::Install::ManifestSkip uses this module to get the actual SKIP content. However this module may be useful for any module author.

so yeah, the big use case is packaging frameworks pooling one shared, up-to-date MANIFEST.SKIP base β€” Module::Install::ManifestSkip literally uses this module to grab the real SKIP content. But ngl, any module author can vibe with it too. πŸ’œ

okay so here's the lore: CPAN module authors use a MANIFEST.SKIP file to exclude certain well known files from getting put into a generated MANIFEST file, which would cause them to go into the final distribution package. πŸš«πŸ“¦

The packaging tools try to automatically skip things for you, but if you add one of your own entries, you have to add all the common ones yourself. 😭 This module attempts to make all of this boring process as simple and reliable as possible. and honestly?? it ate. πŸ”₯

Module::Manifest::Skip can create or update a MANIFEST.SKIP file for you. You can add your own entries, and it will leave them alone. You can even tell it to not skip certain entries that it normally skips, although this is rarely needed. 🫢


🌸 USAGE 🌸

Usually this module is called by other packaging modules β€” it's lowkey a behind-the-scenes queen. πŸ‘‘

If you want this to be used by Module::Install, then you would put this:

manifest_skip 'clean';

in your Makefile.PL, and everything would be taken care of for you. literally one line and you're done, obsessed. 😌

If you want to simply create a MANIFEST.SKIP file from the command line, this handy syntax exists:

> perl -MModule::Manifest::Skip=create

no Makefile.PL required, just vibes. ⭐


πŸŽ€ BEHAVIOR πŸŽ€

This module ships with a share file called share/MANIFEST.SKIP. πŸ“„ This is the basis for all new MANIFEST.SKIP files.

This module will look for an already existing MANIFEST.SKIP file and take all the text before the first blank line, and prepend it to the start of a new SKIP file. This allows you to put your own personal section at the top, that will not be overwritten later. πŸ›‘οΈ your little personal corner stays untouched, periodt.

It will then look for lines beginning with a dash followed by a space. Like this:

  - \bfoo\b
  - ^bar/
  - ^baz$

It will comment out each of these lines and any other lines that match the text (after the - ). This allows you to override the default SKIPs. πŸ”„ so if something in the base file is giving unhinged energy for your project, just - it and it's gone.


πŸ‘‘ AUTHOR πŸ‘‘

Ingy dΓΆt Net <ingy@cpan.org> πŸ’Œ


Copyright 2011-2014. Ingy dΓΆt Net.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

See <http://www.perl.com/perl/misc/Artistic.html>


okay that's the whole page, bestie, you read it all, I'm so proud of you πŸ₯Ήβœ¨ go forth and skip those files responsibly πŸ’…

perl v5.40.1 Β· 2026-04-05 Β· Module...::Skip(3pm) β€” mwah, that's the version, the date, and the manual name, all wrapped up with a bow πŸŽ€πŸ’–

πŸ“¦ where this page comes from