Finding CPAN adoption candidates

  • 261 views
Uploaded on

A talk I gave at the London Perl Workshop 2013, about automatically identifying CPAN distributions that might be candidates for adoption.

A talk I gave at the London Perl Workshop 2013, about automatically identifying CPAN distributions that might be candidates for adoption.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
261
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
1
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • Ok, needs more thought …

Transcript

  • 1. Finding CPAN Adoption Candidates Neil Bowers NEILB 1
  • 2. A long time ago … 2
  • 3. 3
  • 4. My first thought … 4
  • 5. 5
  • 6. A lot of stale distributions on CPAN • But some are 'finished', not 'stale' 6
  • 7. Goal • How can we identify the 'best' candidates? • Distributions that might be open to adoption … • That are of value to CPAN / Perl programmers 7
  • 8. Bugs reported since release • Bugs being reported a long time after last release? • Suggests that the module is (still) being used 8
  • 9. Bug score 9
  • 10. Are other dists using this dist? 10
  • 11. Total usage graph 11
  • 12. CPAN Testers • All dists have three parts to their CPAN Testers score: • # passes • # fails • # unknowns • Skip dists with fewer than 50 reports • +2 if fails + unknowns >= 50% • +1 if fails + unknowns >= 5% 12
  • 13. Adoptability score • Gating criteria – score = 0 if • bug_score = 0, NEEDHELP, core with upstream=blead • Otherwise score according to a rule set: bug score 10 or more bugs reported since last release dependent distributions CPAN Testers 0 to 3 1 1 + log10( $dep_dists ) 1 or 2 core module (CPAN upstream) 2 ADOPTME or HANDOFF 1 Single module in dist 1 Single user has PAUSE permissions 1 Author hasn't released anything in 3+ years 1 13
  • 14. neilb.org/adoption 14
  • 15. Adopting a module • Fork it on github (see gitpan) • Fix some/all outstanding bugs • Follow up in bug-tracker, & offer to do a release • Email author via all addresses you can find online • After 2 weeks try again, and try other avenues • Ask on IRC, email module-authors, perlmonks • After 1 month, email modules@perl.org, cc author • They'll give you co-maint permissions • You might want to ask for ownership after 6 months 15
  • 16. What's next? • Split score into value & adoptability • Ability to generate other lists, such as "dists that need help" • New factors • +1 if CPAN Testers says it needs help • +1 if ++'d on MetaCPAN • +1 if outstanding pull request(s) on github • Get the adoption score into MetaCPAN • Add this into MetaCPAN, or • Generate JSON for MetaCPAN to import • or? • Exclude build dependencies from the dep graph 16