Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot
 
PerlMonks  

Re^7: What do I use to release a module to CPAN for the first time?

by tobyink (Canon)
on Oct 12, 2020 at 08:43 UTC ( [id://11122732]=note: print w/replies, xml ) Need Help??


in reply to Re^6: What do I use to release a module to CPAN for the first time?
in thread What do I use to release a module to CPAN for the first time?

But to write a patch, test it, and submit it back to the maintainer, why would you need Makefile.PL?

(I'm assuming a pure Perl distribution here; no XS.)

  • Comment on Re^7: What do I use to release a module to CPAN for the first time?

Replies are listed 'Best First'.
Re^8: What do I use to release a module to CPAN for the first time?
by Tux (Canon) on Oct 12, 2020 at 09:02 UTC

    Even if I know most about testing and I know about prove and yath, my usual start is always the same:

    1. Get the dist
      git clone / cpan + get / get the tgz
    2. Prepare
      $ cd Module-dir
      $ perl Makefile.PL

      If it complains about no Makefile.PL, curse loudly, check if there is a Build.PL

      $ perl Build.PL

      If there is no Build.PL either, curse even louder and ask myself the question if applying my patch is worth the trouble. If not, just give up.

    3. Test
      $ make test

      If it complains about missing Makefile, curse again and try Build.PL

      $ perl Build test

      If I really cared enough, and installed enough of dzil

      $ dzil test

      If that still complains about yet another missing plugin, give up and remove the dist dir: My time is valuable too.

    4. Hack
      If this module now passes all tests, check if my change still applies. (It might have been fixed in the git repo already). Otherwise, make the change, make a test case, update ChangeLog (or any other legal name) and submit a PR.

    Even as a seasoned perl programmer with enough knowledge to get the ball rolling, I see plenty of decision points where I would decide to leave the annoyance/bug to what it is and maybe just add an issue, which in most cases is much easier than going through the installation of dependencies I won't need for anything but this single module.


    Enjoy, Have FUN! H.Merijn
      Even if I know most about testing and I know about prove and yath, my usual start is always the same:

      Which begs the question: if you know prove and "prove -l" works (it is most of the time), why go the hard way?

Re^8: What do I use to release a module to CPAN for the first time?
by Corion (Patriarch) on Oct 12, 2020 at 08:44 UTC

    At least for installing the prerequisites, and if the author uses Pod::Weaver, even a docpatch can't be applied by the module maintainer well.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://11122732]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others drinking their drinks and smoking their pipes about the Monastery: (5)
As of 2024-04-24 04:18 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found