in reply to Re: Getting man-page info on metacpan and search.cpan.org
in thread Getting man-page info on metacpan and search.cpan.org

It looks like using .pod in a bin directory is a lose. At least with Module::Build. So for now, I think the best route is to link to a wiki or put command-line pods its own directory and again link. Sigh.

What does Module::Build have to do with it?

You can't have three things with the same name and have pod tools know which one you want as the real one :)

  • Comment on Re^2: Getting man-page info on metacpan and search.cpan.org

Replies are listed 'Best First'.
Re^3: Getting man-page info on metacpan and search.cpan.org
by rockyb (Scribe) on May 31, 2016 at 10:05 UTC

    First, there aren't three things, but two: bioseq and bioseq.pod.

    Second, that metacpan lists this three times in two lines with one name duplicated in https://metacpan.org/source/ROCKY/Bio-BPWrapper-1.02_02/bin is its doing. And the second entry is backwards; the name listed is actually the documentation and the documentation associated with that name is really the command-line program. And that is a bug.

    As for pod tools "knowing", if that's the thing that is deciding this, well it somehow knows that for a perl module. If there is a file that has extension .pod with the same name as he Perl Module, then that's not a separate program but documentation for the corresponding perl module.

    This is what LanX's answer in Using .pod as a standalone file rather than in .pm and it showing up in MetaCPAN is about. I am sorry I didn't link that before.

    Finally, what Module::Build may have to do with this is possibly how this stuff gets tagged or set up in a tarball: the pod in the bin directory is installed same as without the pod. It is possible and likely this is that's not dictated by Module::Build, but the tools and rules for processing a tarball: what and where to install. In this case it happens to have been created by Module::Build so that is one interface for controlling the building of the tarball. Sure, there are other things too that influence this as well.

      Here is idea, instead of bin/bioseq.pod, save it as lib/bioseq.pod

        Good suggestion. I tried that but no dice. The lib file looks nice but it is not associated with the bin.

        At this point, I think the best alternative is to automate pulling in the wiki POD and stuff it into the command-line script after an __END__ just before doing a CPAN release.

      but two: bioseq and bioseq.pod

      Maybe if the script were named bioseq.pl it would work.

        Maybe. But I'd still have the problem that the pod would be placed in bin which I don't want.