CPAN Module Maintenance

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    1 Favorite & 1 Group

    CPAN Module Maintenance - Presentation Transcript

    1. Maintaining CPAN Modules
    2. Dave Cross [email_address]
    3. CPAN is Perl's Killer App
    4. 16,645 modules 7,695 authors 6,129 MB 244 mirrors
    5. I have 24 distributions on CPAN
    6. Array::Compare AudioFile::Info AudioFile::Info::MP3::ID3Lib Audiofile::Info::MP3::Info AudioFile::Info::MP3::Tag AudioFile::Info::Ogg::Vorbis::Header AudioFile::Info::Ogg::Vorbis::Header::PurePerl Calendar::Simple Guardian::OpenPlatform::API Net::Backpack Number::Fraction Parse::RPM::Spec Perlanet Symbol::Approx::Sub Template::Plugin::AudioFile::Info Template::Plugin::RPM2 Template::Plugin::XML::Feed Tie::Hash::Cannabinol Tie::Hash::FixedKeys Tie::Hash::Regex WWW::Shorten WWW::Shorten::Qurl WWW::Shorten::Qwer WWW::Shorten::SnipURL
    7. Not actually a huge number
    8. MIYAGAWA has 149 ADAMK has 201
    9. But 24 is enough to make maintenance a chore
    10. Some things you don't need to worry about
    11. Distribution
    12. Installation
    13. Testing
    14. Cross-platform Testing
    15. Some things you do need to worry about
    16. Bug tracking
    17. Source code control
    18. Maintenance and enhancements
    19. So what do you do?
    20. Get help
    21. Use other people's tools
    22. Bug tracking
    23. RT is awesome
    24. Every CPAN module gets an RT queue
    25. rt.cpan.org
    26. Mention that in your module documentation
    27. You'll still get email
    28. RT accepts reports by mail
    29. TIP: Redirect, don't forward
    30. TIP: Send bugs to yourself
    31. Use RT to remember everything you need to do to your modules
    32. Source code control
    33. I used to host my own Subversion repository
    34. Far too much like hard work
    35. Git is Good
    36. Github is Great
    37. Free source code repository for Open Source projects
    38. Distributed source code control
    39. Easy for people to fork and patch your code
    40. Patches are better than bug reports
    41. Patches with associated tests are even better
    42. Github also gives you a wiki
    43. Github also gives you a bug tracker
    44. I ♥ Github
    45. Maintenance and Enhancement
    46. Let's trace a typical change
    47. Change request comes in
    48. RT ticket or CPAN test failure or I have an idea
    49. Check out latest revision from Github
    50. Write tests
    51. Yes Write tests before writing code
    52. Tests tell you when you are finished
    53. Write code until tests pass
    54. Write tests until ALL tests pass
    55. Don't care which editor you use
    56. But use a decent programmer's editor
    57. Take time to configure it to your tastes
    58. Have tests to test quality of distribution
    59. Test::Pod Test::Pod::Coverage Devel::Cover
    60. Tools to monitor quality of code
    61. Perl::Tidy Perl::Critic
    62. Commit changes to Github
    63. Tag for release e.g. RELEASE_1.07
    64. Build distribution upload to CPAN (cpan-upload)
    65. PAUSE takes care of the rest
    66. I also release to my web site code.mag-sol.com
    67. Code available on Github github.com/davorg
    68. Brief aside on building distributions
    69. ExtUtils::MakeMaker Module::Build Module::Install
    70. Helpful stuff on CPAN that I should really investigate
    71. Module::Starter
    72. Module::Release
    73. Maintaining CPAN module need not be hard work
    74. This is supposed to be fun
    75. Plenty of help out there
    76. Plenty of tools to use
    77. Please join in
    78.  

    + Dave CrossDave Cross, 1 month ago

    custom

    405 views, 1 favs, 0 embeds more stats

    The tools that I use to maintain my CPAN modules.

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 405
      • 405 on SlideShare
      • 0 from embeds
    • Comments 0
    • Favorites 1
    • Downloads 3
    Most viewed embeds

    more

    All embeds

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories

    Groups / Events