Using CPAN's Toolchain to Manage Your Code

Using CPAN's Toolchain to Manage Your Code

By Tom Hukins from
Date: Tuesday, 4 August 2009 10:25
Duration: 20 minutes
Target audience: Everyday Perl
Tags: cpan packaging releasemanagement

You can find more information on the speaker's site:

CPAN has a reliable, powerful set of tools that it uses to package software, produce documentation, run tests and install distributions along with their dependencies.

These tools do such a good job that it's a shame only to use them with CPAN modules.

This talk will show you how to take existing Perl scripts and rearrange them into modules that install their dependencies having passed test scripts and ship with good looking, hyperlinked documentation.

Each idea introduced in this talk takes little effort and improves your code independently of the other ideas: you can choose the parts you like and ignore the rest. Combined, these ideas make your code considerably more manageable.

Furthermore, you can treat your work as if it were on CPAN without releasing it to the wider world. You can make your new modules depend on other private modules as well modules on CPAN and have all dependencies automatically installed.

Attended by: Nicholas Clark, Thomas Klausner (‎domm‎), Michael Kröll (‎pepl‎), Stefano Rodighiero (‎larsen‎), Maroš Kollár (‎maros‎), Bernhard Schmalhofer (‎bernhard‎), Léon Brocard (‎acme‎), Barbie, Salve J. Nilsen (‎sjn‎), Giuseppe Maxia (‎gmax‎), Dave Cross (‎davorg‎), Chia-liang Kao (‎clkao‎), Lars Thegler (‎tagg‎), Gabor Szabo (‎szabgab‎), H.Merijn Brand (‎Tux‎), Tom Hukins, Smylers, Salvador Fandiño (‎salva‎), Matusalem Marques (‎mmar‎), Roberto Henríquez, Marco Neves (‎themage‎), Arjen Laarhoven, Joaquín Ferrero (‎explorer‎), Bálint Szilakszi (‎szbalint‎), Jesse Vincent, Søren Lund (‎slu‎), André Cruz (‎edevil‎), Markus Pinkert (‎Bedivere‎), Henrik Tougaard (‎htoug‎), Tobias Henoeckl (‎hoeni‎), Roman Baumer (‎rba‎), Damon Davison (‎allolex‎), Sue Spence (‎virtualsue‎), Andreas Hetey, Piers Cawley (‎pdcawley‎), Olivier Mengué (‎dolmen‎), Chisel Wright, Luis Motta Campos (‎LMC‎), Jörg Plate (‎Patterner‎), Renee Bäcker (‎reneeb‎), Andy Armstrong (‎AndyA‎), Aristotle, Tobias Kremer (‎soulchild‎), Markus Förster, Ash Berlin (‎Ash‎), Ricardo Marques (‎ricmarques‎), Anders Nielsen (‎anielsen‎), Lars Holgaard, Drew Taylor (‎drewbie‎), Jan Henning Thorsen (‎batman‎), Thomas Heine, Joel Bernstein (‎joel‎), Thomas Netousek, Steffen Schwigon (‎renormalist‎), David Faux, Karl Moens (‎CountZero‎), Ulrich Wisser (‎wisser‎), David Leadbeater (‎dg‎), Lars Dɪᴇᴄᴋᴏᴡ 迪拉斯 (‎daxim‎), Rosellyne Worrall (‎rozallin‎), Mark Morgan, Maciej Czekay (‎Bruno‎), Michael Zedeler (‎mzedeler‎), Hugo Costa, Stan Sawa, Cosimo Streppone (‎cosimo‎), Christian Westgaard (‎ComLock‎), Rui Patinha (‎rfp‎), Luís Mendes (‎big‎), Franck Cuny, Pedro Frazão, Jordi Delgado (‎jdelgado‎), Alex Muntada (‎alexm‎), Petru Ratiu (‎rpetre‎), Enrique J Hernandez Blasco (‎sixstone‎), Oliver Thieke (‎o-thieke‎), Frederico Recsky (‎Frederico‎), Michael Langner, Marcos Garcia (‎gulden‎), Frederico Martins, Alexandru Nedelcu, Thierry Douez (‎tdz‎), João Carreira, Jose L. Hernandez, Filipe Moreira, Jorge Bras, Pedro Rodrigues (‎careca‎), Sérgio Bernardino (‎smpb‎),