This is an automated email from the git hooks/post-receive script. kanashiro-guest pushed a commit to branch master in repository carton.
commit 0503bd5f3bc1a19aff6e2eeaf2369097dbb7f224 Author: Tatsuhiko Miyagawa <miyag...@bulknews.net> Date: Fri Jul 22 11:01:05 2011 -0700 updated FAQ --- lib/Carton/Doc/FAQ.pod | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/lib/Carton/Doc/FAQ.pod b/lib/Carton/Doc/FAQ.pod index d454e01..7349762 100644 --- a/lib/Carton/Doc/FAQ.pod +++ b/lib/Carton/Doc/FAQ.pod @@ -4,6 +4,36 @@ Carton::Doc::FAQ - Frequently Asked Questions =head1 QUESTIONS +=head2 It looks useful, but what is the use case of this tool? + +The particular problem that carton is trying to address is this: + +You develop a Perl web application with dozens of CPAN module +dependencies. You install these modules on your development machine, +and describe these dependencies in your Makefile.PL or some other text +format. + +Now you get a produciton environment on Cloud PaaS provider or some +VPS, you install the dependencies using C<cpanm --installdeps .> and +it will pull all the latest releases from CPAN as of today and +everything just works. + +A few weeks later, your application becomes more popular, and you +think you need another machine to serve more requests. You set up +another machine with vanilla perl installation and install the +dependencies the same way. That will pull the I<latest> releases from +CPAN I<on that date>, rather than the same as what you have today. + +And that is the problem. It's not likely that everything just breaks +one day, but there's always a chance that one of the dependencies +breaks an API compatibility, or just uploaded a buggy version to CPAN +on that particular day. + +Carton allows you to I<lock> these dependencies into a version +controlled system, so that every time you deploy from a checkout, it +is guaranteed that all the same versions are installed into the local +environment. + =head2 How is this different from DPAN or CPAN::Mini::Inject? First of all, if you currently use L<DPAN|MyCPAN::App::DPAN>, -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-perl/packages/carton.git _______________________________________________ Pkg-perl-cvs-commits mailing list Pkgemail@example.com http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-perl-cvs-commits