cpanm DBD::mysql \
--configure-args="--with-mysql=/usr/local/
mysql"
Saturday, September 21, 13
Slide 26
Slide 26 text
cpanm --uninstall DBI
cpanm -U DBI
Saturday, September 21, 13
Slide 27
Slide 27 text
github.com/
miyagawa/cpanminus
Saturday, September 21, 13
Slide 28
Slide 28 text
Carton
Bundler for Perl
Saturday, September 21, 13
Slide 29
Slide 29 text
Managing CPAN
Dependencies
Saturday, September 21, 13
Slide 30
Slide 30 text
Why you need it
Saturday, September 21, 13
Slide 31
Slide 31 text
(snip)
http://yapcasia.org/2011/talk/91
Saturday, September 21, 13
Slide 32
Slide 32 text
“Upgrading CPAN modules
broke my app”
Saturday, September 21, 13
Slide 33
Slide 33 text
Dependencies are
part of your app.
Saturday, September 21, 13
Slide 34
Slide 34 text
cpanfile + cpanm
• Simple
• Yet powerful and flexible way to describe
dependencies and version requirements
• Version control cpanfile
Saturday, September 21, 13
caveats
• Locking each dependency with specific
version is tedious work
• Can only lock direct dependencies
• MetaCPAN as SPOF
• No easy/reliable way to fallback
Saturday, September 21, 13
Built on top of:
cpanfile + cpanm 1.6
Saturday, September 21, 13
Slide 40
Slide 40 text
carton 1.0
released in 8/4
Saturday, September 21, 13
Slide 41
Slide 41 text
What's new in 1.0
• No Makefile.PL/Build.PL support (cpanfile)
• cpanfile.snapshot (no carton.lock)
• 20x faster tree command
• More reliable version extraction
• carton update, carton bundle
• fatpack executable for bootstrap
Saturday, September 21, 13