Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid
 
PerlMonks  

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 ( #11122736=note: print w/replies, xml ) Need Help??


in reply to Re^7: 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?

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

Replies are listed 'Best First'.
Re^9: What do I use to release a module to CPAN for the first time?
by perlancar (Friar) on Oct 12, 2020 at 14:05 UTC
    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?

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others taking refuge in the Monastery: (8)
As of 2021-04-12 19:27 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found

    Notices?