Enviar búsqueda
Cargar
CPAN Module Maintenance
•
Descargar como ODP, PDF
•
2 recomendaciones
•
1,712 vistas
Dave Cross
Seguir
The tools that I use to maintain my CPAN modules.
Leer menos
Leer más
Tecnología
Arte y fotografía
Denunciar
Compartir
Denunciar
Compartir
1 de 78
Descargar ahora
Recomendados
Submitting, maintaining and growing a plugin on wp.org
Submitting, maintaining and growing a plugin on wp.org
Brian Hogg
Composer Power User Tips
Composer Power User Tips
Tom Corrigan
Composer Lightning Talk
Composer Lightning Talk
Eric Johnson
Testing Toolbox
Testing Toolbox
Michael Peters
Matt Gauger - Lamp vs. the world - MKE PHP Users Group - December 14, 2010
Matt Gauger - Lamp vs. the world - MKE PHP Users Group - December 14, 2010
Matt Gauger
Plenv and perl build, and search.cpan.org
Plenv and perl build, and search.cpan.org
Tokuhiro Matsuno
What's new and great in Rails 3 - Matt Gauger - Milwaukee Ruby Users Group De...
What's new and great in Rails 3 - Matt Gauger - Milwaukee Ruby Users Group De...
Matt Gauger
Postman Webinar: Postman 101
Postman Webinar: Postman 101
Nikita Sharma
Recomendados
Submitting, maintaining and growing a plugin on wp.org
Submitting, maintaining and growing a plugin on wp.org
Brian Hogg
Composer Power User Tips
Composer Power User Tips
Tom Corrigan
Composer Lightning Talk
Composer Lightning Talk
Eric Johnson
Testing Toolbox
Testing Toolbox
Michael Peters
Matt Gauger - Lamp vs. the world - MKE PHP Users Group - December 14, 2010
Matt Gauger - Lamp vs. the world - MKE PHP Users Group - December 14, 2010
Matt Gauger
Plenv and perl build, and search.cpan.org
Plenv and perl build, and search.cpan.org
Tokuhiro Matsuno
What's new and great in Rails 3 - Matt Gauger - Milwaukee Ruby Users Group De...
What's new and great in Rails 3 - Matt Gauger - Milwaukee Ruby Users Group De...
Matt Gauger
Postman Webinar: Postman 101
Postman Webinar: Postman 101
Nikita Sharma
Console Apps: php artisan forthe:win
Console Apps: php artisan forthe:win
Joe Ferguson
Dependency management in golang
Dependency management in golang
Ramit Surana
Incremental upgrade cookbook
Incremental upgrade cookbook
Mark Juras
Padre user experience
Padre user experience
Charlie Gonzalez
Postman: An Introduction for Testers
Postman: An Introduction for Testers
Postman
Skip Staging! Test Docker, Helm, and Kubernetes Apps like a Pro
Skip Staging! Test Docker, Helm, and Kubernetes Apps like a Pro
Codefresh
10/29 Austin Ansible MeetUp - AnsibleFest Talk & Extending Ansible
10/29 Austin Ansible MeetUp - AnsibleFest Talk & Extending Ansible
tylerturk
Online Compilers
Online Compilers
LGS, GBHS&IC, University Of South-Asia, TARA-Technologies
Python Programming Introduction - II
Python Programming Introduction - II
Arnab Chakraborty
Git 101
Git 101
Dimitris Tsironis
A Quick Start - Version Control with Git
A Quick Start - Version Control with Git
Dmitry Sheiko
PHP 5.4 - Begin your love affair with traits
PHP 5.4 - Begin your love affair with traits
Graham Weldon
Mpeg guide
Mpeg guide
kimsach
Webforum1
Webforum1
naomi
Road to CakePHP 3.0
Road to CakePHP 3.0
markstory
Using Postman to Automate API On-Boarding
Using Postman to Automate API On-Boarding
Postman
SydPHP March 2012 Meetup
SydPHP March 2012 Meetup
Graham Weldon
Courier Live May Product Release Notes
Courier Live May Product Release Notes
Letterdrop
Introduction to Modern Perl
Introduction to Modern Perl
Dave Cross
Intermediate Perl
Intermediate Perl
Dave Cross
Semantic Pipes (London Perl Workshop 2009)
Semantic Pipes (London Perl Workshop 2009)
osfameron
The Professional Programmer
The Professional Programmer
Dave Cross
Más contenido relacionado
La actualidad más candente
Console Apps: php artisan forthe:win
Console Apps: php artisan forthe:win
Joe Ferguson
Dependency management in golang
Dependency management in golang
Ramit Surana
Incremental upgrade cookbook
Incremental upgrade cookbook
Mark Juras
Padre user experience
Padre user experience
Charlie Gonzalez
Postman: An Introduction for Testers
Postman: An Introduction for Testers
Postman
Skip Staging! Test Docker, Helm, and Kubernetes Apps like a Pro
Skip Staging! Test Docker, Helm, and Kubernetes Apps like a Pro
Codefresh
10/29 Austin Ansible MeetUp - AnsibleFest Talk & Extending Ansible
10/29 Austin Ansible MeetUp - AnsibleFest Talk & Extending Ansible
tylerturk
Online Compilers
Online Compilers
LGS, GBHS&IC, University Of South-Asia, TARA-Technologies
Python Programming Introduction - II
Python Programming Introduction - II
Arnab Chakraborty
Git 101
Git 101
Dimitris Tsironis
A Quick Start - Version Control with Git
A Quick Start - Version Control with Git
Dmitry Sheiko
PHP 5.4 - Begin your love affair with traits
PHP 5.4 - Begin your love affair with traits
Graham Weldon
Mpeg guide
Mpeg guide
kimsach
Webforum1
Webforum1
naomi
Road to CakePHP 3.0
Road to CakePHP 3.0
markstory
Using Postman to Automate API On-Boarding
Using Postman to Automate API On-Boarding
Postman
SydPHP March 2012 Meetup
SydPHP March 2012 Meetup
Graham Weldon
Courier Live May Product Release Notes
Courier Live May Product Release Notes
Letterdrop
La actualidad más candente
(18)
Console Apps: php artisan forthe:win
Console Apps: php artisan forthe:win
Dependency management in golang
Dependency management in golang
Incremental upgrade cookbook
Incremental upgrade cookbook
Padre user experience
Padre user experience
Postman: An Introduction for Testers
Postman: An Introduction for Testers
Skip Staging! Test Docker, Helm, and Kubernetes Apps like a Pro
Skip Staging! Test Docker, Helm, and Kubernetes Apps like a Pro
10/29 Austin Ansible MeetUp - AnsibleFest Talk & Extending Ansible
10/29 Austin Ansible MeetUp - AnsibleFest Talk & Extending Ansible
Online Compilers
Online Compilers
Python Programming Introduction - II
Python Programming Introduction - II
Git 101
Git 101
A Quick Start - Version Control with Git
A Quick Start - Version Control with Git
PHP 5.4 - Begin your love affair with traits
PHP 5.4 - Begin your love affair with traits
Mpeg guide
Mpeg guide
Webforum1
Webforum1
Road to CakePHP 3.0
Road to CakePHP 3.0
Using Postman to Automate API On-Boarding
Using Postman to Automate API On-Boarding
SydPHP March 2012 Meetup
SydPHP March 2012 Meetup
Courier Live May Product Release Notes
Courier Live May Product Release Notes
Destacado
Introduction to Modern Perl
Introduction to Modern Perl
Dave Cross
Intermediate Perl
Intermediate Perl
Dave Cross
Semantic Pipes (London Perl Workshop 2009)
Semantic Pipes (London Perl Workshop 2009)
osfameron
The Professional Programmer
The Professional Programmer
Dave Cross
C to perl binding
C to perl binding
Shmuel Fomberg
Introduction to Perl
Introduction to Perl
Dave Cross
Destacado
(6)
Introduction to Modern Perl
Introduction to Modern Perl
Intermediate Perl
Intermediate Perl
Semantic Pipes (London Perl Workshop 2009)
Semantic Pipes (London Perl Workshop 2009)
The Professional Programmer
The Professional Programmer
C to perl binding
C to perl binding
Introduction to Perl
Introduction to Perl
Similar a CPAN Module Maintenance
Things I Learned From Having Users
Things I Learned From Having Users
Dave Cross
Improving code quality using CI
Improving code quality using CI
Martin de Keijzer
Software Quality Assurance Tooling - Wintersession 2024
Software Quality Assurance Tooling - Wintersession 2024
Henry Schreiner
Tooling for the productive front end developer
Tooling for the productive front end developer
Maurice De Beijer [MVP]
CGI Presentation
CGI Presentation
Sopan Shewale
Presentation confoo optimization_sherifzaroubi
Presentation confoo optimization_sherifzaroubi
Valtech Canada
Schema-First API Design
Schema-First API Design
Yos Riady
When to use Serverless? When to use Kubernetes?
When to use Serverless? When to use Kubernetes?
Niklas Heidloff
MPL: modular pipeline library - Dynamic Talks Milwaukee 4/11/2019
MPL: modular pipeline library - Dynamic Talks Milwaukee 4/11/2019
Grid Dynamics
Tooling for the productive front end developer
Tooling for the productive front end developer
Maurice De Beijer [MVP]
Architecting the Future: Abstractions and Metadata - BSidesKC
Architecting the Future: Abstractions and Metadata - BSidesKC
Daniel Barker
Modernizando ci cd com openshift pipelines tdc poa
Modernizando ci cd com openshift pipelines tdc poa
Mauricio Magnani Jr
Ci of js and apex using jasmine, phantom js and drone io df14
Ci of js and apex using jasmine, phantom js and drone io df14
Kevin Poorman
Tutorial contributing to nf-core
Tutorial contributing to nf-core
Gisela Gabernet
Ruby on Rails Plugins - Rich Collins
Ruby on Rails Plugins - Rich Collins
Rich Collins
Volunteering atyouseeforit services
Volunteering atyouseeforit services
YouSee
CPAN Training
CPAN Training
Pedro Figueiredo
New Features of Kubernetes v1.2.0 beta
New Features of Kubernetes v1.2.0 beta
Giragadurai Vallirajan
Apigility – Lightning Fast API Development - OSSCamp 2014
Apigility – Lightning Fast API Development - OSSCamp 2014
OSSCube
Kubernetes_Webinar_Slide_Deck.pdf
Kubernetes_Webinar_Slide_Deck.pdf
AuliaFebrian2
Similar a CPAN Module Maintenance
(20)
Things I Learned From Having Users
Things I Learned From Having Users
Improving code quality using CI
Improving code quality using CI
Software Quality Assurance Tooling - Wintersession 2024
Software Quality Assurance Tooling - Wintersession 2024
Tooling for the productive front end developer
Tooling for the productive front end developer
CGI Presentation
CGI Presentation
Presentation confoo optimization_sherifzaroubi
Presentation confoo optimization_sherifzaroubi
Schema-First API Design
Schema-First API Design
When to use Serverless? When to use Kubernetes?
When to use Serverless? When to use Kubernetes?
MPL: modular pipeline library - Dynamic Talks Milwaukee 4/11/2019
MPL: modular pipeline library - Dynamic Talks Milwaukee 4/11/2019
Tooling for the productive front end developer
Tooling for the productive front end developer
Architecting the Future: Abstractions and Metadata - BSidesKC
Architecting the Future: Abstractions and Metadata - BSidesKC
Modernizando ci cd com openshift pipelines tdc poa
Modernizando ci cd com openshift pipelines tdc poa
Ci of js and apex using jasmine, phantom js and drone io df14
Ci of js and apex using jasmine, phantom js and drone io df14
Tutorial contributing to nf-core
Tutorial contributing to nf-core
Ruby on Rails Plugins - Rich Collins
Ruby on Rails Plugins - Rich Collins
Volunteering atyouseeforit services
Volunteering atyouseeforit services
CPAN Training
CPAN Training
New Features of Kubernetes v1.2.0 beta
New Features of Kubernetes v1.2.0 beta
Apigility – Lightning Fast API Development - OSSCamp 2014
Apigility – Lightning Fast API Development - OSSCamp 2014
Kubernetes_Webinar_Slide_Deck.pdf
Kubernetes_Webinar_Slide_Deck.pdf
Más de Dave Cross
Measuring the Quality of Your Perl Code
Measuring the Quality of Your Perl Code
Dave Cross
Apollo 11 at 50 - A Simple Twitter Bot
Apollo 11 at 50 - A Simple Twitter Bot
Dave Cross
Monoliths, Balls of Mud and Silver Bullets
Monoliths, Balls of Mud and Silver Bullets
Dave Cross
The Professional Programmer
The Professional Programmer
Dave Cross
I'm A Republic (Honest!)
I'm A Republic (Honest!)
Dave Cross
Web Site Tune-Up - Improve Your Googlejuice
Web Site Tune-Up - Improve Your Googlejuice
Dave Cross
Modern Perl Web Development with Dancer
Modern Perl Web Development with Dancer
Dave Cross
Freeing Tower Bridge
Freeing Tower Bridge
Dave Cross
Modern Perl Catch-Up
Modern Perl Catch-Up
Dave Cross
Error(s) Free Programming
Error(s) Free Programming
Dave Cross
Medium Perl
Medium Perl
Dave Cross
Modern Web Development with Perl
Modern Web Development with Perl
Dave Cross
Improving Dev Assistant
Improving Dev Assistant
Dave Cross
Conference Driven Publishing
Conference Driven Publishing
Dave Cross
Conference Driven Publishing
Conference Driven Publishing
Dave Cross
TwittElection
TwittElection
Dave Cross
Perl in the Internet of Things
Perl in the Internet of Things
Dave Cross
Return to the Kingdom of the Blind
Return to the Kingdom of the Blind
Dave Cross
Github, Travis-CI and Perl
Github, Travis-CI and Perl
Dave Cross
Object-Oriented Programming with Perl and Moose
Object-Oriented Programming with Perl and Moose
Dave Cross
Más de Dave Cross
(20)
Measuring the Quality of Your Perl Code
Measuring the Quality of Your Perl Code
Apollo 11 at 50 - A Simple Twitter Bot
Apollo 11 at 50 - A Simple Twitter Bot
Monoliths, Balls of Mud and Silver Bullets
Monoliths, Balls of Mud and Silver Bullets
The Professional Programmer
The Professional Programmer
I'm A Republic (Honest!)
I'm A Republic (Honest!)
Web Site Tune-Up - Improve Your Googlejuice
Web Site Tune-Up - Improve Your Googlejuice
Modern Perl Web Development with Dancer
Modern Perl Web Development with Dancer
Freeing Tower Bridge
Freeing Tower Bridge
Modern Perl Catch-Up
Modern Perl Catch-Up
Error(s) Free Programming
Error(s) Free Programming
Medium Perl
Medium Perl
Modern Web Development with Perl
Modern Web Development with Perl
Improving Dev Assistant
Improving Dev Assistant
Conference Driven Publishing
Conference Driven Publishing
Conference Driven Publishing
Conference Driven Publishing
TwittElection
TwittElection
Perl in the Internet of Things
Perl in the Internet of Things
Return to the Kingdom of the Blind
Return to the Kingdom of the Blind
Github, Travis-CI and Perl
Github, Travis-CI and Perl
Object-Oriented Programming with Perl and Moose
Object-Oriented Programming with Perl and Moose
Último
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
The Digital Insurer
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
Principled Technologies
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Miguel Araújo
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
The Digital Insurer
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Edi Saputra
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
The Digital Insurer
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
Andrey Devyatkin
🐬 The future of MySQL is Postgres 🐘
🐬 The future of MySQL is Postgres 🐘
RTylerCroy
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
Rafal Los
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
MIND CTI
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
lior mazor
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
Anna Loughnan Colquhoun
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
The Digital Insurer
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
apidays
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Roshan Dwivedi
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Principled Technologies
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
DianaGray10
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
wesley chun
Último
(20)
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
🐬 The future of MySQL is Postgres 🐘
🐬 The future of MySQL is Postgres 🐘
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
CPAN Module Maintenance
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.
Descargar ahora