hippo has asked for the wisdom of the Perl Monks concerning the following question:

I have recently noticed that there is a considerable number of dists which ship with MANIFEST.SKIP and so started to wonder why that might be.

The only use I can see for MANIFEST.SKIP is to rebuild MANIFEST and the only reason for that is to rebuild the dist for further distribution. That implies the dist having been altered in some way, otherwise the rebuild would be unnecessary.

If the dist has an open repository then I would expect anyone altering it to use that as their source (and MANIFEST.SKIP should happily live there). Contrarily if there's no public source then all a contributor has to work with is the shipped code. But in this case there are no other non-standard files to be avoided packaging, so again MANIFEST.SKIP is unnecessary.

Either I am missing something or there's no need to ship MANIFEST.SKIP at all. Probably it's the former. Do let me know.

Replies are listed 'Best First'.
Re: Shipping MANIFEST.SKIP
by choroba (Cardinal) on Jan 10, 2020 at 13:30 UTC
    MANIFEST.SKIP in my Syntax::Construct repository contains MANIFEST.SKIP on its first line from the beginning. I think it's the correct way to do it.

    Update: It's in fact wrong. The line should be

    MANIFEST\.SKIP

    On the other hand, most of my other distributions ship with the file if it exists. I guess it's just laziness - I'm usually tired enough with fixing bugs in the actual code, so I don't spend much time on thinking about what goes where when no one complains and everything works.

    Update 2: Note that Test::CheckManifest is broken at the moment.

    map{substr$_->[0],$_->[1]||0,1}[\*||{},3],[[]],[ref qr-1,-,-1],[{}],[sub{}^*ARGV,3]
Re: Shipping MANIFEST.SKIP (as always authors choice)
by Anonymous Monk on Jan 10, 2020 at 20:01 UTC

    MANIFEST.SKIP is unnecessary

    there is nothing to solve here, shipping it as always is authors choice

      Sure, shipping anything is the author's (or packager's) choice. The question was more: is there any situation in which shipping it is beneficial?

        Of course?

        ...

        # ^MANIFEST\.SKIP - needed for module::signature # Avoid archives of this distribution \bAlien-zlib-Static-[\d\.\_]+ \b_share\/.* \b\..*\.swp$ \.releaserc \.lwpcookies \.travis\.yml \.appveyor\.yml