This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Import CPAN-1.94_51.tar.gz; Begin to rationalize the CPAN.pm layout to mirror the...
authorJesse Vincent <jesse@bestpractical.com>
Thu, 1 Oct 2009 17:01:29 +0000 (02:01 +0900)
committerJesse Vincent <jesse@bestpractical.com>
Thu, 1 Oct 2009 18:12:53 +0000 (03:12 +0900)
20 files changed:
MANIFEST
Porting/Maintainers.pl
cpan/CPAN/Changes [new file with mode: 0644]
cpan/CPAN/Makefile.PL
cpan/CPAN/PAUSE2003.pub [moved from cpan/CPAN/lib/CPAN/PAUSE2003.pub with 100% similarity]
cpan/CPAN/PAUSE2005.pub [moved from cpan/CPAN/lib/CPAN/PAUSE2005.pub with 100% similarity]
cpan/CPAN/PAUSE2007.pub [moved from cpan/CPAN/lib/CPAN/PAUSE2007.pub with 100% similarity]
cpan/CPAN/PAUSE2009.pub [moved from cpan/CPAN/lib/CPAN/PAUSE2009.pub with 100% similarity]
cpan/CPAN/README [new file with mode: 0644]
cpan/CPAN/SIGNATURE [moved from cpan/CPAN/lib/CPAN/SIGNATURE with 95% similarity]
cpan/CPAN/Todo [new file with mode: 0644]
cpan/CPAN/lib/CPAN.pm
cpan/CPAN/lib/CPAN/Distribution.pm
cpan/CPAN/lib/CPAN/FTP.pm
cpan/CPAN/lib/CPAN/FirstTime.pm
cpan/CPAN/lib/CPAN/HandleConfig.pm
cpan/CPAN/lib/CPAN/Index.pm
cpan/CPAN/lib/CPAN/LWP/UserAgent.pm
cpan/CPAN/lib/CPAN/Module.pm
cpan/CPAN/lib/CPAN/Shell.pm

index 9c77133..4590a60 100644 (file)
--- a/MANIFEST
+++ b/MANIFEST
@@ -296,6 +296,7 @@ cpan/Compress-Raw-Zlib/zlib-src/zlib.h              Compress::Raw::Zlib
 cpan/Compress-Raw-Zlib/zlib-src/zutil.c                Compress::Raw::Zlib
 cpan/Compress-Raw-Zlib/zlib-src/zutil.h                Compress::Raw::Zlib
 cpan/Compress-Raw-Zlib/Zlib.xs                 Compress::Raw::Zlib
+cpan/CPAN/Changes                              CPAN.pm Changes file
 cpan/CPAN/lib/CPAN/API/HOWTO.pod               recipe book for programming with CPAN.pm
 cpan/CPAN/lib/CPAN/Author.pm           helper package for CPAN.pm
 cpan/CPAN/lib/CPAN/Bundle.pm           helper package for CPAN.pm
@@ -321,19 +322,18 @@ cpan/CPAN/lib/CPAN/Kwalify.pm             helper package for CPAN.pm
 cpan/CPAN/lib/CPAN/LWP/UserAgent.pm    helper package for CPAN.pm
 cpan/CPAN/lib/CPAN/Module.pm           helper package for CPAN.pm
 cpan/CPAN/lib/CPAN/Nox.pm                      Runs CPAN while avoiding compiled extensions
-cpan/CPAN/lib/CPAN/PAUSE2003.pub               CPAN public key
-cpan/CPAN/lib/CPAN/PAUSE2005.pub               CPAN public key
-cpan/CPAN/lib/CPAN/PAUSE2007.pub               CPAN public key
-cpan/CPAN/lib/CPAN/PAUSE2009.pub               CPAN public key
 cpan/CPAN/lib/CPAN.pm                  Interface to Comprehensive Perl Archive Network
 cpan/CPAN/lib/CPAN/Prompt.pm
 cpan/CPAN/lib/CPAN/Queue.pm            queueing system for CPAN.pm
 cpan/CPAN/lib/CPAN/Shell.pm
-cpan/CPAN/lib/CPAN/SIGNATURE           CPAN public key
 cpan/CPAN/lib/CPAN/Tarzip.pm           helper package for CPAN.pm
 cpan/CPAN/lib/CPAN/URL.pm
 cpan/CPAN/lib/CPAN/Version.pm          Simple math with different flavors of version strings
 cpan/CPAN/Makefile.PL
+cpan/CPAN/PAUSE2003.pub                CPAN public key
+cpan/CPAN/PAUSE2005.pub                CPAN public key
+cpan/CPAN/PAUSE2007.pub                CPAN public key
+cpan/CPAN/PAUSE2009.pub                CPAN public key
 cpan/CPANPLUS/bin/cpan2dist                    the cpan2dist utility
 cpan/CPANPLUS/bin/cpanp                                the cpanp utility
 cpan/CPANPLUS/bin/cpanp-run-perl               the cpanp-run-perl utility
@@ -428,12 +428,15 @@ cpan/CPANPLUS/t/dummy-CPAN/autobundle/Snapshot.pm         CPANPLUS tests
 cpan/CPANPLUS/t/dummy-CPAN/modules/02packages.details.txt.gz   CPANPLUS tests
 cpan/CPANPLUS/t/dummy-CPAN/modules/03modlist.data.gz           CPANPLUS tests
 cpan/CPANPLUS/t/inc/conf.pl                                    CPANPLUS tests
+cpan/CPAN/README                       CPAN.pm README
 cpan/CPAN/scripts/cpan         easily interact with CPAN from the command line
+cpan/CPAN/SIGNATURE
 cpan/CPAN/t/01loadme.t         See if CPAN the module works
 cpan/CPAN/t/02nox.t            See if CPAN::Nox works
 cpan/CPAN/t/03pkgs.t           See if CPAN::Version works
 cpan/CPAN/t/10version.t                See if CPAN the module works
 cpan/CPAN/t/11mirroredby.t             See if CPAN::Mirrored::By works
+cpan/CPAN/Todo                         CPAN.pm Todo list
 cpan/Cwd/Changes                       Cwd extension Changelog
 cpan/Cwd/Cwd.pm                                Various cwd routines (getcwd, fastcwd, chdir)
 cpan/Cwd/Cwd.xs                                Cwd extension external subroutines
index 388482d..64c3c71 100755 (executable)
@@ -369,7 +369,7 @@ use File::Glob qw(:case);
     'CPAN' =>
        {
        'MAINTAINER'    => 'andk',
-       'DISTRIBUTION'  => 'ANDK/CPAN-1.9402.tar.gz',
+       'DISTRIBUTION'  => 'ANDK/CPAN-1.94_51.tar.gz',
        'FILES'         => q[cpan/CPAN],
        'EXCLUDED'      => [ qr{^distroprefs/},
                             qr{^inc/Test/},
diff --git a/cpan/CPAN/Changes b/cpan/CPAN/Changes
new file mode 100644 (file)
index 0000000..cb07713
--- /dev/null
@@ -0,0 +1,2097 @@
+2009-09-14  Andreas J. Koenig  <andk@cpan.org>
+
+       * release 1.94_51
+
+       * bugfix: wrong diagnostic message on old Archive::Tar
+
+       * test fix: additional quoting in test t/31sessions.t for systems where
+       cwd contains whitespace (bug reported by Curtis Jewell)
+
+       * portability fix: By-pass alarm() calls if we're running under perl
+       5.6.x && $OS is Windows. (burak)
+
+       * address rt #47774: allow duplicate mention of modules in Makefile
+       prelude
+
+       * portability fixes to OS2 (Ilya Zakharevich)
+
+       * fix cpan -r (David Golden, ported back from 5.10.1)
+
+       * work around win32 URI::file volume bug (David Golden)
+
+       * portability fix: use dir() instead of path() on file URLs (David Golden)
+
+       * portability fix: removed my_dot_config as it doesn't exist in
+       File::HomeDir any more (Tomas Doran)
+
+       * bugfix: prerequisites declared with the string "==" now supported (bug
+       reported by Elliot Shank)
+
+2009-06-27  Andreas J. Koenig  <andk@cpan.org>
+
+       * release 1.9402, nearly identical to 1.94_01 with these additions:
+
+       * protect build_dir_reuse to not process irrelevant yaml files;
+       addressing a bug report by Asif Iqbal on cpan-discuss mailing list
+
+       * doc fix by Dan Dascalescu
+
+2009-06-14  Andreas J. Koenig  <andk@cpan.org>
+
+       * release 1.94_01, a candidate for the next stable release
+
+       * friendlier CPAN shell startup message (RT#46869 by ADAMK)
+
+       * sets $Archive::Tar::CHOWN=0 and $Archive::Tar::SAME_PERMISSIONS=0;
+  (RT#46384 reported by John Lightsey)
+
+       * fix CPAN Testers reports summary for new website YAML format
+       (RT#46652; David Golden)
+
+       * continuing to improve error handling on unplugged operation (tracked
+       in RT#44549)
+
+       * fix RT#46378: what happens when using 'o conf urllist' for reordering
+
+2009-05-24  Andreas J. Koenig  <andk@cpan.org>
+
+       * this is release 1.94
+
+       * since 1.93_54 one test was changed that had been failing when
+       Text::Glob was not installed.
+
+       * since 1.93 (which was released 2008-10-12) changes are documented in
+       the release notes for 1.93_5[1234] below. Here is a quick summary:
+       SQLite dependency tracking fixed; packaging works around bugs in Solaris
+       tar; fixed ls on subdirectories; tested with YAML::XS; support for
+       MYMETA.yml; CPAN.pm file split into separate files; mega doc/English
+       corrections; negated match variables in distroprefs
+
+       * thanks to Gisle Aas, Tom Christiansen, Alexandr Ciornii, Nicholas
+       Clark, Jan Dubois, David Golden, Randy Kobes, Olivier 'dolmen' Mengué,
+       Steffen Müller, Slaven Rezić, Michael Schwern, Gábor Szabó, Frank
+       Wiegand and many others for providing patches, bugreports and valuable
+       feedback.
+
+2009-05-07  Andreas J. Koenig  <andk@cpan.org>
+
+       * this is release 1.93_54 (another release candidate for 1.94, I had
+       overlooked the github fork by Alexandr)
+
+       * Help Strawberry perl #41537: will prefer perl unpack modules (unless
+       it is bz2). (Alexandr Ciornii)
+
+       * address #43779: test failures when NFS involved (Alexandr Ciornii)
+
+       * adjust tests for 5.6.2 and when no yaml module is available
+
+2009-05-04  Andreas J. Koenig  <andk@cpan.org>
+
+       * this is release 1.93_53 (release candidate for 1.94)
+
+       * address #45470: pod synopsis fix submitted by Olivier 'dolmen' Mengué
+
+       * bugfix: @$urllist could break on an undefined urllist, now protected
+
+       * bugfix: Work around the troubles posed by Acme::BadExample
+
+       * bugfix: address #43813: solaris tar cannot deal with long paths
+
+2009-04-13  Andreas J. Koenig  <andk@cpan.org>
+
+       * this is release 1.93_52 (dev release towards 1.94)
+
+       * shake out missings after the split into many files
+
+       * Win32 fixes by Jan Dubois
+
+       * CPAN::SQLite support fixes by Randy Kobes
+
+       * completion on distros works now at least on the "d" command when using
+       pretty id ( eg. USERID/Foo-<TAB> )
+
+       * experimental support for deprecated.pm only enabled on perl 5.11
+
+       * address #37531: ls on subdirectories did not work as one would
+       expect (reported by Slaven Rezic)
+
+       * address #28438: do not create the author directory if we have a file
+       URL (reported by Schwern)
+
+       * all distroprefs now more YAML compliant
+
+       * tested with YAML::XS and documented as such
+
+       * patch by Gisle Aas to catch not compiling regexps in distroprefs
+
+       * patch by David Golden to support MYMETA.yml
+
+       * address #44549: support users who do not want to connect to the
+       internet but still configure us to run in an intranet or with a minicpan
+       on the local disk (reported by Nicholas Clark)
+
+2009-02-28  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * this is release 1.9304 (same as 1.93_03, just version changed to mark
+       as stable)
+
+2009-02-01  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * this is release 1.93_51 (dev release towards 1.94)
+
+       * major surgery: split all packages within the CPAN.pm file into
+       separate files. Requested by Gabor Szabo who also submitted an initial
+       implementation.
+
+       * major surgery: relocate the repository to github, adjust all SVN
+       related code in the Makefile.PL to git, and remove all files that are
+       not directly relevant to CPAN.pm. (David Golden and Andreas Koenig)
+
+       * mega doc and English patch by Tom Christiansen and David Golden
+
+       * chmod the build directories to be world readable (suggested by Slaven Rezic)
+
+       * fix broken perldoc command (Randy Kobes)
+
+       * Use Parse::CPAN::Meta not Parse::Metayaml (Steffen Mueller)
+
+       * Negated match variables in distroprefs (Gisle Aas)
+
+       * new batch signing key PAUSE2009.pub included
+
+  * this is release 1.93_03
+
+2009-02-01  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * this is release 1.93_03 (preparation of stable 1.9304)
+
+       * more backporting from trunk
+
+       * PAUSE2009.pub included
+
+       * s/cpantesters.perl.org/www.cpantesters.org/
+
+2009-01-11  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * this is release 1.93_02
+
+       * the underscore is there because it is the first git based release, it
+       as a test ballon for the merge with bleadperl. I expect it will become
+       1.9303
+
+       * upgrade repo to github
+
+       * more caution when running in degraded mode
+
+       * default for connect-to-internet-ok to 0 again (for 5.8.9 a quick fix
+       against bootstrapping problems was to set it to 1; now the resulting
+       error message makes clear what's going on)
+
+       * typo corrections (Frank Wiegand, David Golden)
+
+       * backport Parse::CPAN::Meta patch from trunk (Steffen Mueller, David Golden)
+
+2008-10-13  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * this is release 1.9301
+
+       * tests, as always, badly written tests! (RT #39994, #40001)
+
+2008-10-12  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * this is release 1.93
+
+       * no changes against 1.92_66 except in the distroprefs directory (which
+       is not used by default)
+
+       * highlights include:
+
+       * selection of displayed modules during the 'r' command more intuitive
+       (at the same time order of modules changed because we run two passes)
+
+       * several relevant bugfixes, including one related to security
+       (setting $Archive::Tar::CHMOD=0 to prevent undesired world writable
+       directories and files)
+
+       * for details see below the changes entries for 1.92_51 to 1.92_66.
+
+       * thanks to the many contributors who have made this release possible
+
+2008-09-30  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.92_66 FEATURE FREEZE for 1.93
+
+       * if nothing serious happens this will become 1.93 in a few days
+
+  * security fix: Archive::Tar should not preserve permissions in the
+       tarball; extracted file permissions will be set from users umask instead
+       (David Golden)
+
+       * improve on dealing with a tarball with zero permissions (thanks to
+       RPHANEY/openStatisticalServices-0.018.tar.gz)
+
+2008-09-14  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.92_65 (aiming at 1.93 once again)
+
+       * address #39243: signature test now skips when no SHA module available
+       (requested by M Schwern)
+
+       * adjust skip message formatting to Test::Harness 3.13 strictness
+
+       * now with 344 distroprefs files
+
+2008-09-03  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.92_64
+
+       * workaround for tarballs containing a pax_global_header comment
+       (reported by David Cantrell and Jan Dubois)
+
+       * set the PERL5LIB also on the look command (suggested by Slaven Rezic)
+
+       * better protection against invalid index files
+
+       * fix esoteric bug in build_dir_reuse/reset_tested (David Golden)
+
+       * allow more than 100 commands in history (Rodrigo Marchant)
+
+       * preserve modification and owner bits when overwriting FTPstats.yml
+       (Slaven Rezic)
+
+       * address #32841: Location of .cpan Inconsistent on Mac OS X (David Wheeler)
+
+       * updated the FAQ about choosing mirror sites
+
+       * now with 343 distroprefs files (the curve is flattening)
+
+2008-06-19  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.92_63
+
+       * The CPAN::PERL5INC experiment didn't work and all related code was
+       removed. Because PERL5OPT "-M" switches are resolved after command line
+       "-M" switches, CPAN::PERL5INC sets @INC too late for any PL code or
+       tests that load prerequisite modules with "-M" on a command line.
+
+       * fixed some localization bugs seen on 5.6.2 (David Golden)
+
+       * added 'perl5lib_verbosity' config option to silence 'added to
+       PERL5LIB' messages (David Golden)
+
+       * now with 340 distroprefs files
+
+2008-05-23  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.92_62
+
+       * fixed PERL5INC tempfile leak when running without lock file
+       (David Golden)
+
+       * better prereq and distropref disabled support under build_dir_reuse
+       (David Golden)
+
+       * distropref cache won't persist across sessions with build_dir_reuse
+       (David Golden)
+
+       * patch from chocelateboy: found a FileHandle->new with an argument
+
+       * fix "exiting subroutine via last" bug (patch from Gisle Aas)
+
+       * finishing the CPAN::Distroprefs refactoring (Hans Dieter Pearcey)
+
+       * silence noisy tests
+
+       * now with 320 distroprefs files
+
+2008-04-25  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.92_61
+
+       * regain 5.005 compat (Slaven Rezic)
+
+       * fixed PERL5INC/YAML::Syck tainting @INC issue (David Golden)
+
+       * major distroprefs code refactoring into new module CPAN::Distroprefs,
+       adding tests (Hans Dieter Pearcey)
+
+       * cpan script upgraded to 1.53 (brian d foy)
+
+       * rework the whole experimental "feature" thingie since the META.yml
+       spec was fixed
+
+       * address #30464 (imacat): small refactoring and extend the loop
+       protection from install only on make_test
+
+       * repair broken smoke command
+
+       * now with 309 distroprefs files
+
+2008-03-26  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.92_60: gearing towards a new stable release
+
+       * minor bugfixing
+
+       * documented that the support for optional_features is not yet ready for
+       prime time.
+
+       * now with 297 distroprefs files
+
+2008-03-16  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.92_59: new distroprefs parameter match/env; bugfixing
+
+       * address #34104: add match/env into the distroprefs mix (suggested by
+       Slaven Rezic)
+
+       * add reset_tested() function to forget distributions previously tested
+       in a session, which resets the list of directories added to PERL5LIB
+       (David Golden)
+
+       * address #34062: regain lost 'cpan .' command (reporter Slaven Rezic)
+
+       * shut up "exited subroutine via last" warning in an expect loop
+
+       * address #34102: wrong diagnostic message when no META.yml was there
+       (reporter Slaven Rezic)
+
+       * CPAN::PERL5INC now also used in available_file() so that testers that
+       do not install can continue to work as before this module was introduced
+
+       * new protection against subtly broken META.yml files (testcase provided
+       by Form-Processor-Model-DBIC-0.01)
+
+       * cleanup some files on whitespace, notably CRLF files that could
+       confuse some svn clients
+
+       * experimental support for optional_features in META.yml (pre-alpha)
+
+       * now with 287 distroprefs files
+
+2008-03-12  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.92_58: bugfix
+
+       * new module CPAN::PERL5INC repleaces the current PERL5INC stuff for
+       larger numers of directories involved
+
+       * force pragma can now override the effect of 'disabled' in distroprefs
+       (David Golden)
+
+       * speed up find_perl by caching absolute path in $^X (discovered by
+       Slaven Rezic)
+
+       * new FAQ entries about the build directory
+
+       * now with 284 distroprefs files
+
+2008-02-27  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.92_57: getting closer to 1.93
+
+       * address #32823: fix a (rare) case where the make_args were appended to
+       the commandline on the call to ./Build (reported by David Golden and
+       Michael Schwern)
+
+       * applied a patch from Randy Kobes to update index before a query when
+       CPAN::SQLite is active
+
+       * added 'halt_on_failure' config option to halt queue processing after
+       the first failure rather than processing all remaining items
+       (patch by David Golden; requested by Andrew Hampe and Matisse Enzer)
+
+       * address #33505: allow empty passwords in the config and pass proxy
+       data through to curl (suggestions by kevinarpe)
+
+       * new diagnostics when CPAN.pm is required a second time. Introduce a
+       sleep period when it is required several times because then a loop might
+       be the cause and this might provide a clue to the user.
+
+       * address #32525: when running the 'r' command, try to display the
+       module name that is best suited for the distribution name (suggestion
+       and prove of concept implementation by imacat)
+
+       * speed up distroprefs on eexpect/anyorder by reducing timeout to 1
+       second and retrying until full timeout reached
+
+       * address 32923: allow =head1 CONTENT without regard to case (David
+       Wheeler)
+
+       * Now with 277 distroprefs files
+
+2008-02-04  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.92_56: unstable release both bugfixes and new features
+
+       * addressing #32841: fixing wrong usage of HOME vs File::HomeDir spotted
+       by Randy Kobes based on a bugreport by David Wheeler; with help from
+       Schwern and Adam Kennedy and I'm sure this will need more iterations.
+
+       * added 'trust_test_report_history' config option; when set, CPAN will
+       skip tests for a distribution and rely on test report results if a prior
+       test report is found; requires CPAN::Reporter 1.07_02
+
+       * protect against the infamous bug in Safe 2.13 that causes data
+       corruption and ugly error messages like unknown method version::("")) or
+       some such
+
+       * let people disable the direct usage of gzip and tar by supplying a
+       whitespace config variable
+
+       * improvements to PPM support by Randy Kobes
+
+       * now with 274 distroprefs files
+
+2007-12-30  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.92_55: unstable release bugfix
+
+       * address #32003: if untar breaks we broke too much of the session
+
+       * regain 5.6.1 compatibility in the testsuite
+
+       * improve diagnostics in t/31sessions.t to understand better what's up
+       in #31750
+
+       * fail gracefully on distroprefs parse error
+
+       * now with 267 distroprefs files
+
+2007-12-27  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.92_54: unstable release bugfix
+
+       * document how redirection in the shell works
+
+       * skip distros in the smoke command when they match m|/Bundle-| (quick
+       hack suggested by David Golden)
+
+       * address #31825: wrong location of MyConfig.pm in Config.pm on OS X
+       (patch by Michael Stillwell)
+
+       * address #31750: fix the logic when Compress::Zlib is not installed,
+       add a test to verify it
+
+2007-12-10  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.92_53: unstable release low priority
+
+       * now with 262 distroprefs files
+
+       * fix the bug where CPAN.pm refused to upgrade to Test::Harness 3
+       because Test::Harness was too old (Eric Wilhelm)
+
+       * skip tests when YAML too old
+
+       * default changed in Firsttime: prefer the conservative choice to NOT
+       use build_dir_reuse
+
+       * improve diagnostics when Tarzip believes that it must give up
+
+       * new config variable connect_to_internet_ok (requested by Merijn Brand)
+
+2007-11-11  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.9205
+
+       * backport the bugfix from 1.92_52
+
+       * straighten out a few whitespace changes that slipped into 1.9204
+
+       * release 1.92_52: unstable release (1.9205 will follow)
+
+       * bugfix: the endless loop fix that made it into 1.92_51 and 1.9204 was
+       buggy in itself. Fixing the fix and adding a test case.
+
+       * use chdir from Cwd.pm everywhere instead of the built-in chdir so that
+       we set $PWD simultaneously (requested by Slaven Rezic)
+
+2007-11-06  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.9204: stable subset of 1.92_51
+
+       * bugfix addressing #30464 endless loop with prereq resolution (Slaven
+       Rezic) [untested!]
+
+       * protect the user from using File::Temp when it is too old
+
+       * applied a patch by Rich Paul to finally disable an undocumented, then
+       deprecated and then apparently broken feature
+       ($CPAN::Shell::ADVANCED_QUERY)
+
+       * applied a patch by Rich Paul that gains us a lot of speed lost in
+       unnecessary recomputations
+
+       * replaced all occurrences of $^X with findperl (bug reported by Slaven Rezic)
+
+       * several of many suggestsions by Mark Overmeer to improve the style of
+       the dialoges. There's more stuff left in several tickets...
+
+       * address #29754: Lockfile problem with perl 5.005_05 (Slaven Rezic)
+
+       * let containsmods cache negative results: Slaven Rezic found out that
+       distros without modules can be a performance killer without this measure
+
+       * no changes in the distroprefs directory
+
+2007-11-04  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.92_51: unstable release (I'll make a 1.9204 soonish)
+
+       * bugfix addressing #30464 endless loop with prereq resolution (Slaven
+       Rezic) [untested!]
+
+       * applied a patch by Rich Paul to support redirection and pipes on shell
+       commands [undocumented!]
+
+       * bugfix wrong usage of kill 0 (Slaven Rezic)
+
+       * protect the user from using File::Temp when it is too old
+
+       * applied a patch by Rich Paul to finally disable an undocumented, then
+       deprecated and then apparently broken feature
+       ($CPAN::Shell::ADVANCED_QUERY)
+
+       * applied a patch by Rich Paul that gains us a lot of speed lost in
+       unnecessary recomputations
+
+       * replaced all occurrences of $^X with findperl (bug reported by Slaven Rezic)
+
+       * several of many suggestsions by Mark Overmeer to improve the style of
+       the dialoges. There's more stuff left in several tickets...
+
+       * address #29754: Lockfile problem with perl 5.005_05 (Slaven Rezic)
+
+       * let containsmods cache negative results: Slaven Rezic found out that
+       distros without modules can be a performance killer without this measure
+
+       * now with 242 distroprefs files
+
+2007-09-28  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.9203: stable release with one distroprefs file fixed
+
+       * release 1.9202: stable release
+
+       * bugfix: don't try to make/Build when Makefile/Build.PL fails to
+       generate a Makefile/Build (David Golden)
+
+       * now with 217 distroprefs files
+
+2007-09-27  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.9201: stable release
+
+       * bugfix: remove a compile time has_inst call from CPAN::Admin which
+       could cause a hang (Mike Brudenell, Slaven Rezic)
+
+       * address #29606: only warn once when we ignore locking issues (Steve Cooper)
+
+       * add CPAN::Reporter::* to the packages needed for "reload cpan" (David
+       Golden)
+
+       * now with 214 distroprefs files
+
+2007-09-15  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.92: stable release
+
+       * fixed bug that kept "?" from being interpreted as "help" command
+       (David Golden)
+
+2007-09-15  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.91_55: stable release candidate II
+
+       * Update one test to match the output of Test::Harness 2.99_02
+
+2007-09-14  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.91_54: stable release candidate
+
+       * highlights of 51-54: CPAN::Reporter support for reports on separate
+       phases; support for configure_requires in META.yml; now with 207
+       distroprefs files; see below for details.
+
+       * firsttime dialog now defaults prefer_installer to "MB" and offers a
+       third option (RAND) for a random choice.
+
+       * code beautification complete overhaul, whitespace only (Florian
+       Ragwitz)
+
+       * after a fail introduce a hint for using the reports command (suggested
+       by Gabor Szabo)
+
+       * Enable code deserialisation for YAML. (Florian Ragwitz)
+
+       * Add CPAN::DeferedCode and make CPAN.pm use it. (Florian Ragwitz)
+
+       * Add a new config option: yaml_load_code. (Florian Ragwitz)
+
+       * turn a few myprint() into mywarn()
+
+       * make inhibit_startup_message a normal config variable like all others
+
+       * New manpage CPAN::API::HOWTO by David Cantrell
+
+       * now setting PERL5_CPAN_IS_EXECUTING as requested by Adam Kennedy
+
+       * ask once if we may try to connect to the internet when we try to use
+       @CPAN::Defaultsites (I think this was inspired by Steve Hay, then by
+       Gabor Szabo)
+
+       * address #28946: skip locking on platforms not supporting flock
+
+       * address #28915: CPAN::HandleConfig::home did not cope with getting
+       undef from File::HomeDir-> my_data()
+
+       * support 'help' with argument
+
+       * integrate all FirstTime questions into POD
+
+       * FirstTime::my_prompt_loop now has support for *_intro prompts
+
+       * simplified lots of the complicated FirstTime::init dialogues
+
+       * new config variable load_modules_verbosity
+
+       * support 'o conf /regex/' to selectivel display the state of config varibles
+
+       * prevent recursion into HandleConfig::load()
+
+       * PERL5*_CPAN_IS_RUNNING now points to the process number
+
+       * several commands were missing in @COMMANDS so were not supported for completion
+
+       * started deprecating term_is_latin config variable
+
+2007-08-08  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.91_53:
+
+       * added CPAN Testers reporting for failures of *.PL or make/Build
+       if CPAN::Reporter version is at least 0.99 (David Golden)
+
+       * new config option tar_verbosity
+
+       * added base_id() method to CPAN::Distribution; documented both
+       base_id() and pretty_id() (David Golden)
+
+       * bugfix: make install did not set the PERL5LIB environment
+
+       * bugfix: smoke command handles distros it can't find more graciously
+
+       * docfix: new FAQ entry about commit and auto_commit (bugged by Nicholas
+       Clark)
+
+       * refactoring of the Queue objects for better readability
+
+       * address #28438: wording of the dialog for keep_source_where (Martin
+       Thurn,Michael Schwern)
+
+       * address #28439: did not report missing file URL when LWP not installed
+       (Martin Thurn,Michael Schwern)
+
+       * new parameter for eexpect: reuse (Slaven Rezic)
+
+       * bugfix 'reload cpan': make it less unintuitive (David Golden)
+
+       * bugfix in goto: did not formally say goodbye
+
+2007-07-13  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.91_52:
+
+       * When accessing the preconfigured default sites, reorder accessmethods
+       in favor of http access (suggested by Brandon Black)
+
+       * neutralize "force" on commands that have no support for it, e.g. turn
+       "force report" into "report" (bugged by Slaven Rezic)
+
+       * let SIGINT during recent mean LAST
+
+       * let SIGINT during smoke mean SKIP
+
+       * stop using any version.pm in test 10version.t below 0.7203 because it
+       broke on some older bleadperls between 23000 and 25000
+
+       * applied a patch by Jim Cromie to explicitly spit out the unparseable
+       and zero version numbers
+
+       * changed CPAN::Version to treat sequences of more than on trailing ".0"
+       in version strings as insignificant. This was relevant for
+       ANDYA/Set-IntSpan-Fast-v1.0.tar.gz. Bugreport about version.pm is
+       https://rt.cpan.org/Ticket/Display.html?id=28206
+
+       * now with 175 distroprefs files covering over 200 distributions
+
+2007-07-07  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.91_51:
+
+       * support configure_requires according to the META.yml spec
+
+       * support distroprefs for all three types of dependencies:
+       configure_requires, build_requires, requires
+
+       * new experimental commands C<recent> and C<smoke>
+
+       * increase the timeouts for the tests for really slow machines
+
+       * lots of new, updated, and consolidated distroprefs files
+
+       * tiny fix for very rare cases of wrong parsing of degenerate version
+       numbers in CPAN::Version (thanks to Julian Mehnle for the report)
+
+       * support for artistic license "2" (Allison Randal)
+
+       * fix color ornamenting to always end before a newline not after it to
+       prevent spurious reset escape sequences at the beginning of the next
+       line (discovered by Gregor Goldbach and Slaven Rezic)
+
+2007-05-08  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.9102 -- tiny bugfixes
+
+       * address #26664: probe for the version of the patch program before
+       using it and adjust the parameters accordingly
+
+       * bugfix: a recent bugfix to dot distros broke pip (reported by Adam Kennedy)
+
+       * compatibility with 5.00405 regained
+
+       * test fix: increase the timeouts (the dependency of test success on CPU
+       speed discovered by Slaven Rezic)
+
+       * work in progress: improve the output of CPAN.pm to improve
+       human/machine parseablility on several failure modes
+
+2007-04-23  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.9101
+
+       * bugfix: give all File::Temp using spots a tmpdir (bugged by Slaven Rezic)
+
+       * test fix: demand more YAML fu to run the kwalify test in 12cpan.t
+
+       * bugfix: work around a 5.8.0 overload bug (Slaven Rezic)
+
+       * cosmetics: turn on sorting for Data::Dumper conversions
+
+       * several new distropref files
+
+       * test fix: on failure use diag(STDERR) instead of mydiag (STDOUT)
+
+2007-04-19  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.91
+
+       * new command C<reports> shows the reports sent to cpantesters
+
+       * bugfix: dot distros did not work with Module::Build
+
+       * several new and updated distroprefs
+
+       * bugfixes in testscripts (spotted by Slaven Rezic, Nigel Horne, David Cantrell)
+
+       * bugfix: Time::HiRes not a prereq anymore (Joshua ben Jore)
+
+       * speedup of the cleanup process in the build directory: do not compute
+       the size of directories to be deleted
+
+       * bugfix: scripts installation was broken
+
+       * bugfix: do not drop unknown config variables for the sake of forward
+       compatibility
+
+2007-04-07  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.90
+
+       * Changes against 1.88:
+
+       * enhanced integration of CPAN::Reporter
+
+       * distroprefs subsystem to store preferences on a per-distro basis
+       independently of the support provided by the individual distributions
+
+       * Support for CPAN::SQLite to gain significant memory savings and speedup
+
+       * new commands upgrade, is_tested, install_tested
+
+       * improved visual navigation by colorized output and improved diagnostic
+       messages
+
+       * improved installation support for scripts without tarball
+
+       * improved config management of internal variables
+
+       * much more serialization of internal data into YAML, switchable between
+       YAML and YAML::Syck
+
+       * optional persistence between sessions
+
+       * support for pseudo "dot" distros (local directories having nothing to
+       do with CPAN)
+
+       * reworked force pragma and new fforce pragma
+
+       * new configuration variables auto_commit, build_requires_install_policy
+
+       * new optional Bundle::CPANxxl bringing all optional supporting modules
+
+       * Changes against 1.88_79:
+
+       * workaround YAML::Syck 0.84 bug
+
+       * bugfix: remove from the is_tested set what reaches "install already done"
+
+       * improve diagnostics when gpg fails
+
+       * bugfix persistence: do not restore pragmas
+
+       * do the eval $VERSION tango for $CPAN::VERSION only when needed
+       (allowing "1.90" with a trailing zero)
+
+       * bugfix: if a dependency has been installed successfully but did not
+       install the expected module, issue a warning and do not install again to
+       prevent endless loops.
+
+2007-03-15  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.88_79: stable release candidate VII
+
+       * make the failure mode on circular depencies just as the other failure
+       modes and let the rest of the modules continue; also improve diagnostics
+       for circular dependencies
+
+       * clean up a few places where STDERR leaked from underneath; others seem
+       unfixable so a few are left over
+
+       * protect better against lost build directories
+
+       * warn when YAML is too old and skip the 30shell test
+
+2007-03-05  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.88_78: stable release candidate VI
+
+       * set PERL5_CPANPLUS_IS_RUNNING (desparately; see RT#23735)
+
+       * prevent installation attempts for files named *.patch (inspired by
+       David Cantrell)
+
+       * allow refs in @INC by Nicholas Clark
+
+       * applied a patch by Slaven Rezic to support match/perlconfig in
+       distroprefs covering %Config::Config
+
+       * hint the Win32 users how to install nmake with YVES' download script
+
+       * catch typos in distroprefs that are not yet caught by kwalify
+
+       * several new and updated distroprefs files
+
+       * integrate brian d foy's cpan script from his 1.53 release
+
+       * address RT#25223 (JDHEDDEN) small fix to the cpan script
+
+       * fix installation of scripts which was broken
+
+2007-02-19  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.88_77: stable release candidate V
+
+       * another tweak to t/31sessions.t necessary after a cpantesters report
+
+2007-02-19  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.88_76: stable release candidate IV
+
+       * In t/31sessions.t set PERL_MM_USE_DEFAULT to emulate testers behaviour
+       and have the same results for testers and everybody else.
+
+2007-02-18  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.88_75: stable release candidate III
+
+       * make t/31sessions.t more verbose in order to determine the problem it
+       has on testers machines
+
+2007-02-15  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.88_74: stable release candidate II
+
+       * fix t/31sessions.t to run without Archive::Tar installed
+
+       * updated and new prefs files
+
+2007-02-13  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.88_73: quick small fixes, stable release candidate I
+
+       * Win32 fix for 31sessions.t by Randy Kobes
+
+       * flush non-archival files when the mirror changes (thanks for the
+       suggestion to Adam Kennedy)
+
+       * fix recursion detection logic: when we have the module and it
+       satisfies the minimum required, do not take its recursive dependencies
+       into account.
+
+       * fix bug in getting PREREQ_PM out of Makefile when a value in PREREQ_PM
+       is undef (uncovered by Template::Plugin::Format::Number)
+
+       * couple of distroprefs files
+
+       * in the tests, when using POSIX::_exit make sure the 1..0 is flushed out
+
+2007-01-31  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.88_72: quick small fixes
+
+       * fix completion for the two commands "failed" and "fforce"
+
+       * fix support for test/args in distroprefs
+
+       * stop scanning build_dir for sizes without lock because we are not
+       cleaning up anyway
+
+       * disable broken Archive::Tar 0.23
+
+       * mitigate a too sharp test in 31sessions.t
+
+2007-01-27  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.88_71: this does not yet qualify as a release candidate for
+       1.89 because it incorporates a major bugfix; but otherwise I think this
+       is feature complete for a release
+
+       * document treatment of requires and build_requires declarations
+
+       * integrate the distroprefs README into the manpage
+
+       * introduce negative distroprefs caching for the current command
+
+       * new commands C<is_tested> and C<install_tested> (inspired by Ilya
+       Zakharevich)
+
+       * fix completion bug with notest and fforce pragma
+
+       * delete distro objects in memory that are cleaned up by the CacheMgr
+
+       * fix a bug that only fired when prefer_installer was set to MB but
+       Module::Build was not yet installed
+
+       * fix a serious dependency resolution bug triggered by the new
+       family of Compress::Zlib module distributions
+
+       * limit recursion detection to those commands that need it and let
+       others, like 'look', continue to work; at the same time make recursion
+       detection a serious error that throws an exception and does not try to
+       continue to execute
+
+2007-01-08  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.88_69
+
+       * fix a broken test (which tested with the wrong MyConfig.pm)
+
+2007-01-07  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.88_68
+
+       * two bugfix patches from Randy Kobes for Win32
+
+       * include new PAUSE2007.pub key
+
+       * bugfix: make FTPstats writing atomic
+
+       * new mandatory config variable 'auto_commit' to always save changed
+       variables immediately to disk
+
+       * address 22069: display a colortable before asking questions about
+       colors
+
+       * new config variable colorize_debug to colorize debugging output
+
+       * bugfix: prepending to PERL5LIB contained the BUILDDIR literally
+
+       * bugfix: when determining unsatisfied prereqs, honour is_tested area
+
+       * improve documentation about has_inst and dontload_list
+
+       * several distropref files finetuned
+
+2006-12-31  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * release 1.88_67
+
+       * Redesigned 'force' pragma: only force at the level of the given
+       command ('force test' only forces test, 'force make' only make etc.)
+
+       * new fforce pragma ("fortissimo") that forces at 'get' level and then
+       continues to the given command
+
+       * persistence via 'build_dir_reuse' improved: also maintain the
+       is_tested record between sessions
+
+       * documentation and tests for the new force pragmas and for session
+       persistence
+
+       * support for 'applypatch' via distroprefs
+
+       * improved SQLite support for TAB completion courtesy Randy Kobes
+
+       * lots of new and updated distroprefs files
+
+       * Devel::Cover working again
+
+       * address #24114 (Steve Peters): do not fail due to missing YAML
+
+       * bugfix: handle gracefully when a build dir disappears
+
+       * bugfix: improve dependency checking if a module has no version at all
+
+       * bugfix: when a "goto" object is installed remove it from the queue
+
+       * bugfix: test suite runnable again without Expect
+
+2006-12-18  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.88_66
+
+       * bugfix: protect FTPstats.yml from being truncated
+
+       * bugfix: now really remove the dependency on YAML::Syck in the Makefile
+
+       * distroprefs: deprecate expect-in-any-order and replace with eexpect
+
+       * distroprefs: attach a Distrostatus object to disabled distros in
+       $self->{unwrapped}
+
+       * distroprefs: new keyword 'commandline'
+
+       * sqlite: deprecate config variable sqlite_dbname
+
+       * sqlite: make Bundle::Localbundle work
+
+2006-12-09  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.88_65
+
+       * make CPAN::SQLite configurable and tweak a few places to help SQLite
+       bootstrapping.
+
+       * fixed an implicit dependency on YAML::Syck in the Makefile
+
+       * distropref-goto: use the queue because after the goto new dependencies
+       may be needed
+
+       * fix dependency checking after make test: it did not work well together
+       with a distropref-goto
+
+2006-12-04  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.88_64
+
+       * more of Randy Kobes' patches for CPAN::SQLite applied. Things start
+       working.
+
+       * CPAN::Kwalify as a bridge to Kwalify.pm verifies all distroprefs to be
+       syntactically correct
+
+       * address #23742: fix unini warning
+
+       * another patch from Randy Kobes to canonize directory names
+
+       * bugfix: force install of a local dot distro was doing weird things
+
+       * bugfix: goto did not normalize the distro name
+
+2006-11-23  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.88_63: nothing major, only bugfixes and tiny new features.
+       Still a lot to do for 1.89.
+
+       * address #23315: there were still some uncought exceptions in
+       CPAN::Tarzip that broke megainstalls by Steve Peters; now hopefully all
+       fixed
+
+       * address #22584: do not set VERSION to "undef" when 0
+
+       * bugfix: delete backups during downloading of new index files
+
+       * bugfix: repair all risky ->can with UNIVERSAL::can; thanks to Adriano
+       Rodrigues for the report!
+
+       * bugfix: dirname(undef) can die: protect against it when an entry in
+       FTPstats has no associated file
+
+       * the failed command now prints its rows sorted by command (as before)
+       but within each command by time.
+
+       * the prereq check under the Module::Build installer is now performed by
+       reading the _build/prereqs file instead of calling Module::Build
+       directly. (Suggested by Ken Williams)
+
+       * cleanup of the cache directory is now disabled for batch jobs;
+       documentation is updated about the lock file the shell is holding
+
+       * now setting the environment variable PERL5_CPAN_IS_RUNNING; tentative
+       patch for Module::Install in my CPAN homedirectory
+
+       * support for fallback Data::Dumper and Storable files in the prefs_dir
+       directory when YAML is not available (alpha)
+
+       * new support for cpanconfig/check_sigs in distroprefs to temporarily
+       switch signature checking on or off. See distroprefs/00.README for
+       details and distroprefs/JESSE.HTTP-Server-Simple.yml for an example (alpha)
+
+       * new keyword "goto" in distroprefs to nominate a delegate distro. See
+       distroprefs/00.README for details and distroprefs/ABH.XML-RSS.yml for an
+       example (alpha)
+
+       * small portions of patches from Randy Kobes applied to support
+       CPAN::SQLite (pre-alpha; see Makefile.PL how to invoke)
+
+2006-11-13  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.88_62
+
+       * bugfix in randomize_urllist introduced in 1.88_61: setting the value
+       with C<o conf randomize_urllist> was broken
+
+       * disallow C<o conf {commit,defaults}> in degraded mode
+
+       * more programming tips in the manpage from Ilya Zakharevich
+
+       * sanity check on path names with tilde suggested by Adam Kennedy
+
+       * change the prettyprint of arrays to accommodate the user of splice
+
+       * introduce C<expect-in-any-order> to distroprefs
+
+       * add a new testdistro CPAN-Test-Dummy-Perl5-Make-Expect
+
+       * make the 00.README in the distroprefs directory more like a manpage
+       for later inclusion into the CPAN.pm manpage
+
+       * determine if a patch needs -p0 or -p1
+
+       * fix downloads with lynx when the other end sends an unusual error page
+
+2006-11-10  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.88_61
+
+       * This release is dedicated to imacat.
+
+       * address #22749: always download CHECKSUMS from the same host as the
+       package file (Thanks to imacat for the report)
+
+       * new command 'hosts' to display some recent download statistics
+
+       * new config parameter 'randomize_urllist' brings some randomness into
+       the URL selection
+
+       * if yaml_module not YAML and not available, fall back to YAML
+
+2006-11-02  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.88_59
+
+       * Note: the build_dir has got a major reworking with regard to how
+       individual directories below it are being named. The names are now
+       generated by File::Temp and contain a random part. This has the
+       advantage that concurring users of CPAN.pm cannot disturb each other and
+       the disadvantage that it is more difficult to identify which directory
+       contains which build environment. If YAML is installed, then each
+       directory is accompanied by a YAML file that stores a lot of state about
+       the directory.
+
+       The filename of the YAML file is C<< <directoryname>.yml >>
+
+       * This release represents work in progress: new features marked as alpha
+       below are still in flux and may change or be removed in the future.
+
+       * Large chunk of documentation added about the many 'o conf' variants
+       (after a smart kick From Marc Lehmann)
+
+       * fix a bug reported by Sujith Emmanuel to survive when urllist contains
+       illegal URLs
+
+       * new bundle Bundle::CPANxxl with CPAN::Reporter, Module::Signature,
+       Expect, etc.
+
+       * many new sample distroprefs files (alpha)
+
+       * new keyword "disabled" in distroprefs (alpha)
+
+       * sanitize the behaviour after an Expect.pm timeout (alpha)
+
+       * make running concurrent batch jobs safe (alpha)
+
+       * lock the shell more granular to let many CPAN shells coexist (alpha)
+
+       * several small bugfixes to the persistent distro state feature
+       introduced in 1.88_58 (alpha)
+
+       * very early incarnation of new install_tested command (alpha)
+
+2006-10-28  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.88_58
+
+       * new config option build_dir_reuse for persistent distro state in
+       build_dir inspired by Ilya Zakharevich. (alpha!)
+
+       * a few new and rewritten distropref files.
+
+       * add distribution name to every OK/NOT OK; also inspired by Ilya.
+
+       * bugfix on a rare bug related to the deletion of metadata after using a
+       pragma on a distribution.
+
+2006-10-24  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.88_57
+
+       * address #22396: add a diagnostic warning at cleanup time when people
+       have changed their config but forgot to safe it (Tina Mueller, Alberto
+       Manuel Brandao Simoes).
+
+       * workaround for a weird interaction with a dated version.pm in
+       a probably dated Module::Build and UNIVERSAL::VERSION.
+
+       * document the config variables that are overridable via distroprefs.
+
+       * add prefer_installer to the list of overridable config variables.
+
+       * new and updated prefs files for DBI, Coro, etc.
+
+2006-10-22  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.88_56
+
+       * add the ability to patch random distros both with local patches and
+       with patches from CPAN. Demo patches to UNIVERSAL::require, Expect,
+       Math::Pari, etc. are uploaded to my CPAN directory, corresponding YAML
+       files are in the distroprefs directory. Heavily inspired by an old patch
+       from Ilya Zakharevich.
+
+       * fixes from Ilya Zakharevich to the PERL5LIB environment handling for
+       not yet installed modules from a 3 year old patch.
+
+       * work around a Module::Build issue with Build.PL files that are
+       subclassing Module::Build like Error.pm and HTML::Mason. For now we fall
+       back to the META.yml file. Needs further discussion with Module::Build
+       people.
+
+       * in the distroprefs system allow for YAML files with an arbitrary
+       number of sections.
+
+       * document how to integrate local distribution directories into the CPAN
+       shell. See section 'Integrating local directories' in the manpage.
+
+       * reporting of errors during unpacking is now integrated into the
+       report section at the end of each command and the 'failed' command.
+
+       * applied a patch by smpeters to silence an unini warning (RT #22277).
+
+       * address #20979: trailing backslashes in MyConfig variables with test
+       (Lars XXX via David Golden)
+
+2006-10-16  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.88_55
+
+       * new command 'report' as requested by Schwern in #22118.
+
+       * extend the Distribution object to local directories. Gives a meaning
+       to the 'cpan .' command. Suggested by Slaven Rezic.
+
+       * removes the linux centric behaviour of t/30shell.t.
+
+       * do not complain THAT often about uninstalled YAML or YAML::Syck; once
+       is per distro enough.
+
+2006-10-13  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.88_54
+
+       * New option 'yaml_module' to switch between YAML.pm and YAML::Syck
+       Try 'o conf init /yaml/' to use it.
+
+       * New distroprefs system that lets the user store arguments, environment
+       variables, individual answers to questions asked by Distributions when
+       being built, and config overrides. Try 'o conf init /prefs/' for more
+       information.
+
+       * address #21144 major documentation bug: $obj->install is NOT the same
+       as CPAN::Shell->install($obj) as soon as a queue of dependencies comes
+       into play.
+
+       * fix "o conf defaults" which was broken in 1.88_53.
+
+       * protect us against Module::Build errors with an eval around the
+       requires() and build_requires() calls.
+
+2006-10-09  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.88_53
+
+       * wrapping Module::Build calls into an eval to catch external errors
+       with the right consequences.
+
+       * 'reload cpan' now based on timestamps and always jumps into a fresh
+       shell when needed.
+
+       * display the version during loading of our own modules.
+
+       * address #21692: make the "isa perl" case less noisy (Gabor Szabo)
+
+       * new tests
+
+2006-10-03  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.88_52
+
+       * now does the right thing with prereq "perl"
+
+       * major speedup in parsing of index files
+
+       * repair debugging aid to display the correct line number
+
+       * fix bug introduced in _51 regarding Test::Harness version verification
+
+       * fix old bug in CPAN::Version wrt installed developer versions
+
+2006-09-29  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.88_51
+
+       * dependencies declared as 'build_requires' are now treated according to
+       a new policy option: try 'o conf init build_requires_install_policy' for
+       more info. (Suggested/Requested by Johan Vromans)
+
+       * fixed a bug where successful tests were repeated if things were not
+       being installed like during the 'test' command itself.
+
+       * address #21724: document that the 'r' command takes arguments; support
+       the same arguments for the 'upgrade' command (Adam Kennedy)
+
+       * address #21716: fix the broken 'recent' command (Phil Pennock)
+
+       * fixed a rare but extremely unpleasant bug with deep recursion in
+       AUTOLOAD during the 'reload cpan' command.
+
+2006-09-22  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.8801
+
+       * trivial bugfix: init dialog had a tweak that made it impossible to set
+       'ncftp' when 'ncftpget' was installed and configured.
+
+2006-09-21  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.88
+
+       * For detailed changes since 1.87 see the entries in the Changes file.
+       For finer grained change log see the ChangeLog.svn file. The highlights
+       of this release are:
+
+       * convenient configuration: dialogs for individual items or groups of
+       items can be accessed with a single command (Courtesy Jim Cromie)
+
+       * experimental support for CPAN::Reporter: try
+           o conf init /test/
+       (Courtesy David Golden)
+
+       * make installation of scripts easier: try something like
+           install     SREZIC/pingomatic-1.012
+       (Courtesy Slaven Rezic)
+
+       * colored output for better separation of process output, messages from
+       CPAN and warnings from CPAN: to turn colorization on/off try
+           o conf init /color/
+
+       * formatting of lists of modules now features a column to indicate
+       installed and updateable modules
+
+       * signature checking can now be turned on and off with 'o conf check_sigs'
+
+       * new command 'upgrade' installs newest version of all installed modules
+
+       * Please note a minor incompatibility: the init dialog now has reversed
+       semantics: it suggests automatic configuration that can be confirmed
+       with 'yes' instead of suggesting manual configuration that can be denied
+       with 'no'.
+
+2006-09-18  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.87_65
+
+       * Hunting missing documentation with Test::Pod::Coverage because my
+       first try to use it started with a wrong copy&paste.
+
+       * Forward compatibility: bzip2 via Archive::Tar not dying anymore
+
+2006-09-16  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.87_64
+
+       * added test for the urllist dialog
+
+       * added License to all pm files and to the Makefile.PL
+
+       * allow ranges in urllist dialog, as inspired by Andrew Strebkov
+
+       * allow "o conf init WORD WORD2..."
+
+       * address #21484: disable inactivity_timeout when d_alarm is not "define"
+
+       * regex in "o conf init MATCH" must now be enclosed in slashes as in all
+       other commands that allow regexes
+
+       * again tested with 5.8.0, this time with an UTF8 locale and it did
+       indeed not pass the 30test: turning LANG=C now for the 30shell test,
+       unconditionally
+
+       * all supported config variables now documented in the POD and added a
+       test to monitor changes in the future
+
+2006-09-13  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.87_63
+
+       * should run on 5.8.0 now
+
+       * address #17973: always honour user defined URLs over default URLs
+
+2006-09-11  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.87_62
+
+       * make term_ornaments switchable while running (was only checked during
+       initialization)
+
+       * verify that color settings are applicable (bad colors were killing the
+       shell process completely)
+
+       * improve wording and logic when user is offline and tries to run
+       the urllist dialog. (Address debian bug #380551)
+
+2006-09-10  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.87_61
+
+       * configuation of urllist uses a local urllist instead of the global
+       configured one: prevents that ^C accidentally kills the currently
+       configured urllist
+
+       * configuration of urllist: if there is already a previous pick, one can
+       go through the dialog with RETURN only
+
+       * new options to get colored output: colorize_output, colorize_print,
+       colorize_warn
+
+2006-09-03  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.87_59: "o conf init MATCH" finally works and can be used to
+       jump into the configuration dialog and select an arbitrary subset of
+       questions.
+
+       * perl -I. -MCPAN ... now works because we replaced C<no lib .> with
+       rel2absing the INC (suggested by Slaven Rezic)
+
+2006-08-31  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.87_58: work is still in progress to get "o conf init MATCH"
+       working (finishing the epochal Jim Cromie patches) but all tests pass
+
+       * initial configuration dialogue now has reversed meaning: automatic
+       configuration can be confirmed with 'yes' instead of having to deny
+       manual configuration with 'no'
+
+       * fix a bug reported by David Golden, that Bundle::CPAN is never
+       uptodate. Fixing it by special-casing readline.pm in the inst_file
+       method. See also #17963.
+
+       * Address #18196 once again because people have still MakeMaker < 6.18
+       installed.
+
+2006-08-26  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.87_57
+
+       * Added by David Golden: support for CPAN::Reporter.
+
+2006-08-24  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.87_56
+
+       * Tiny documentation improvements
+
+       * Fix by David Golden to suppress warnings when using term_ornaments
+
+2006-07-29  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.87_55
+
+       * improve the heuristics when parsing PREREQ for scripts
+
+       * document CPAN::Module::as_glimpse changes and fix the case where we
+       have no author or no distro and added some tests for these cases
+
+2006-07-23  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.87_54
+
+       * fix #18165: new config option term_ornaments
+
+       * fix #20272: FirstTime::init did not preserve the space that signifies
+       "disabled program"
+
+2006-07-22  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.87_53
+
+       * make *scripts* (as opposed to modules) installable when the path of
+       the distro is given: you can now 'install ANDK/keepcool-0.344' and it is
+       stored as 'keepcool'
+
+       * the m command displays one column more: an equals sign if we have this
+       version installed, a less-than sign if our installed version of the
+       module is smaller and a space if we do not have this thing installed
+
+       * fix #18438: weird dependency chain issue that broke
+       amavis/SpamAssassin
+
+       * fix #20168: when a user has neither Module::Signature nor gnupg, do
+       not warn them
+
+       * patch by Matisse Enzer to support authenticating proxies
+
+       * new command "upgrade" installs newer versions of all installed modules
+       if there are any (feature requested by Martin Sluka)
+
+       * release 1.87_52
+
+       * add support for check_sigs configuration option (turn signature
+       checking on and off any time)
+
+       * fix #18011: improved initial configuration according to suggestions by
+       Vassilii Khachaturov
+
+2006-03-06  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.87_51
+
+       * patch by Max Maischein to quote commands that contain spaces as is
+       often the case on Windows systems (addresses #17877)
+
+       * do not display DSLIP_STATUS when it is empty; same thing for MANPAGE
+
+       * add a security advice to the manpage
+
+       * do not advertise Bundle::CPAN when a new CPAN is available, CPAN alone
+       should do
+
+2006-02-27  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.87
+
+       * new method dslip_status for Module objects
+
+       * no t/dot-cpan/ directory in the distro anymore and removed after test
+
+       * bugfix: when make clean failed, we did not list this as a fail
+
+       * more tests in t/30shell.t, sub coverage on CPAN.pm now >75%
+
+2006-02-23  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.86_53
+
+       * t/30shell emits two test headers (fixes #17816; Adam Kennedy)
+
+       * make Tarzip work better on uncompressed files; fixes test failure of
+       test t/12cpan.t work under some conditions
+
+       * t/30shell now skips tests that need uninstalled prerequisites and so
+       passes all tests on a bare 5.8.8 for me when CPAN_RUN_SHELL_TEST is set
+
+2006-02-22  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.86_52
+
+       * simplification of the concepts of home and of the CPAN/MyConfig.pm and
+       the CPAN/Config.pm. There were too many places that tried to do the same
+       thing. Should now be centralized and consistent.
+
+2006-02-21  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.86_51
+
+       * replace the concept of $ENV{HOME} with File::HomeDir (fixes #17759;
+       Adam Kennedy)
+
+       * remove a spurious CARRIAGE RETURN in the Todo file: it broke
+       Module::Signature on Windows (fixes #17746; Adam Kennedy)
+
+       * return empty string instead of undef when HAVE_MAKE is false (fixes
+       #17768; Adam Kennedy)
+
+       * do not try to use $CPAN::Frontend before it exists (fixes #17770; Adam
+       Kennedy)
+
+       * t/12cpan.t now behaves on 5.004 and 5.005
+
+       * t/30shell.t now can be run without Expect; needs to be enabled with
+       environment variable CPAN_RUN_SHELL_TEST in this case
+
+       * more testing in 30shell.t
+
+2006-02-20  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.86
+
+       * quick fix for a bug in the Checksums checking code: if the cache had
+       an old copy, it was in some cases not updated and if the file-to-check
+       was newer, a false alarm was triggered.
+
+       * I expect a 1.87 soonish, because we have open bugs: test 12cpan.t not
+       suited for old perls; test for the above bug missing.
+
+2006-02-19  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.85
+
+       * Fix for 'install Bundle:CPAN' on Windows machines (closes #17699; Adam
+       Kennedy)
+
+       * Make a separate distro for Bundle::CPAN (works around the bug for
+       older versions of CPAN)
+
+       * Another fix for bundles: in some cases CPAN.pm installed an older
+       bundle than the most recent
+
+       * more tests: CPAN.pm subroutine coverage now at 71.4%
+
+2006-02-15  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.84
+
+       * see detailed release notes for releases 1.83_51 upto 1.83_69 below
+
+       * highlights of the changes between 1.83 and 1.84: better error handling
+       with new "failed" command and in many other places; new config variable
+       ftp_passive is on by default; new command mkmyconfig; Module::Build
+       support should now work on Windows and work better on all platforms; new
+       methods for programmers CPAN::Module::distribution and
+       CPAN::Distribution::author; improved docs; prettier output; and last not
+       least a heavy dose of refactoring, bugfixing, and testing
+
+       * Thanks to the bunch of helpful contributors and bug reporters (you
+       know who you are:)
+
+2006-02-14  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.83_69
+
+       * much more testing (70% sub coverage in CPAN.pm)
+
+       * deprecated "dontload_hash" and introduced "donload_list" instead
+
+       * better handling of errors during 'perl Makefile.PL'
+
+       * turn on sorting for the dump command
+
+       * turn on sorting for the CONTAINSMODS attribute of Distribution objects
+
+       * env FTP_PASSIVE now set to true also when config variable ftp_passive
+       does not exist (brought up by Jarkko)
+
+       * patch by Sebastien Aperghis-Tramoni to avoid a SEGV with 5.004_05
+       which happens when exit is called within BEGIN
+
+2006-02-08  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.83_68
+
+       * bring 5.004 compatibility back
+
+       * kick out a 5.8.1 warning (Ken Williams)
+
+       * renaming all tests to NNxxx.t style
+
+       * less noise when Digest::SHA is not installed (closes 17598; Adam Kennedy)
+
+2006-02-06  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.83_67
+
+       * more tests
+
+2006-02-04  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.83_66
+
+       * add a new method CPAN::Distribution::author
+
+       * protect the usage of Text::Glob with a has_inst
+
+       * document CPAN::Module::distribution
+
+       * experimental and undocumented new method CPAN::Distribution::fast_yaml
+
+       * release 1.83_65
+
+       * much more testing in shell.t
+
+       * bugfix: protect "make test" from outer environment variable MAKEFLAGS
+
+       * bring "o conf help" back which was lost
+
+2006-02-02  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.83_64 (potential release candidate for 1.84)
+
+       * bugfix: when M:B specifies both requires AND build_requires AND then
+       has no YAML to write the META.yml file, THEN we did not merge the two
+       requiries. Seen in KCLARK/Text-RecordParser-v1.0.0.tar.gz.
+
+2006-02-01  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.83_63
+
+       * bugfix: when the CHECKSUMS file contains garbage, tell the user and
+       default to aborting the process (bug reported by Linda W)
+
+2006-01-31  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.83_62 came out today before this entry was written
+
+       * rename the LC_ALL macro so that it does not infect the whole
+       environment (Ken Williams)
+
+       * new command mkmyconfig: patch supplied by Tyler MacDonald
+
+2006-01-30  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.83_61
+
+       * After a bugreport from Randy Kobes, another few small fixes to make
+       sure that mbuild_install_build_command cannot make it through to be used
+       anywhere.
+
+       * release 1.83_60
+
+       * bugfix: Do not use ./Build directly on Windows, it must be called
+       together with the perl (fixes #17313; thanks to carl at fireartist for
+       the report and a patch skeleton)
+
+       * feature: 'o conf commit' now drops unknown config variables
+
+       * bugfix for very rare cases: do not use CPAN::Distrostatus object
+       methods on strings left over from the current session before a 'cpan
+       reload' introduces the CPAN::Distrostatus class
+
+       * bugfix: better switches for the call to curl
+
+       * bugfix: more checks after lynx if the command was successful or not
+
+       * docs: revisited the FAQ section
+
+       * bugfix: if a META.yml specified a prerequisite module that we do not
+       know, the whole prereq_pm became undef; now issues a warning and skips
+       the unknown thing
+
+2006-01-25  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.83_59
+
+       * new config variable ftp_passive which causes $ENV{FTP_PASSIVE} to be
+       set; fixes #17266 (Adam Kennedy)
+
+       * have 2 Default Hosts instead of one; fixes rt #17238 (Adam Kennedy)
+
+       * be much more verbose when reaching the last ressort external ftp;
+       fixes rt #17237 and #17241 (Adam Kennedy)
+
+       * give the cwd command more flexibility (stimulated by Ashley M. Kirchner)
+
+       * bugfix: honour build_requires
+
+2006-01-22  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.83_58
+
+       * command processor tweak on Win32 (Jan Dubois, Gisle Aas)
+
+       * README production was broken
+
+       * Ongoing heavy refactoring of FirstTime, currently still without
+       becoming visible to the user (Jim Cromie)
+
+       * More tests for CPAN::Version with output comparing the results with
+       Sort::Versions and version.pm
+
+       * bugfix: double check the "later" attribute before you excuse and unset
+       it if it is obsolete; fixes a bug where a postponed distro could be lost
+       from the queue
+
+       * output of as_glimpse more space efficient
+
+2006-01-19  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.83_57
+
+       * bugfix rt #17131 (Lee Goddard): better error messages on two
+       unrecoverable errors that require user intervention
+
+       * shell.t improved again: now the output reads really similar to a shell
+       session so we can determine which problems were leading to a failing
+       test
+
+2006-01-18  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.83_56
+
+       * bugfix rt #17089 (Adam Kennedy): the existance of a Build.PL without a
+       Makefile.PL implies a Module::Build dependency
+
+       * skipping the signature test now possible with "force"
+
+       * more tests in shell.t
+
+       * improved documentation
+
+       * new method CPAN::Module->distribution
+
+2006-01-14  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.83_55
+
+       * improve error handling on Net::FTP connections (R. Hauser; fixes rt
+       #1572)
+
+       * shell.t starts working on installations that have a CPAN/Config.pm
+
+2006-01-13  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.83_54
+
+       * conveniently handle $Config->{make} on systems that often switch
+       between dmake and nmake, like ActiveState's perl (Gisle Aas)
+
+       * better choice for command processor on Win32 (Gisle Aas)
+
+       * newest cpan script (1.51) from brian d foy
+
+       * "force ls" now refetches the CHECKSUMS files
+
+       * shell.t now conforming to Test-Anything-Protocol and hopefully working
+       on more platforms.
+
+2006-01-12  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.83_53
+
+       * bugfix: if we have no YAML and no Makefile, we could not determine
+       prereqs. Now fixed by using Module::Build.
+
+       * bugfix: b command on unpublished bundles was broken due to wrong
+       handling of missing RO elements.
+
+       * bugfix: do not die when you cannot verify a signature, proceed with a
+       fail instead.
+
+       * new command "failed" reports about failed invocations of make, test or
+       install on CPAN::Distribution objects.
+
+       * Jim's bold fight against the FirstTime dragons continues.
+
+2006-01-10  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.83_52 is a work in progress: Jim is proceeding with the
+       dressage of the FirstTime. It actually contains shell.t.
+
+2006-01-08  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.83_51 brings
+
+       * restructure FirstTime in a way to enable us to ask single questions RSN
+       (Jim Cromie)
+
+       * shell.t that can test dialogues
+
+       * bugfix: show_upload_date now asks yes/no instead of 1/0 (Ask B. Hansen)
+
+       * envariable CPAN_SHELL_LEVEL now available for subshells (Slaven Rezic)
+
+       * enable date/time warnings without the help of HTTP::Date (inspired by
+       a bogus bugreport on perl monks that was only due to wrong system time)
+
+       * bugfix: hide CPAN::Config from the indexer
+
+       * provide a more traditional style ChangeLog and Changes file
+
+2006-01-05  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.82 and 1.83 are quick bugfix releases.
+
+2006-01-03  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.81 adds on top of 1.80_58:
+
+       * bugfix: completion of debug options was not case insensitive
+
+       * bugfix: installation of distributions was broken for distros
+       not mentioned in the index
+
+       * include a hint that su might work as well as sudo in the dialog
+       about make_install_make_command and mbuild_install_build_command
+
+       * add Module::Signature to the Bundle and move Digest::SHA higher
+       up so they start working as soon as possible
+
+       * improve the dialog that ensues when bad signatures are
+       encountered
+
+2006-01-01  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.80_58 was a quick bugfix release
+
+2005-12-31  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.80_57 adds on top of 1.80_56 the following:
+
+       * prerequisites fixed: File::Temp was missing in PREREQ_PM and
+       Bundle
+
+       * reduce noise when $Debug is on
+
+       * improved handling of whitespace in filenames (Roland Bauer;
+       rt.cpan.org #3201)
+
+       * add the Module::Build configuration parameters to the required
+       parameters (thus users are relayed to the init dialog)
+
+       * import less symbols
+
+       * enhanced robustness if cwd gets removed while we're running
+       (Rhet Turnbull; rt.cpan.org #321)
+
+       * add "notest" to the completion table
+
+       * enhanced robustness when untar is failing or poses permission
+       problems
+
+       * iron out some buglets in the "ls GLOB" code
+
+       * enhanced robustness on "reload cpan" when the path to CPAN.pm
+       has changed
+
+       * replace some hash accesses with method calls for a cleaner
+       interface (Work in Progress; no user-visible changes)
+
+       * do not fail anymore when finding empty files left over from a
+       previous unsuccessful download
+
+       * uptodate message more descriptive (Adam Kennedy; rt.cpan.rg
+       #15580)
+
+2005-12-17  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * release 1.80_56 is a release candidate for 1.81
+
+       * integrate release 1.5 of brian's cpan script from
+       http://sourceforge.net/projects/brian-d-foy/
+
+       * Support for Module::Build: to set the preference for
+       Module::Build over MakeMaker, run
+
+         o conf prefer_installer MB
+         o conf commit
+
+       * ls command supports globbing; these work nicely:
+
+         ls KWILLIAMS/P*
+         ls JV/make*
+
+       this works too but is slow:
+
+         ls */*make*
+
+       * META.yml data replace the Makefile parsing code if YAML
+       available (compensating for the frequent wrong usage of the
+       requires element)
+
+       * support SHA256; stop using MD5
+
+       * support bzip2 compression; can be tested with 'install
+       ARTURAZ/Net-Vypress-Chat-0.72.1.tar.bz2'; the CPAN indexer does
+       not yet index bz2 distros but will probably start to do so as soon
+       as CPANPLUS supports bzip2
+
+       * tiny tweaks to make CPAN.pm run on a busybox (Guillaume Filion)
+
+       * bugfix: major speedup on all commands that need expansion of
+       regular expressions to module names
+
+       * prettier r command output: the 4th column of the 'r' command
+       drops the redundant X/XX/ prefix
+
+       * tolerant when you type one colon instead of two on module names
+
+2005-12-03  Andreas J. Koenig  <andreas.koenig.gmwojprw@franz.ak.mind.de>
+
+       * this is release 1.80
+
+       * support for Module::Signature courtesy Autrijus Tang
+
+       * separated out new module CPAN::Version that has muchly improved
+       support for multidot version notation that should make the
+       deployment of version.pm easy for everybody. During the last weeks
+       the indexer on PAUSE also got improved version.pm support and
+       spits out numified versions. This release is optimized for the new
+       version handling, regardless if used with or without version.pm
+       (Thanks to John Peacock and to Graham Barr for their help)
+
+       * new pragma 'notest' courtesy Slaven Rezic
+
+       * support for sudo in the config variable
+       'make_install_make_command' courtesy Michael Richardson
+
+       * new commands 'recent' and 'perldoc' courtesy Toni Prug
+
+       * improved wget support for Windows users courtesy Daniel
+
+       * cleanup internal use of CPAN::Frontend courtesy David Storrs
+
+       * fixes to distro bugs by Adriano Ferreira
+
+       * runs under 5.004_05 courtesy Sébastien Aperghis-Tramoni
+
+       * new feature 'show_upload_date': if set to true, all 'm' and 'd'
+       commands will display the upload date
+
+       * fix bug in FirstTime causing endless loop under some conditions
+
+       * better completion for config variables and a new warning if an
+       unregistered config variable is being set
+
+       * improved some error messages
+
+       * improved help menu (Thanks to David Golden for the suggestion)
+
+
+       Local Variables:
+       mode: change-log
+       change-log-default-name: "Changes"
+       tab-width: 2
+       left-margin: 2
+       End:
index 589b597..685c3b3 100644 (file)
+#!/usr/bin/perl -w -*- mode: cperl -*-
 use strict;
-use ExtUtils::MakeMaker;
-
-WriteMakefile (
-    NAME            => 'CPAN',
-    VERSION_FROM    => 'lib/CPAN.pm', # finds $VERSION
-    EXE_FILES       => ['scripts/cpan'],
-    AUTHOR          => 'Andreas Koenig <andreas.koenig.gmwojprw@franz.ak.mind.de>',
-    ABSTRACT_FROM   => 'lib/CPAN.pm',
-);
+use vars qw( $VERSION @ST_PREFS );
+BEGIN {$CPAN::Config_loaded=1}
+BEGIN {$CPAN::Config_loaded=1} # keep old perls with -w quiet
+use ExtUtils::MakeMaker qw(:DEFAULT);
+use File::Path;
+eval { require File::Spec; };
+my $HAVE_FILE_SPEC = !$@;
+eval { require YAML::Syck; };
+my $HAVE_YAML_SYCK = !$@;
+use File::Basename qw(basename);
+require Config;
+my $HAVE_MAKE = basename($Config::Config{make}) eq "make"; # file-scoped!
+
+@ST_PREFS = qw(
+              );
+
+
+my $Id = q$Id: Makefile.PL 146 2005-08-09 04:25:21Z k $;
+$VERSION = sprintf "%.3f", 1 + substr(q$Rev: 146 $,4)/1000;
+
+my $version_diff = 0; # we'll have to die if this becomes true
+my $version_from;
+{
+  local $^W;
+  $ExtUtils::MakeMaker::VERSION = eval $ExtUtils::MakeMaker::VERSION;
+}
+if ($HAVE_FILE_SPEC) {
+  $version_from = File::Spec->catfile(qw(lib CPAN.pm));
+  my $version_set_manually = 1; # not by SVN
+
+  if ($ARGV[0] && $ARGV[0] eq "--setversion") {
+    die "Your perl is a bit dated[$]].\nDo not make a release with it\n" if $] < 5.008;
+    die "Your MakeMaker is a bit dated[$ExtUtils::MakeMaker::VERSION].\nDo not make a release with it\n"
+        if $ExtUtils::MakeMaker::VERSION < 6.4502;
+    die "Your MakeMaker doesn't do the sign woodoo" unless
+        MM->can("signature_target");
+    shift @ARGV;
+    my $st;
+    local $ENV{LANG} = "C";
+    my $dirty = ! system "git status -a > /dev/null";
+    die "Not everything checked in or out?" if $dirty;
+
+    if ($version_set_manually) {
+      # we must control that the VERSION in CPAN.pm is the same as in the Makefile
+      unshift @INC, "lib";
+      require $version_from;
+      open my $fh, "make the-release-name|" or die;
+      my $have_version;
+      while (<$fh>) {
+        next unless /^version\s+([\d\._]+)/;
+        $have_version = eval $1;
+      }
+      die "could not determine current version from Makefile" unless $have_version;
+      eval q{
+      no warnings "numeric";
+      if ($CPAN::VERSION != $have_version) {
+        warn "Not equal: CPAN::VERSION[$CPAN::VERSION] Makefile version[$have_version]";
+        $version_diff = 1;
+      }
+};
+      die $@ if $@;
+    }
+    exit unless $version_diff;
+  }
+}
+
+# for 5.004_05 I installed all of them manually despite errors;
+# version hints as of 2006-02
+my $prereq_pm = {
+                 'File::Spec' => 0,   # KWILLIAMS; requires
+                                      # Scalar::Util;
+                                      # PathTools-3.16.tar.gz
+                 'File::Temp' => 0,   # TJENNESS; requires Test::More;
+                 'Scalar::Util' => 0, # GBARR;
+                                      # Scalar-List-Utils-1.18.tar.gz;
+                 'Test::Harness' => 2.62,
+                 'Test::More' => 0,   # MSCHWERN;
+                                      # Test-Simple-0.62.tar.gz;
+                };
+if ($^O eq "darwin") {
+  $prereq_pm->{'File::HomeDir'} = 0.69;
+}
+
+if ($HAVE_FILE_SPEC) {
+  # import PAUSE public key to user's keychain
+  require Config;
+  my $dir;
+  for $dir (split /$Config::Config{path_sep}/, $ENV{PATH}) {
+    my $abs = File::Spec->catfile($dir, 'gpg');
+    my $cmd;
+    if ($cmd = MM->maybe_command($abs)) {
+      print "Importing PAUSE public key into your GnuPG keychain... ";
+      system($cmd, '--quiet', '--import', <PAUSE*.pub>);
+      print "done!\n";
+      print "(You may wish to trust it locally with 'gpg --lsign-key 450F89EC')\n";
+      last;
+    }
+  }
+}
+
+if ($HAVE_FILE_SPEC) {
+    unless (-f File::Spec->catdir("t","CPAN","authors","id","A","AN","ANDK","NotInChecksums-0.000.tar.gz")) {
+        warn <<EOW;
+
+####-Note-for-repository-users-####
+Please try
+  make testdistros
+before running 'make test'
+It builds various missing pieces
+####-Note-for-repository-users-####
+
+EOW
+    }
+}
+my @sign = (MM->can("signature_target") ? (SIGN => 1) : ());
+# warn "sign[@sign]";
+WriteMakefile(
+              INSTALLDIRS  => 'perl',  # as it is coming with perl
+              NAME         => 'CPAN',
+              VERSION_FROM => $version_from,
+              EXE_FILES    => [qw(scripts/cpan)],
+              PREREQ_PM    => $prereq_pm,
+              ($ExtUtils::MakeMaker::VERSION >= 6.3002 ?
+               (LICENSE      => "perl") : (),
+              ),
+              ($ExtUtils::MakeMaker::VERSION >= 6.48 ?
+               (MIN_PERL_VERSION => '5.004') : (),
+              ),
+              clean        => {
+                               FILES => "lib/CPAN/Config.pm t/dot-cpan/FTPstats.yml",
+                              },
+              @sign,
+              ($] >= 5.005 ?
+               (
+                ABSTRACT_FROM  => 'lib/CPAN.pm', # retrieve abstract from module
+                AUTHOR         => 'Andreas Koenig <andreas.koenig.gmwojprw@franz.ak.mind.de>') : (),
+              ),
+              dist => {
+                       DIST_DEFAULT => join(" ", # note: order matters!
+                                            "verify-no-subdir",
+                                            "verify-changes-date",
+                                            "verify-changes-version",
+                                            "kwalify-distroprefs",
+                                            "Makefile",
+                                            "no_CR",
+                                            "META.yml",
+                                            "setversion",
+                                            "README",
+                                            "testdistros",
+                                            "all",
+                                            "tardist",
+                                           ),
+                       COMPRESS => 'gzip -9',
+                      },
+              # I took it from RT-CPAN ticket 30098:
+              ($ExtUtils::MakeMaker::VERSION >= 6.4502 ?
+               (META_ADD => {
+                             resources => {
+                                 repository => "git://github.com/andk/cpanpm.git",
+                             },
+                             keywords => ['CPAN','module','module installation'],
+                            }) : ()),
+             );
+
+if ($version_diff){
+  die "
+==> I had to update some \$VERSIONs <==
+==> Your Makefile has been rebuilt. <==
+==> Please rerun the make command.  <==
+";
+}
+
+package MY;
+
+sub macro {
+    q{
+LC_ALL_noexport=en_GB.utf8
+
+YAML_MODULE=YAML::Syck
+}
+}
+
+sub postamble {
+  return "" unless $HAVE_MAKE; # dmake has unknown issues with my Makefile
+  my @m;
+  push @m, q{
+.SUFFIXES: .rnc .rng
+
+.rnc.rng:
+       trang -I rnc -O rng $*.rnc $*.rng
+
+update: dd-prefs
+
+# the subdirs on MY OWN BOX are allowed here (only used for make dist!)
+OKDIRS=CPAN|DIST|bin|blib|cover_db|\
+       distroprefs|eg|inc|lib|logs|patches|perlbug|\
+       protocols|related|release-lib|scripts|t|talks
+
+verify-no-subdir:
+       @$(PERL) -e 'my$$s=join",",grep{!/^($(OKDIRS))\z/x&&-d($$_)}glob"*";' \
+               -e 'die"unexpected dir:$$s"if$$s'
+
+verify-changes-date:
+       @$(PERL) -ne 'BEGIN{my@t=(localtime)[5,4,3];$$t[0]+=1900;$$t[1]++;$$t=sprintf"%04d-%02d-%02d",@t}' \
+               -e '$$ok++,exit if /^$$t\s/; END{die "Alert: did not find <$$t> in Changes file" unless $$ok}' Changes
+
+verify-changes-version:
+       @$(PERL) -ne '$$ok++,exit if /\b$(VERSION)\b/; END{die "Alert: did not find <$(VERSION)> in Changes file" unless $$ok}' Changes
+
+kwalify-distroprefs:
+       `echo $(PERL) | sed -e 's/perl$$/slaymake/'` validate
+
+setversion:
+       $(PERL) Makefile.PL --setversion
+
+README: lib/CPAN.pm Makefile
+       -[ -r $@ ] && chmod +w $@
+       -$(PERL) -MPod::Text -e 'Pod::Text->new->parse_from_file(\*ARGV)' lib/CPAN.pm > $@
+
+the-release-name :
+       $(NOECHO) $(ECHO) 'version ' $(VERSION)
+       $(NOECHO) $(ECHO) 'release-name ' $(DISTVNAME).tar$(SUFFIX)
+
+release ::
+       /usr/bin/perl -Irelease-lib -S release $(DISTVNAME).tar$(SUFFIX)
+       rm -rf $(DISTVNAME)
+       git tag -m 'This is $(VERSION)' "$(VERSION)"
+
+# 16=Distribution; 32=Bundle; 32768=Queue
+depefails:
+       $(PERL) -Ilib -MCPAN -e 'CPAN::HandleConfig->load;$$CPAN::DEBUG|=16;$$CPAN::DEBUG|=32;$$CPAN::DEBUG|=32768;install(qw(CPAN::Test::Dummy::Perl5::Build::DepeFails));'
+
+logs/.exists :
+       mkdir -p logs
+       touch $@
+
+run :
+       $(PERL) -Ilib -MCPAN -eshell
+
+run_testenv_db :
+       $(PERL) -Ilib -It -MCPAN::MyConfig -MCPAN -deshell
+
+record-session :
+       $(PERL) -Ilib -MCPAN -e '$$CPAN::Suppress_readline=$$CPAN::Echo_readline=1;shell' | tee ttt.out
+
+run-with-sqlite :
+       $(PERL) -I$$HOME/.cpan -Ilib -MCPAN::SQLite -MCPAN::MyConfig -MCPAN -e '$$CPAN::Config->{use_sqlite}++; $$CPAN::Config->{sqlite_dbname}="cpandb-sqlite"; shell'
+
+testrun_very_offline : rm_mirrored_by run_emu_offline
+
+testrun_emu_offline :
+       $(PERL) -I$$HOME/.cpan -Ilib -MCPAN::MyConfig -MCPAN -e '@CPAN::Defaultsites = qw(file:///dev/null); $$CPAN::Config->{urllist} = []; shell'
+
+rm_mirrored_by :
+       rm -f $$HOME/.cpan/sources/MIRRORED.BY*
+
+testrun_http_only :
+       $(PERL) -I$$HOME/.cpan -Ilib -MCPAN::MyConfig -MCPAN -e '$$CPAN::Config->{urllist} = [qw(http://www.planet-elektronik.de/CPAN/)]; shell'
+
+urllist :
+       $(PERL) -Ilib -MCPAN -MCPAN::FirstTime -e 'CPAN::FirstTime::init("$$ENV{HOME}/.cpan/CPAN/MyConfig", args => [qw(urllist)])'
+
+runadmin :
+       $(PERL) -Ilib -MCPAN::Admin -eshell
+
+rundb :
+       $(PERL) -Ilib -MCPAN -deshell
+
+sign:
+       cpansign -s
+
+show-batch-signing-keys:
+       for f in PAUSE*.pub; do echo "++++$$f++++"; gpg --verbose --with-colons $$f; done
+
+show-imported:
+       gpg --list-sigs --with-colons 450F89EC
+
+# seems to need at least gnupg 1.4.2:
+upload-batch-signing-key:
+       gpg --send-key 450F89EC
+
+howto-release:
+       @$(ECHO) make ci dist \&\& make release
+
+META.yml: metafile
+       $(CP) $(DISTVNAME)/META.yml  ./META.yml
+
+install-devel-cover-unless-uptodate:
+       $(PERL) -Ilib -MCPAN -e 'CPAN::Shell->install("/home/src/perl/devel-cover/SVN/.") unless CPAN::Shell->expand("Module","Devel::Cover")->uptodate'
+
+install-devel-cover-unconditionally:
+       $(PERL) -Ilib -MCPAN -e 'CPAN::Shell->install("/home/src/perl/devel-cover/SVN/.")'
+
+testcover: testdistros install-devel-cover-unless-uptodate
+       :>SIGNATURE
+       $(PERL) -MDevel::Cover -e 0
+       `dirname $(PERL)`/cover -delete
+       HARNESS_PERL_SWITCHES=-MDevel::Cover $(MAKE) test
+       `dirname $(PERL)`/cover
+
+man:
+       $(PERL)doc -F lib/CPAN.pm
+
+testdistros: \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Build-1.03.tar.gz \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Build-DepeFails-1.02.tar.gz \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Build-Fails-1.03.tar.gz \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-BuildOrMake-1.02.tar.gz \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-1.05.tar.gz \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-CircDepeOne-1.00.tar.gz \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-CircDepeTwo-1.00.tar.gz \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-CircDepeThree-1.00.tar.gz \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-ConfReq-1.00.tar.gz \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Expect-1.00.tar.gz \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Failearly-1.02.tar.gz \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Features-1.06.tar.gz \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-UnsatPrereq-1.00.tar.gz \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Zip-1.03.zip \
+        t/CPAN/authors/id/A/AN/ANDK/NotInChecksums-0.000.tar.gz
+
+# sorry, unix centric (and only makes sense on a working copy of the
+# repository; else 'make test TEST_FILES=t/30shell.t TEST_VERBOSE=1'
+# will do)
+testshell-with-protocol: testdistros
+       $(PERL) -e 'for ("protocols"){-d $$_ or mkdir $$_, 0755}'
+       $(MAKE) test TEST_FILES=t/30shell.t TEST_VERBOSE=1 PERL='$(PERL)' | \
+               tee protocols/make-test-`date +%Y%m%dT%H%M%S`
+       ls -lt protocols | head
+
+testshell-with-protocol-without-expect: testdistros
+       $(PERL) -e 'for ("protocols"){-d $$_ or mkdir $$_, 0755}'
+       CPAN_RUN_SHELL_TEST_WITHOUT_EXPECT=1 $(MAKE) test \
+               TEST_FILES=t/30shell.t TEST_VERBOSE=1 | \
+               tee protocols/make-test-`date +%Y%m%dT%H%M%S`
+       ls -lt protocols | head
+
+testshell-with-protocol-twice: testdistros
+       $(PERL) -e 'for ("protocols"){-d $$_ or mkdir $$_, 0755}'
+       $(PERL) -p -i~ -e 's/colorize_output\D+\d/colorize_output=>0/' t/CPAN/TestConfig.pm
+       $(MAKE) test TEST_FILES=t/30shell.t TEST_VERBOSE=1 | \
+               tee protocols/make-test-`date +%Y%m%dT%H%M%S`
+       $(PERL) -p -i~ -e 's/colorize_output\D+\d/colorize_output=>1/' t/CPAN/TestConfig.pm
+       $(MAKE) test TEST_FILES=t/30shell.t TEST_VERBOSE=1 | \
+               tee protocols/make-test-`date +%Y%m%dT%H%M%S`
+       $(PERL) -p -i~ -e 's/colorize_output\D+\d/colorize_output=>0/' t/CPAN/TestConfig.pm
+       ls -ltr protocols | tail
+
+#
+# testdistros
+#
+
+t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Build-1.03.tar.gz: \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Build/Changes \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Build/MANIFEST \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Build/Build.PL \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Build/lib/CPAN/Test/Dummy/Perl5/Build.pm \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Build/t/00_load.t
+       cd t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Build && \
+               $(PERL) Build.PL && \
+               ./Build dist && \
+               mv CPAN-Test-Dummy-Perl5-Build-1.03.tar.gz .. && \
+               ./Build clean
+       ls -l $@
+
+t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Build-DepeFails-1.02.tar.gz: \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Build-DepeFails/Changes \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Build-DepeFails/MANIFEST \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Build-DepeFails/README \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Build-DepeFails/Build.PL \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Build-DepeFails/lib/CPAN/Test/Dummy/Perl5/Build/DepeFails.pm \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Build-DepeFails/t/00_load.t
+       cd t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Build-DepeFails && \
+               $(PERL) Build.PL && \
+               ./Build dist && \
+               mv CPAN-Test-Dummy-Perl5-Build-DepeFails-1.02.tar.gz .. && \
+               ./Build clean
+       ls -l $@
+
+t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Build-Fails-1.03.tar.gz: \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Build-Fails/Changes \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Build-Fails/MANIFEST \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Build-Fails/README \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Build-Fails/Build.PL \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Build-Fails/lib/CPAN/Test/Dummy/Perl5/Build/Fails.pm \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Build-Fails/t/00_load.t
+       cd t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Build-Fails && \
+               $(PERL) Build.PL && \
+               ./Build dist && \
+               mv CPAN-Test-Dummy-Perl5-Build-Fails-1.03.tar.gz .. && \
+               ./Build clean
+       ls -l $@
+
+t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-BuildOrMake-1.02.tar.gz: \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-BuildOrMake/MANIFEST \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-BuildOrMake/Build.PL \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-BuildOrMake/Makefile.PL \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-BuildOrMake/lib/CPAN/Test/Dummy/Perl5/BuildOrMake.pm \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-BuildOrMake/t/00_load.t
+       cd t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-BuildOrMake && \
+               $(PERL) Build.PL && \
+               ./Build dist && \
+               mv CPAN-Test-Dummy-Perl5-BuildOrMake-1.02.tar.gz .. && \
+               ./Build clean
+       ls -l $@
+
+t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-1.05.tar.gz: \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make/Changes \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make/MANIFEST \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make/Makefile.PL \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make/lib/Bundle/CpanTestDummies.pm \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make/lib/CPAN/Test/Dummy/Perl5/Make.pm \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make/t/00_load.t
+       cd t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make && \
+               $(PERL) Makefile.PL && \
+               $(MAKE) dist && \
+               mv CPAN-Test-Dummy-Perl5-Make-1.05.tar.gz .. && \
+               $(MAKE) clean
+       ls -l $@
+
+t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-CircDepeOne-1.00.tar.gz: \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-CircDepeOne/Changes \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-CircDepeOne/MANIFEST \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-CircDepeOne/Makefile.PL \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-CircDepeOne/lib/CPAN/Test/Dummy/Perl5/Make/CircDepeOne.pm \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-CircDepeOne/t/00_load.t
+       cd t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-CircDepeOne && \
+               $(PERL) Makefile.PL && \
+               $(MAKE) dist && \
+               mv CPAN-Test-Dummy-Perl5-Make-CircDepeOne-1.00.tar.gz .. && \
+               $(MAKE) clean
+       ls -l $@
+
+t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-CircDepeTwo-1.00.tar.gz: \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-CircDepeTwo/Changes \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-CircDepeTwo/MANIFEST \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-CircDepeTwo/Makefile.PL \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-CircDepeTwo/lib/CPAN/Test/Dummy/Perl5/Make/CircDepeTwo.pm \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-CircDepeTwo/t/00_load.t
+       cd t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-CircDepeTwo && \
+               $(PERL) Makefile.PL && \
+               $(MAKE) dist && \
+               mv CPAN-Test-Dummy-Perl5-Make-CircDepeTwo-1.00.tar.gz .. && \
+               $(MAKE) clean
+       ls -l $@
+
+t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-CircDepeThree-1.00.tar.gz: \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-CircDepeThree/Changes \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-CircDepeThree/MANIFEST \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-CircDepeThree/Makefile.PL \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-CircDepeThree/lib/CPAN/Test/Dummy/Perl5/Make/CircDepeThree.pm \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-CircDepeThree/t/00_load.t
+       cd t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-CircDepeThree && \
+               $(PERL) Makefile.PL && \
+               $(MAKE) dist && \
+               mv CPAN-Test-Dummy-Perl5-Make-CircDepeThree-1.00.tar.gz .. && \
+               $(MAKE) clean
+       ls -l $@
+
+t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-ConfReq-1.00.tar.gz: \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-ConfReq/Changes \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-ConfReq/MANIFEST \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-ConfReq/mymeta.yml \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-ConfReq/Makefile.PL \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-ConfReq/lib/CPAN/Test/Dummy/Perl5/Make/ConfReq.pm \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-ConfReq/t/00_load.t
+       cd t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-ConfReq && \
+               $(PERL) Makefile.PL open_the_backdoor && \
+               $(MAKE) dist && \
+               mv CPAN-Test-Dummy-Perl5-Make-ConfReq-1.00.tar.gz .. && \
+               $(MAKE) clean
+       ls -l $@
+
+t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Features-1.06.tar.gz: \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Features/Changes \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Features/MANIFEST \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Features/mymeta.yml \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Features/Makefile.PL \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Features/lib/CPAN/Test/Dummy/Perl5/Make/Features.pm \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Features/t/00_load.t
+       cd t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Features && \
+               $(PERL) Makefile.PL open_the_backdoor && \
+               $(MAKE) dist && \
+               mv CPAN-Test-Dummy-Perl5-Make-Features-1.06.tar.gz ../ && \
+               $(MAKE) clean
+       ls -l $@
+
+t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Expect-1.00.tar.gz: \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Expect/Changes \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Expect/MANIFEST \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Expect/Makefile.PL \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Expect/lib/CPAN/Test/Dummy/Perl5/Make/Expect.pm \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Expect/t/00_load.t
+       cd t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Expect && \
+               $(PERL) Makefile.PL && \
+               $(MAKE) dist && \
+               mv CPAN-Test-Dummy-Perl5-Make-Expect-1.00.tar.gz .. && \
+               $(MAKE) clean
+       ls -l $@
+
+t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Failearly-1.02.tar.gz: \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Failearly/MANIFEST \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Failearly/Makefile.PL \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Failearly/lib/CPAN/Test/Dummy/Perl5/Make/Failearly.pm
+       cd t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Failearly && \
+               $(PERL) Makefile.PL && \
+               $(MAKE) dist && \
+               mv CPAN-Test-Dummy-Perl5-Make-Failearly-1.02.tar.gz .. && \
+               $(MAKE) clean
+       ls -l $@
+
+t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-UnsatPrereq-1.00.tar.gz: \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-UnsatPrereq/Changes \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-UnsatPrereq/MANIFEST \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-UnsatPrereq/Makefile.PL \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-UnsatPrereq/README \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-UnsatPrereq/lib/CPAN/Test/Dummy/Perl5/Make/UnsatPrereq.pm \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-UnsatPrereq/t/00_load.t
+       cd t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-UnsatPrereq/ && \
+               $(PERL) Makefile.PL && \
+               $(MAKE) dist && \
+               mv CPAN-Test-Dummy-Perl5-Make-UnsatPrereq-1.00.tar.gz .. && \
+               $(MAKE) clean
+       ls -l $@
+
+t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Zip-1.03.zip: \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Zip/MANIFEST \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Zip/Makefile.PL \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Zip/lib/CPAN/Test/Dummy/Perl5/Make/Zip.pm \
+       t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Zip/t/00_load.t
+       cd t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Zip && \
+               $(PERL) Makefile.PL && \
+               $(MAKE) dist && \
+               mv CPAN-Test-Dummy-Perl5-Make-Zip-1.03.zip .. && \
+               $(MAKE) clean
+       ls -l $@
+
+t/CPAN/authors/id/A/AN/ANDK/NotInChecksums-0.000.tar.gz :
+       echo " ----No content---- " > t/CPAN/authors/id/A/AN/ANDK/tempfile
+       cd t/CPAN/authors/id/A/AN/ANDK && tar cvzf NotInChecksums-0.000.tar.gz tempfile
+       $(RM) t/CPAN/authors/id/A/AN/ANDK/tempfile
+       ls -l $@
+
+#
+#
+#
+
+clean ::
+       $(RM) t/CPAN/authors/id/A/AN/ANDK/*/Build \
+               t/CPAN/authors/id/A/AN/ANDK/*/Makefile.old
+       $(RM_RF) t/CPAN/authors/id/A/AN/ANDK/*/_build
+
+no_CR : META.yml
+       $(PERL) bin/no_CR.pl MANIFEST
+
+foreign-prefs : dd-prefs st-prefs
+
+dd-prefs ::
+       `echo $(PERL) | sed -e 's/perl$$/slaymake/'` dd-prefs
+
+st-prefs ::
+
+chlog ::
+
+};
+
+  for my $base (@main::ST_PREFS) {
+    push @m, qq{
+st-prefs :: $base.st
+
+};
+    if ($HAVE_YAML_SYCK) {
+      push @m, qq{$base.st : Makefile
+       \$(PERL) -MYAML::Syck=LoadFile -MStorable=nstore -e '\$\$x=shift; \@y=LoadFile("\$\$x.yml"); nstore(\\\@y, "\$\$x.st")' $base
+
+};
+    }
+  }
+
+  join "", @m;
+}
+
+sub dist_test {
+  return q{
+# if we depend on $(DISTVNAME).tar$(SUFFIX), then the rest of the
+# Makefile breaks our intent to NOT remake dist
+disttest :
+       rm -rf $(DISTVNAME)
+       tar xvzf $(DISTVNAME).tar$(SUFFIX)
+       cd $(DISTVNAME) && $(ABSPERLRUN) Makefile.PL
+       cd $(DISTVNAME) && $(MAKE) $(PASTHRU)
+       cd $(DISTVNAME) && $(MAKE) test $(PASTHRU)
+
+distdir ::
+       touch $(DISTVNAME)/SIGNATURE && $(CP) $(DISTVNAME)/SIGNATURE ./SIGNATURE
+       $(CP) $(DISTVNAME)/META.yml  ./META.yml
+       $(CP) $(DISTVNAME)/MANIFEST  ./MANIFEST
+
+}
+}
+
+sub distdir {
+  my $self = shift;
+  my $out = $self->SUPER::distdir;
+  $out =~ s/distdir :/distdir ::/g;
+  return $out;
+}
+
+# dist_dir was the name in very old MakeMaker as of 5.005_04
+sub dist_dir {
+  my $self = shift;
+  my $out = $self->SUPER::dist_dir;
+  $out =~ s/distdir :/distdir ::/g;
+  return $out;
+}
diff --git a/cpan/CPAN/README b/cpan/CPAN/README
new file mode 100644 (file)
index 0000000..374543c
--- /dev/null
@@ -0,0 +1,2102 @@
+NAME
+    CPAN - query, download and build perl modules from CPAN sites
+
+SYNOPSIS
+    Interactive mode:
+
+      perl -MCPAN -e shell
+
+    --or--
+
+      cpan
+
+    Basic commands:
+
+      # Modules:
+
+      cpan> install Acme::Meta                       # in the shell
+
+      CPAN::Shell->install("Acme::Meta");            # in perl
+
+      # Distributions:
+
+      cpan> install NWCLARK/Acme-Meta-0.02.tar.gz    # in the shell
+
+      CPAN::Shell->
+        install("NWCLARK/Acme-Meta-0.02.tar.gz");    # in perl
+
+      # module objects:
+
+      $mo = CPAN::Shell->expandany($mod);
+      $mo = CPAN::Shell->expand("Module",$mod);      # same thing
+
+      # distribution objects:
+
+      $do = CPAN::Shell->expand("Module",$mod)->distribution;
+      $do = CPAN::Shell->expandany($distro);         # same thing
+      $do = CPAN::Shell->expand("Distribution",
+                                $distro);            # same thing
+
+DESCRIPTION
+    The CPAN module automates or at least simplifies the make and install of
+    perl modules and extensions. It includes some primitive searching
+    capabilities and knows how to use Net::FTP, LWP, and certain external
+    download clients to fetch distributions from the net.
+
+    These are fetched from one or more mirrored CPAN (Comprehensive Perl
+    Archive Network) sites and unpacked in a dedicated directory.
+
+    The CPAN module also supports named and versioned *bundles* of modules.
+    Bundles simplify handling of sets of related modules. See Bundles below.
+
+    The package contains a session manager and a cache manager. The session
+    manager keeps track of what has been fetched, built, and installed in
+    the current session. The cache manager keeps track of the disk space
+    occupied by the make processes and deletes excess space using a simple
+    FIFO mechanism.
+
+    All methods provided are accessible in a programmer style and in an
+    interactive shell style.
+
+  CPAN::shell([$prompt, $command]) Starting Interactive Mode
+    Enter interactive mode by running
+
+        perl -MCPAN -e shell
+
+    or
+
+        cpan
+
+    which puts you into a readline interface. If "Term::ReadKey" and either
+    of "Term::ReadLine::Perl" or "Term::ReadLine::Gnu" are installed,
+    history and command completion are supported.
+
+    Once at the command line, type "h" for one-page help screen; the rest
+    should be self-explanatory.
+
+    The function call "shell" takes two optional arguments: one the prompt,
+    the second the default initial command line (the latter only works if a
+    real ReadLine interface module is installed).
+
+    The most common uses of the interactive modes are
+
+    Searching for authors, bundles, distribution files and modules
+      There are corresponding one-letter commands "a", "b", "d", and "m" for
+      each of the four categories and another, "i" for any of the mentioned
+      four. Each of the four entities is implemented as a class with
+      slightly differing methods for displaying an object.
+
+      Arguments to these commands are either strings exactly matching the
+      identification string of an object, or regular expressions matched
+      case-insensitively against various attributes of the objects. The
+      parser only recognizes a regular expression when you enclose it with
+      slashes.
+
+      The principle is that the number of objects found influences how an
+      item is displayed. If the search finds one item, the result is
+      displayed with the rather verbose method "as_string", but if more than
+      one is found, each object is displayed with the terse method
+      "as_glimpse".
+
+      Examples:
+
+        cpan> m Acme::MetaSyntactic
+        Module id = Acme::MetaSyntactic
+            CPAN_USERID  BOOK (Philippe Bruhat (BooK) <[...]>)
+            CPAN_VERSION 0.99
+            CPAN_FILE    B/BO/BOOK/Acme-MetaSyntactic-0.99.tar.gz
+            UPLOAD_DATE  2006-11-06
+            MANPAGE      Acme::MetaSyntactic - Themed metasyntactic variables names
+            INST_FILE    /usr/local/lib/perl/5.10.0/Acme/MetaSyntactic.pm
+            INST_VERSION 0.99
+        cpan> a BOOK
+        Author id = BOOK
+            EMAIL        [...]
+            FULLNAME     Philippe Bruhat (BooK)
+        cpan> d BOOK/Acme-MetaSyntactic-0.99.tar.gz
+        Distribution id = B/BO/BOOK/Acme-MetaSyntactic-0.99.tar.gz
+            CPAN_USERID  BOOK (Philippe Bruhat (BooK) <[...]>)
+            CONTAINSMODS Acme::MetaSyntactic Acme::MetaSyntactic::Alias [...]
+            UPLOAD_DATE  2006-11-06
+        cpan> m /lorem/
+        Module  = Acme::MetaSyntactic::loremipsum (BOOK/Acme-MetaSyntactic-0.99.tar.gz)
+        Module    Text::Lorem            (ADEOLA/Text-Lorem-0.3.tar.gz)
+        Module    Text::Lorem::More      (RKRIMEN/Text-Lorem-More-0.12.tar.gz)
+        Module    Text::Lorem::More::Source (RKRIMEN/Text-Lorem-More-0.12.tar.gz)
+        cpan> i /berlin/
+        Distribution    BEATNIK/Filter-NumberLines-0.02.tar.gz
+        Module  = DateTime::TimeZone::Europe::Berlin (DROLSKY/DateTime-TimeZone-0.7904.tar.gz)
+        Module    Filter::NumberLines    (BEATNIK/Filter-NumberLines-0.02.tar.gz)
+        Author          [...]
+
+      The examples illustrate several aspects: the first three queries
+      target modules, authors, or distros directly and yield exactly one
+      result. The last two use regular expressions and yield several
+      results. The last one targets all of bundles, modules, authors, and
+      distros simultaneously. When more than one result is available, they
+      are printed in one-line format.
+
+    "get", "make", "test", "install", "clean" modules or distributions
+      These commands take any number of arguments and investigate what is
+      necessary to perform the action. If the argument is a distribution
+      file name (recognized by embedded slashes), it is processed. If it is
+      a module, CPAN determines the distribution file in which this module
+      is included and processes that, following any dependencies named in
+      the module's META.yml or Makefile.PL (this behavior is controlled by
+      the configuration parameter "prerequisites_policy".)
+
+      "get" downloads a distribution file and untars or unzips it, "make"
+      builds it, "test" runs the test suite, and "install" installs it.
+
+      Any "make" or "test" is run unconditionally. An
+
+        install <distribution_file>
+
+      is also run unconditionally. But for
+
+        install <module>
+
+      CPAN checks whether an install is needed and prints *module up to
+      date* if the distribution file containing the module doesn't need
+      updating.
+
+      CPAN also keeps track of what it has done within the current session
+      and doesn't try to build a package a second time regardless of whether
+      it succeeded or not. It does not repeat a test run if the test has
+      been run successfully before. Same for install runs.
+
+      The "force" pragma may precede another command (currently: "get",
+      "make", "test", or "install") to execute the command from scratch and
+      attempt to continue past certain errors. See the section below on the
+      "force" and the "fforce" pragma.
+
+      The "notest" pragma skips the test part in the build process.
+
+      Example:
+
+          cpan> notest install Tk
+
+      A "clean" command results in a
+
+        make clean
+
+      being executed within the distribution file's working directory.
+
+    "readme", "perldoc", "look" module or distribution
+      "readme" displays the README file of the associated distribution.
+      "Look" gets and untars (if not yet done) the distribution file,
+      changes to the appropriate directory and opens a subshell process in
+      that directory. "perldoc" displays the module's pod documentation in
+      html or plain text format.
+
+    "ls" author
+    "ls" globbing_expression
+      The first form lists all distribution files in and below an author's
+      CPAN directory as stored in the CHECKUMS files distributed on CPAN.
+      The listing recurses into subdirectories.
+
+      The second form limits or expands the output with shell globbing as in
+      the following examples:
+
+            ls JV/make*
+            ls GSAR/*make*
+            ls */*make*
+
+      The last example is very slow and outputs extra progress indicators
+      that break the alignment of the result.
+
+      Note that globbing only lists directories explicitly asked for, for
+      example FOO/* will not list FOO/bar/Acme-Sthg-n.nn.tar.gz. This may be
+      regarded as a bug that may be changed in some future version.
+
+    "failed"
+      The "failed" command reports all distributions that failed on one of
+      "make", "test" or "install" for some reason in the currently running
+      shell session.
+
+    Persistence between sessions
+      If the "YAML" or the "YAML::Syck" module is installed a record of the
+      internal state of all modules is written to disk after each step. The
+      files contain a signature of the currently running perl version for
+      later perusal.
+
+      If the configurations variable "build_dir_reuse" is set to a true
+      value, then CPAN.pm reads the collected YAML files. If the stored
+      signature matches the currently running perl, the stored state is
+      loaded into memory such that persistence between sessions is
+      effectively established.
+
+    The "force" and the "fforce" pragma
+      To speed things up in complex installation scenarios, CPAN.pm keeps
+      track of what it has already done and refuses to do some things a
+      second time. A "get", a "make", and an "install" are not repeated. A
+      "test" is repeated only if the previous test was unsuccessful. The
+      diagnostic message when CPAN.pm refuses to do something a second time
+      is one of *Has already been *"unwrapped|made|tested successfully" or
+      something similar. Another situation where CPAN refuses to act is an
+      "install" if the corresponding "test" was not successful.
+
+      In all these cases, the user can override this stubborn behaviour by
+      prepending the command with the word force, for example:
+
+        cpan> force get Foo
+        cpan> force make AUTHOR/Bar-3.14.tar.gz
+        cpan> force test Baz
+        cpan> force install Acme::Meta
+
+      Each *forced* command is executed with the corresponding part of its
+      memory erased.
+
+      The "fforce" pragma is a variant that emulates a "force get" which
+      erases the entire memory followed by the action specified, effectively
+      restarting the whole get/make/test/install procedure from scratch.
+
+    Lockfile
+      Interactive sessions maintain a lockfile, by default "~/.cpan/.lock".
+      Batch jobs can run without a lockfile and not disturb each other.
+
+      The shell offers to run in *downgraded mode* when another process is
+      holding the lockfile. This is an experimental feature that is not yet
+      tested very well. This second shell then does not write the history
+      file, does not use the metadata file, and has a different prompt.
+
+    Signals
+      CPAN.pm installs signal handlers for SIGINT and SIGTERM. While you are
+      in the cpan-shell, it is intended that you can press "^C" anytime and
+      return to the cpan-shell prompt. A SIGTERM will cause the cpan-shell
+      to clean up and leave the shell loop. You can emulate the effect of a
+      SIGTERM by sending two consecutive SIGINTs, which usually means by
+      pressing "^C" twice.
+
+      CPAN.pm ignores SIGPIPE. If the user sets "inactivity_timeout", a
+      SIGALRM is used during the run of the "perl Makefile.PL" or "perl
+      Build.PL" subprocess.
+
+  CPAN::Shell
+    The commands available in the shell interface are methods in the package
+    CPAN::Shell. If you enter the shell command, your input is split by the
+    Text::ParseWords::shellwords() routine, which acts like most shells do.
+    The first word is interpreted as the method to be invoked, and the rest
+    of the words are treated as the method's arguments. Continuation lines
+    are supported by ending a line with a literal backslash.
+
+  autobundle
+    "autobundle" writes a bundle file into the
+    "$CPAN::Config->{cpan_home}/Bundle" directory. The file contains a list
+    of all modules that are both available from CPAN and currently installed
+    within @INC. The name of the bundle file is based on the current date
+    and a counter.
+
+  hosts
+    Note: this feature is still in alpha state and may change in future
+    versions of CPAN.pm
+
+    This commands provides a statistical overview over recent download
+    activities. The data for this is collected in the YAML file
+    "FTPstats.yml" in your "cpan_home" directory. If no YAML module is
+    configured or YAML not installed, no stats are provided.
+
+  mkmyconfig
+    mkmyconfig() writes your own CPAN::MyConfig file into your "~/.cpan/"
+    directory so that you can save your own preferences instead of the
+    system-wide ones.
+
+  recent ***EXPERIMENTAL COMMAND***
+    The "recent" command downloads a list of recent uploads to CPAN and
+    displays them *slowly*. While the command is running, a $SIG{INT} exits
+    the loop after displaying the current item.
+
+    Note: This command requires XML::LibXML installed.
+
+    Note: This whole command currently is just a hack and will probably
+    change in future versions of CPAN.pm, but the general approach will
+    likely remain.
+
+    Note: See also smoke
+
+  recompile
+    recompile() is a special command that takes no argument and runs the
+    make/test/install cycle with brute force over all installed dynamically
+    loadable extensions (aka XS modules) with 'force' in effect. The primary
+    purpose of this command is to finish a network installation. Imagine you
+    have a common source tree for two different architectures. You decide to
+    do a completely independent fresh installation. You start on one
+    architecture with the help of a Bundle file produced earlier. CPAN
+    installs the whole Bundle for you, but when you try to repeat the job on
+    the second architecture, CPAN responds with a "Foo up to date" message
+    for all modules. So you invoke CPAN's recompile on the second
+    architecture and you're done.
+
+    Another popular use for "recompile" is to act as a rescue in case your
+    perl breaks binary compatibility. If one of the modules that CPAN uses
+    is in turn depending on binary compatibility (so you cannot run CPAN
+    commands), then you should try the CPAN::Nox module for recovery.
+
+  report Bundle|Distribution|Module
+    The "report" command temporarily turns on the "test_report" config
+    variable, then runs the "force test" command with the given arguments.
+    The "force" pragma reruns the tests and repeats every step that might
+    have failed before.
+
+  smoke ***EXPERIMENTAL COMMAND***
+    *** WARNING: this command downloads and executes software from CPAN to
+    your computer of completely unknown status. You should never do this
+    with your normal account and better have a dedicated well separated and
+    secured machine to do this. ***
+
+    The "smoke" command takes the list of recent uploads to CPAN as provided
+    by the "recent" command and tests them all. While the command is running
+    $SIG{INT} is defined to mean that the current item shall be skipped.
+
+    Note: This whole command currently is just a hack and will probably
+    change in future versions of CPAN.pm, but the general approach will
+    likely remain.
+
+    Note: See also recent
+
+  upgrade [Module|/Regex/]...
+    The "upgrade" command first runs an "r" command with the given arguments
+    and then installs the newest versions of all modules that were listed by
+    that.
+
+  The four "CPAN::*" Classes: Author, Bundle, Module, Distribution
+    Although it may be considered internal, the class hierarchy does matter
+    for both users and programmer. CPAN.pm deals with the four classes
+    mentioned above, and those classes all share a set of methods. Classical
+    single polymorphism is in effect. A metaclass object registers all
+    objects of all kinds and indexes them with a string. The strings
+    referencing objects have a separated namespace (well, not completely
+    separated):
+
+             Namespace                         Class
+
+       words containing a "/" (slash)      Distribution
+        words starting with Bundle::          Bundle
+              everything else            Module or Author
+
+    Modules know their associated Distribution objects. They always refer to
+    the most recent official release. Developers may mark their releases as
+    unstable development versions (by inserting an underbar into the module
+    version number which will also be reflected in the distribution name
+    when you run 'make dist'), so the really hottest and newest distribution
+    is not always the default. If a module Foo circulates on CPAN in both
+    version 1.23 and 1.23_90, CPAN.pm offers a convenient way to install
+    version 1.23 by saying
+
+        install Foo
+
+    This would install the complete distribution file (say
+    BAR/Foo-1.23.tar.gz) with all accompanying material. But if you would
+    like to install version 1.23_90, you need to know where the distribution
+    file resides on CPAN relative to the authors/id/ directory. If the
+    author is BAR, this might be BAR/Foo-1.23_90.tar.gz; so you would have
+    to say
+
+        install BAR/Foo-1.23_90.tar.gz
+
+    The first example will be driven by an object of the class CPAN::Module,
+    the second by an object of class CPAN::Distribution.
+
+  Integrating local directories
+    Note: this feature is still in alpha state and may change in future
+    versions of CPAN.pm
+
+    Distribution objects are normally distributions from the CPAN, but there
+    is a slightly degenerate case for Distribution objects, too, of projects
+    held on the local disk. These distribution objects have the same name as
+    the local directory and end with a dot. A dot by itself is also allowed
+    for the current directory at the time CPAN.pm was used. All actions such
+    as "make", "test", and "install" are applied directly to that directory.
+    This gives the command "cpan ." an interesting touch: while the normal
+    mantra of installing a CPAN module without CPAN.pm is one of
+
+        perl Makefile.PL                 perl Build.PL
+               ( go and get prerequisites )
+        make                             ./Build
+        make test                        ./Build test
+        make install                     ./Build install
+
+    the command "cpan ." does all of this at once. It figures out which of
+    the two mantras is appropriate, fetches and installs all prerequisites,
+    takes care of them recursively, and finally finishes the installation of
+    the module in the current directory, be it a CPAN module or not.
+
+    The typical usage case is for private modules or working copies of
+    projects from remote repositories on the local disk.
+
+  Redirection
+    The usual shell redirection symbols " | " and ">" are recognized by the
+    cpan shell only when surrounded by whitespace. So piping to pager or
+    redirecting output into a file works somewhat as in a normal shell, with
+    the stipulation that you must type extra spaces.
+
+CONFIGURATION
+    When the CPAN module is used for the first time, a configuration
+    dialogue tries to determine a couple of site specific options. The
+    result of the dialog is stored in a hash reference $CPAN::Config in a
+    file CPAN/Config.pm.
+
+    Default values defined in the CPAN/Config.pm file can be overridden in a
+    user specific file: CPAN/MyConfig.pm. Such a file is best placed in
+    "$HOME/.cpan/CPAN/MyConfig.pm", because "$HOME/.cpan" is added to the
+    search path of the CPAN module before the use() or require() statements.
+    The mkmyconfig command writes this file for you.
+
+    The "o conf" command has various bells and whistles:
+
+    completion support
+        If you have a ReadLine module installed, you can hit TAB at any
+        point of the commandline and "o conf" will offer you completion for
+        the built-in subcommands and/or config variable names.
+
+    displaying some help: o conf help
+        Displays a short help
+
+    displaying current values: o conf [KEY]
+        Displays the current value(s) for this config variable. Without KEY,
+        displays all subcommands and config variables.
+
+        Example:
+
+          o conf shell
+
+        If KEY starts and ends with a slash, the string in between is
+        treated as a regular expression and only keys matching this regex
+        are displayed
+
+        Example:
+
+          o conf /color/
+
+    changing of scalar values: o conf KEY VALUE
+        Sets the config variable KEY to VALUE. The empty string can be
+        specified as usual in shells, with '' or ""
+
+        Example:
+
+          o conf wget /usr/bin/wget
+
+    changing of list values: o conf KEY SHIFT|UNSHIFT|PUSH|POP|SPLICE|LIST
+        If a config variable name ends with "list", it is a list. "o conf
+        KEY shift" removes the first element of the list, "o conf KEY pop"
+        removes the last element of the list. "o conf KEYS unshift LIST"
+        prepends a list of values to the list, "o conf KEYS push LIST"
+        appends a list of valued to the list.
+
+        Likewise, "o conf KEY splice LIST" passes the LIST to the
+        corresponding splice command.
+
+        Finally, any other list of arguments is taken as a new list value
+        for the KEY variable discarding the previous value.
+
+        Examples:
+
+          o conf urllist unshift http://cpan.dev.local/CPAN
+          o conf urllist splice 3 1
+          o conf urllist http://cpan1.local http://cpan2.local ftp://ftp.perl.org
+
+    reverting to saved: o conf defaults
+        Reverts all config variables to the state in the saved config file.
+
+    saving the config: o conf commit
+        Saves all config variables to the current config file
+        (CPAN/Config.pm or CPAN/MyConfig.pm that was loaded at start).
+
+    The configuration dialog can be started any time later again by issuing
+    the command " o conf init " in the CPAN shell. A subset of the
+    configuration dialog can be run by issuing "o conf init WORD" where WORD
+    is any valid config variable or a regular expression.
+
+  Config Variables
+    The following keys in the hash reference $CPAN::Config are currently
+    defined:
+
+      applypatch         path to external prg
+      auto_commit        commit all changes to config variables to disk
+      build_cache        size of cache for directories to build modules
+      build_dir          locally accessible directory to build modules
+      build_dir_reuse    boolean if distros in build_dir are persistent
+      build_requires_install_policy
+                         to install or not to install when a module is
+                         only needed for building. yes|no|ask/yes|ask/no
+      bzip2              path to external prg
+      cache_metadata     use serializer to cache metadata
+      check_sigs         if signatures should be verified
+      colorize_debug     Term::ANSIColor attributes for debugging output
+      colorize_output    boolean if Term::ANSIColor should colorize output
+      colorize_print     Term::ANSIColor attributes for normal output
+      colorize_warn      Term::ANSIColor attributes for warnings
+      commandnumber_in_prompt
+                         boolean if you want to see current command number
+      commands_quote     preferred character to use for quoting external
+                         commands when running them. Defaults to double
+                         quote on Windows, single tick everywhere else;
+                         can be set to space to disable quoting
+      connect_to_internet_ok
+                         whether to ask if opening a connection is ok before
+                         urllist is specified
+      cpan_home          local directory reserved for this package
+      curl               path to external prg
+      dontload_hash      DEPRECATED
+      dontload_list      arrayref: modules in the list will not be
+                         loaded by the CPAN::has_inst() routine
+      ftp                path to external prg
+      ftp_passive        if set, the envariable FTP_PASSIVE is set for downloads
+      ftp_proxy          proxy host for ftp requests
+      ftpstats_period    max number of days to keep download statistics
+      ftpstats_size      max number of items to keep in the download statistics
+      getcwd             see below
+      gpg                path to external prg
+      gzip               location of external program gzip
+      halt_on_failure    stop processing after the first failure of queued
+                         items or dependencies
+      histfile           file to maintain history between sessions
+      histsize           maximum number of lines to keep in histfile
+      http_proxy         proxy host for http requests
+      inactivity_timeout breaks interactive Makefile.PLs or Build.PLs
+                         after this many seconds inactivity. Set to 0 to
+                         disable timeouts.
+      index_expire       refetch index files after this many days 
+      inhibit_startup_message
+                         if true, suppress the startup message
+      keep_source_where  directory in which to keep the source (if we do)
+      load_module_verbosity
+                         report loading of optional modules used by CPAN.pm
+      lynx               path to external prg
+      make               location of external make program
+      make_arg           arguments that should always be passed to 'make'
+      make_install_make_command
+                         the make command for running 'make install', for
+                         example 'sudo make'
+      make_install_arg   same as make_arg for 'make install'
+      makepl_arg         arguments passed to 'perl Makefile.PL'
+      mbuild_arg         arguments passed to './Build'
+      mbuild_install_arg arguments passed to './Build install'
+      mbuild_install_build_command
+                         command to use instead of './Build' when we are
+                         in the install stage, for example 'sudo ./Build'
+      mbuildpl_arg       arguments passed to 'perl Build.PL'
+      ncftp              path to external prg
+      ncftpget           path to external prg
+      no_proxy           don't proxy to these hosts/domains (comma separated list)
+      pager              location of external program more (or any pager)
+      password           your password if you CPAN server wants one
+      patch              path to external prg
+      patches_dir        local directory containing patch files
+      perl5lib_verbosity verbosity level for PERL5LIB additions
+      prefer_installer   legal values are MB and EUMM: if a module comes
+                         with both a Makefile.PL and a Build.PL, use the
+                         former (EUMM) or the latter (MB); if the module
+                         comes with only one of the two, that one will be
+                         used no matter the setting
+      prerequisites_policy
+                         what to do if you are missing module prerequisites
+                         ('follow' automatically, 'ask' me, or 'ignore')
+      prefs_dir          local directory to store per-distro build options
+      proxy_user         username for accessing an authenticating proxy
+      proxy_pass         password for accessing an authenticating proxy
+      randomize_urllist  add some randomness to the sequence of the urllist
+      scan_cache         controls scanning of cache ('atstart' or 'never')
+      shell              your favorite shell
+      show_unparsable_versions
+                         boolean if r command tells which modules are versionless
+      show_upload_date   boolean if commands should try to determine upload date
+      show_zero_versions boolean if r command tells for which modules $version==0
+      tar                location of external program tar
+      tar_verbosity      verbosity level for the tar command
+      term_is_latin      deprecated: if true Unicode is translated to ISO-8859-1
+                         (and nonsense for characters outside latin range)
+      term_ornaments     boolean to turn ReadLine ornamenting on/off
+      test_report        email test reports (if CPAN::Reporter is installed)
+      trust_test_report_history
+                         skip testing when previously tested ok (according to
+                         CPAN::Reporter history)
+      unzip              location of external program unzip
+      urllist            arrayref to nearby CPAN sites (or equivalent locations)
+      use_sqlite         use CPAN::SQLite for metadata storage (fast and lean)
+      username           your username if you CPAN server wants one
+      wait_list          arrayref to a wait server to try (See CPAN::WAIT)
+      wget               path to external prg
+      yaml_load_code     enable YAML code deserialisation via CPAN::DeferredCode
+      yaml_module        which module to use to read/write YAML files
+
+    You can set and query each of these options interactively in the cpan
+    shell with the "o conf" or the "o conf init" command as specified below.
+
+    "o conf <scalar option>"
+      prints the current value of the *scalar option*
+
+    "o conf <scalar option> <value>"
+      Sets the value of the *scalar option* to *value*
+
+    "o conf <list option>"
+      prints the current value of the *list option* in MakeMaker's neatvalue
+      format.
+
+    "o conf <list option> [shift|pop]"
+      shifts or pops the array in the *list option* variable
+
+    "o conf <list option> [unshift|push|splice] <list>"
+      works like the corresponding perl commands.
+
+    interactive editing: o conf init [MATCH|LIST]
+      Runs an interactive configuration dialog for matching variables.
+      Without argument runs the dialog over all supported config variables.
+      To specify a MATCH the argument must be enclosed by slashes.
+
+      Examples:
+
+        o conf init ftp_passive ftp_proxy
+        o conf init /color/
+
+      Note: this method of setting config variables often provides more
+      explanation about the functioning of a variable than the manpage.
+
+  CPAN::anycwd($path): Note on config variable getcwd
+    CPAN.pm changes the current working directory often and needs to
+    determine its own current working directory. By default it uses
+    Cwd::cwd, but if for some reason this doesn't work on your system,
+    configure alternatives according to the following table:
+
+    cwd Calls Cwd::cwd
+
+    getcwd
+        Calls Cwd::getcwd
+
+    fastcwd
+        Calls Cwd::fastcwd
+
+    backtickcwd
+        Calls the external command cwd.
+
+  Note on the format of the urllist parameter
+    urllist parameters are URLs according to RFC 1738. We do a little
+    guessing if your URL is not compliant, but if you have problems with
+    "file" URLs, please try the correct format. Either:
+
+        file://localhost/whatever/ftp/pub/CPAN/
+
+    or
+
+        file:///home/ftp/pub/CPAN/
+
+  The urllist parameter has CD-ROM support
+    The "urllist" parameter of the configuration table contains a list of
+    URLs used for downloading. If the list contains any "file" URLs, CPAN
+    always tries there first. This feature is disabled for index files. So
+    the recommendation for the owner of a CD-ROM with CPAN contents is:
+    include your local, possibly outdated CD-ROM as a "file" URL at the end
+    of urllist, e.g.
+
+      o conf urllist push file://localhost/CDROM/CPAN
+
+    CPAN.pm will then fetch the index files from one of the CPAN sites that
+    come at the beginning of urllist. It will later check for each module to
+    see whether there is a local copy of the most recent version.
+
+    Another peculiarity of urllist is that the site that we could
+    successfully fetch the last file from automatically gets a preference
+    token and is tried as the first site for the next request. So if you add
+    a new site at runtime it may happen that the previously preferred site
+    will be tried another time. This means that if you want to disallow a
+    site for the next transfer, it must be explicitly removed from urllist.
+
+  Maintaining the urllist parameter
+    If you have YAML.pm (or some other YAML module configured in
+    "yaml_module") installed, CPAN.pm collects a few statistical data about
+    recent downloads. You can view the statistics with the "hosts" command
+    or inspect them directly by looking into the "FTPstats.yml" file in your
+    "cpan_home" directory.
+
+    To get some interesting statistics, it is recommended that
+    "randomize_urllist" be set; this introduces some amount of randomness
+    into the URL selection.
+
+  The "requires" and "build_requires" dependency declarations
+    Since CPAN.pm version 1.88_51 modules declared as "build_requires" by a
+    distribution are treated differently depending on the config variable
+    "build_requires_install_policy". By setting
+    "build_requires_install_policy" to "no", such a module is not installed.
+    It is only built and tested, and then kept in the list of tested but
+    uninstalled modules. As such, it is available during the build of the
+    dependent module by integrating the path to the "blib/arch" and
+    "blib/lib" directories in the environment variable PERL5LIB. If
+    "build_requires_install_policy" is set ti "yes", then both modules
+    declared as "requires" and those declared as "build_requires" are
+    treated alike. By setting to "ask/yes" or "ask/no", CPAN.pm asks the
+    user and sets the default accordingly.
+
+  Configuration for individual distributions (*Distroprefs*)
+    (Note: This feature has been introduced in CPAN.pm 1.8854 and is still
+    considered beta quality)
+
+    Distributions on CPAN usually behave according to what we call the CPAN
+    mantra. Or since the advent of Module::Build we should talk about two
+    mantras:
+
+        perl Makefile.PL     perl Build.PL
+        make                 ./Build
+        make test            ./Build test
+        make install         ./Build install
+
+    But some modules cannot be built with this mantra. They try to get some
+    extra data from the user via the environment, extra arguments, or
+    interactively--thus disturbing the installation of large bundles like
+    Phalanx100 or modules with many dependencies like Plagger.
+
+    The distroprefs system of "CPAN.pm" addresses this problem by allowing
+    the user to specify extra informations and recipes in YAML files to
+    either
+
+    *   pass additional arguments to one of the four commands,
+
+    *   set environment variables
+
+    *   instantiate an Expect object that reads from the console, waits for
+        some regular expressions and enters some answers
+
+    *   temporarily override assorted "CPAN.pm" configuration variables
+
+    *   specify dependencies the original maintainer forgot
+
+    *   disable the installation of an object altogether
+
+    See the YAML and Data::Dumper files that come with the "CPAN.pm"
+    distribution in the "distroprefs/" directory for examples.
+
+  Filenames
+    The YAML files themselves must have the ".yml" extension; all other
+    files are ignored (for two exceptions see *Fallback Data::Dumper and
+    Storable* below). The containing directory can be specified in "CPAN.pm"
+    in the "prefs_dir" config variable. Try "o conf init prefs_dir" in the
+    CPAN shell to set and activate the distroprefs system.
+
+    Every YAML file may contain arbitrary documents according to the YAML
+    specification, and every document is treated as an entity that can
+    specify the treatment of a single distribution.
+
+    Filenames can be picked arbitrarily; "CPAN.pm" always reads all files
+    (in alphabetical order) and takes the key "match" (see below in
+    *Language Specs*) as a hashref containing match criteria that determine
+    if the current distribution matches the YAML document or not.
+
+  Fallback Data::Dumper and Storable
+    If neither your configured "yaml_module" nor YAML.pm is installed,
+    CPAN.pm falls back to using Data::Dumper and Storable and looks for
+    files with the extensions ".dd" or ".st" in the "prefs_dir" directory.
+    These files are expected to contain one or more hashrefs. For
+    Data::Dumper generated files, this is expected to be done with by
+    defining $VAR1, $VAR2, etc. The YAML shell would produce these with the
+    command
+
+        ysh < somefile.yml > somefile.dd
+
+    For Storable files the rule is that they must be constructed such that
+    "Storable::retrieve(file)" returns an array reference and the array
+    elements represent one distropref object each. The conversion from YAML
+    would look like so:
+
+        perl -MYAML=LoadFile -MStorable=nstore -e '
+            @y=LoadFile(shift);
+            nstore(\@y, shift)' somefile.yml somefile.st
+
+    In bootstrapping situations it is usually sufficient to translate only a
+    few YAML files to Data::Dumper for crucial modules like "YAML::Syck",
+    "YAML.pm" and "Expect.pm". If you prefer Storable over Data::Dumper,
+    remember to pull out a Storable version that writes an older format than
+    all the other Storable versions that will need to read them.
+
+  Blueprint
+    The following example contains all supported keywords and structures
+    with the exception of "eexpect" which can be used instead of "expect".
+
+      ---
+      comment: "Demo"
+      match:
+        module: "Dancing::Queen"
+        distribution: "^CHACHACHA/Dancing-"
+        not_distribution: "\.zip$"
+        perl: "/usr/local/cariba-perl/bin/perl"
+        perlconfig:
+          archname: "freebsd"
+          not_cc: "gcc"
+        env:
+          DANCING_FLOOR: "Shubiduh"
+      disabled: 1
+      cpanconfig:
+        make: gmake
+      pl:
+        args:
+          - "--somearg=specialcase"
+
+        env: {}
+
+        expect:
+          - "Which is your favorite fruit"
+          - "apple\n"
+
+      make:
+        args:
+          - all
+          - extra-all
+
+        env: {}
+
+        expect: []
+
+        commendline: "echo SKIPPING make"
+
+      test:
+        args: []
+
+        env: {}
+
+        expect: []
+
+      install:
+        args: []
+
+        env:
+          WANT_TO_INSTALL: YES
+
+        expect:
+          - "Do you really want to install"
+          - "y\n"
+
+      patches:
+        - "ABCDE/Fedcba-3.14-ABCDE-01.patch"
+
+      depends:
+        configure_requires:
+          LWP: 5.8
+        build_requires:
+          Test::Exception: 0.25
+        requires:
+          Spiffy: 0.30
+
+  Language Specs
+    Every YAML document represents a single hash reference. The valid keys
+    in this hash are as follows:
+
+    comment [scalar]
+        A comment
+
+    cpanconfig [hash]
+        Temporarily override assorted "CPAN.pm" configuration variables.
+
+        Supported are: "build_requires_install_policy", "check_sigs",
+        "make", "make_install_make_command", "prefer_installer",
+        "test_report". Please report as a bug when you need another one
+        supported.
+
+    depends [hash] *** EXPERIMENTAL FEATURE ***
+        All three types, namely "configure_requires", "build_requires", and
+        "requires" are supported in the way specified in the META.yml
+        specification. The current implementation *merges* the specified
+        dependencies with those declared by the package maintainer. In a
+        future implementation this may be changed to override the original
+        declaration.
+
+    disabled [boolean]
+        Specifies that this distribution shall not be processed at all.
+
+    features [array] *** EXPERIMENTAL FEATURE ***
+        Experimental implementation to deal with optional_features from
+        META.yml. Still needs coordination with installer software and
+        currently works only for META.yml declaring "dynamic_config=0". Use
+        with caution.
+
+    goto [string]
+        The canonical name of a delegate distribution to install instead.
+        Useful when a new version, although it tests OK itself, breaks
+        something else or a developer release or a fork is already uploaded
+        that is better than the last released version.
+
+    install [hash]
+        Processing instructions for the "make install" or "./Build install"
+        phase of the CPAN mantra. See below under *Processing Instructions*.
+
+    make [hash]
+        Processing instructions for the "make" or "./Build" phase of the
+        CPAN mantra. See below under *Processing Instructions*.
+
+    match [hash]
+        A hashref with one or more of the keys "distribution", "modules",
+        "perl", "perlconfig", and "env" that specify whether a document is
+        targeted at a specific CPAN distribution or installation. Keys
+        prefixed with "not_" negates the corresponding match.
+
+        The corresponding values are interpreted as regular expressions. The
+        "distribution" related one will be matched against the canonical
+        distribution name, e.g. "AUTHOR/Foo-Bar-3.14.tar.gz".
+
+        The "module" related one will be matched against *all* modules
+        contained in the distribution until one module matches.
+
+        The "perl" related one will be matched against $^X (but with the
+        absolute path).
+
+        The value associated with "perlconfig" is itself a hashref that is
+        matched against corresponding values in the %Config::Config hash
+        living in the "Config.pm" module. Keys prefixed with "not_" negates
+        the corresponding match.
+
+        The value associated with "env" is itself a hashref that is matched
+        against corresponding values in the %ENV hash. Keys prefixed with
+        "not_" negates the corresponding match.
+
+        If more than one restriction of "module", "distribution", etc. is
+        specified, the results of the separately computed match values must
+        all match. If so, the hashref represented by the YAML document is
+        returned as the preference structure for the current distribution.
+
+    patches [array]
+        An array of patches on CPAN or on the local disk to be applied in
+        order via an external patch program. If the value for the "-p"
+        parameter is 0 or 1 is determined by reading the patch beforehand.
+        The path to each patch is either an absolute path on the local
+        filesystem or relative to a patch directory specified in the
+        "patches_dir" configuration variable or in the format of a canonical
+        distroname. For examples please consult the distroprefs/ directory
+        in the CPAN.pm distribution (these examples are not installed by
+        default).
+
+        Note: if the "applypatch" program is installed and "CPAN::Config"
+        knows about it and a patch is written by the "makepatch" program,
+        then "CPAN.pm" lets "applypatch" apply the patch. Both "makepatch"
+        and "applypatch" are available from CPAN in the "JV/makepatch-*"
+        distribution.
+
+    pl [hash]
+        Processing instructions for the "perl Makefile.PL" or "perl
+        Build.PL" phase of the CPAN mantra. See below under *Processing
+        Instructions*.
+
+    test [hash]
+        Processing instructions for the "make test" or "./Build test" phase
+        of the CPAN mantra. See below under *Processing Instructions*.
+
+  Processing Instructions
+    args [array]
+        Arguments to be added to the command line
+
+    commandline
+        A full commandline to run via "system()". During execution, the
+        environment variable PERL is set to $^X (but with an absolute path).
+        If "commandline" is specified, "args" is not used.
+
+    eexpect [hash]
+        Extended "expect". This is a hash reference with four allowed keys,
+        "mode", "timeout", "reuse", and "talk".
+
+        "mode" may have the values "deterministic" for the case where all
+        questions come in the order written down and "anyorder" for the case
+        where the questions may come in any order. The default mode is
+        "deterministic".
+
+        "timeout" denotes a timeout in seconds. Floating-point timeouts are
+        OK. With "mode=deterministic", the timeout denotes the timeout per
+        question; with "mode=anyorder" it denotes the timeout per byte
+        received from the stream or questions.
+
+        "talk" is a reference to an array that contains alternating
+        questions and answers. Questions are regular expressions and answers
+        are literal strings. The Expect module watches the stream from the
+        execution of the external program ("perl Makefile.PL", "perl
+        Build.PL", "make", etc.).
+
+        For "mode=deterministic", the CPAN.pm injects the corresponding
+        answer as soon as the stream matches the regular expression.
+
+        For "mode=anyorder" CPAN.pm answers a question as soon as the
+        timeout is reached for the next byte in the input stream. In this
+        mode you can use the "reuse" parameter to decide what will happen
+        with a question-answer pair after it has been used. In the default
+        case (reuse=0) it is removed from the array, avoiding being used
+        again accidentally. If you want to answer the question "Do you
+        really want to do that" several times, then it must be included in
+        the array at least as often as you want this answer to be given.
+        Setting the parameter "reuse" to 1 makes this repetition
+        unnecessary.
+
+    env [hash]
+        Environment variables to be set during the command
+
+    expect [array]
+        "expect: <array>" is a short notation for
+
+        eexpect: mode: deterministic timeout: 15 talk: <array>
+
+  Schema verification with "Kwalify"
+    If you have the "Kwalify" module installed (which is part of the
+    Bundle::CPANxxl), then all your distroprefs files are checked for
+    syntactic correctness.
+
+  Example Distroprefs Files
+    "CPAN.pm" comes with a collection of example YAML files. Note that these
+    are really just examples and should not be used without care because
+    they cannot fit everybody's purpose. After all, the authors of the
+    packages that ask questions had a need to ask, so you should watch their
+    questions and adjust the examples to your environment and your needs.
+    You have been warned:-)
+
+PROGRAMMER'S INTERFACE
+    If you do not enter the shell, shell commands are available both as
+    methods ("CPAN::Shell->install(...)") and as functions in the calling
+    package ("install(...)"). Before calling low-level commands, it makes
+    sense to initialize components of CPAN you need, e.g.:
+
+      CPAN::HandleConfig->load;
+      CPAN::Shell::setup_output;
+      CPAN::Index->reload;
+
+    High-level commands do such initializations automatically.
+
+    There's currently only one class that has a stable interface -
+    CPAN::Shell. All commands that are available in the CPAN shell are
+    methods of the class CPAN::Shell. Each of the commands that produce
+    listings of modules ("r", "autobundle", "u") also return a list of the
+    IDs of all modules within the list.
+
+    expand($type,@things)
+      The IDs of all objects available within a program are strings that can
+      be expanded to the corresponding real objects with the
+      "CPAN::Shell->expand("Module",@things)" method. Expand returns a list
+      of CPAN::Module objects according to the @things arguments given. In
+      scalar context, it returns only the first element of the list.
+
+    expandany(@things)
+      Like expand, but returns objects of the appropriate type, i.e.
+      CPAN::Bundle objects for bundles, CPAN::Module objects for modules,
+      and CPAN::Distribution objects for distributions. Note: it does not
+      expand to CPAN::Author objects.
+
+    Programming Examples
+      This enables the programmer to do operations that combine
+      functionalities that are available in the shell.
+
+          # install everything that is outdated on my disk:
+          perl -MCPAN -e 'CPAN::Shell->install(CPAN::Shell->r)'
+
+          # install my favorite programs if necessary:
+          for $mod (qw(Net::FTP Digest::SHA Data::Dumper)) {
+              CPAN::Shell->install($mod);
+          }
+
+          # list all modules on my disk that have no VERSION number
+          for $mod (CPAN::Shell->expand("Module","/./")) {
+              next unless $mod->inst_file;
+              # MakeMaker convention for undefined $VERSION:
+              next unless $mod->inst_version eq "undef";
+              print "No VERSION in ", $mod->id, "\n";
+          }
+
+          # find out which distribution on CPAN contains a module:
+          print CPAN::Shell->expand("Module","Apache::Constants")->cpan_file
+
+      Or if you want to schedule a *cron* job to watch CPAN, you could list
+      all modules that need updating. First a quick and dirty way:
+
+          perl -e 'use CPAN; CPAN::Shell->r;'
+
+      If you don't want any output should all modules be up to date, parse
+      the output of above command for the regular expression "/modules are
+      up to date/" and decide to mail the output only if it doesn't match.
+
+      If you prefer to do it more in a programmerish style in one single
+      process, something like this may better suit you:
+
+        # list all modules on my disk that have newer versions on CPAN
+        for $mod (CPAN::Shell->expand("Module","/./")) {
+          next unless $mod->inst_file;
+          next if $mod->uptodate;
+          printf "Module %s is installed as %s, could be updated to %s from CPAN\n",
+              $mod->id, $mod->inst_version, $mod->cpan_version;
+        }
+
+      If that gives too much output every day, you may want to watch only
+      for three modules. You can write
+
+        for $mod (CPAN::Shell->expand("Module","/Apache|LWP|CGI/")) {
+
+      as the first line instead. Or you can combine some of the above
+      tricks:
+
+        # watch only for a new mod_perl module
+        $mod = CPAN::Shell->expand("Module","mod_perl");
+        exit if $mod->uptodate;
+        # new mod_perl arrived, let me know all update recommendations
+        CPAN::Shell->r;
+
+  Methods in the other Classes
+    CPAN::Author::as_glimpse()
+        Returns a one-line description of the author
+
+    CPAN::Author::as_string()
+        Returns a multi-line description of the author
+
+    CPAN::Author::email()
+        Returns the author's email address
+
+    CPAN::Author::fullname()
+        Returns the author's name
+
+    CPAN::Author::name()
+        An alias for fullname
+
+    CPAN::Bundle::as_glimpse()
+        Returns a one-line description of the bundle
+
+    CPAN::Bundle::as_string()
+        Returns a multi-line description of the bundle
+
+    CPAN::Bundle::clean()
+        Recursively runs the "clean" method on all items contained in the
+        bundle.
+
+    CPAN::Bundle::contains()
+        Returns a list of objects' IDs contained in a bundle. The associated
+        objects may be bundles, modules or distributions.
+
+    CPAN::Bundle::force($method,@args)
+        Forces CPAN to perform a task that it normally would have refused to
+        do. Force takes as arguments a method name to be called and any
+        number of additional arguments that should be passed to the called
+        method. The internals of the object get the needed changes so that
+        CPAN.pm does not refuse to take the action. The "force" is passed
+        recursively to all contained objects. See also the section above on
+        the "force" and the "fforce" pragma.
+
+    CPAN::Bundle::get()
+        Recursively runs the "get" method on all items contained in the
+        bundle
+
+    CPAN::Bundle::inst_file()
+        Returns the highest installed version of the bundle in either @INC
+        or "$CPAN::Config-"{cpan_home}>. Note that this is different from
+        CPAN::Module::inst_file.
+
+    CPAN::Bundle::inst_version()
+        Like CPAN::Bundle::inst_file, but returns the $VERSION
+
+    CPAN::Bundle::uptodate()
+        Returns 1 if the bundle itself and all its members are uptodate.
+
+    CPAN::Bundle::install()
+        Recursively runs the "install" method on all items contained in the
+        bundle
+
+    CPAN::Bundle::make()
+        Recursively runs the "make" method on all items contained in the
+        bundle
+
+    CPAN::Bundle::readme()
+        Recursively runs the "readme" method on all items contained in the
+        bundle
+
+    CPAN::Bundle::test()
+        Recursively runs the "test" method on all items contained in the
+        bundle
+
+    CPAN::Distribution::as_glimpse()
+        Returns a one-line description of the distribution
+
+    CPAN::Distribution::as_string()
+        Returns a multi-line description of the distribution
+
+    CPAN::Distribution::author
+        Returns the CPAN::Author object of the maintainer who uploaded this
+        distribution
+
+    CPAN::Distribution::pretty_id()
+        Returns a string of the form "AUTHORID/TARBALL", where AUTHORID is
+        the author's PAUSE ID and TARBALL is the distribution filename.
+
+    CPAN::Distribution::base_id()
+        Returns the distribution filename without any archive suffix. E.g
+        "Foo-Bar-0.01"
+
+    CPAN::Distribution::clean()
+        Changes to the directory where the distribution has been unpacked
+        and runs "make clean" there.
+
+    CPAN::Distribution::containsmods()
+        Returns a list of IDs of modules contained in a distribution file.
+        Works only for distributions listed in the 02packages.details.txt.gz
+        file. This typically means that just most recent version of a
+        distribution is covered.
+
+    CPAN::Distribution::cvs_import()
+        Changes to the directory where the distribution has been unpacked
+        and runs something like
+
+            cvs -d $cvs_root import -m $cvs_log $cvs_dir $userid v$version
+
+        there.
+
+    CPAN::Distribution::dir()
+        Returns the directory into which this distribution has been
+        unpacked.
+
+    CPAN::Distribution::force($method,@args)
+        Forces CPAN to perform a task that it normally would have refused to
+        do. Force takes as arguments a method name to be called and any
+        number of additional arguments that should be passed to the called
+        method. The internals of the object get the needed changes so that
+        CPAN.pm does not refuse to take the action. See also the section
+        above on the "force" and the "fforce" pragma.
+
+    CPAN::Distribution::get()
+        Downloads the distribution from CPAN and unpacks it. Does nothing if
+        the distribution has already been downloaded and unpacked within the
+        current session.
+
+    CPAN::Distribution::install()
+        Changes to the directory where the distribution has been unpacked
+        and runs the external command "make install" there. If "make" has
+        not yet been run, it will be run first. A "make test" is issued in
+        any case and if this fails, the install is cancelled. The
+        cancellation can be avoided by letting "force" run the "install" for
+        you.
+
+        This install method only has the power to install the distribution
+        if there are no dependencies in the way. To install an object along
+        with all its dependencies, use CPAN::Shell->install.
+
+        Note that install() gives no meaningful return value. See
+        uptodate().
+
+    CPAN::Distribution::install_tested()
+        Install all distributions that have tested sucessfully but not yet
+        installed. See also "is_tested".
+
+    CPAN::Distribution::isa_perl()
+        Returns 1 if this distribution file seems to be a perl distribution.
+        Normally this is derived from the file name only, but the index from
+        CPAN can contain a hint to achieve a return value of true for other
+        filenames too.
+
+    CPAN::Distribution::look()
+        Changes to the directory where the distribution has been unpacked
+        and opens a subshell there. Exiting the subshell returns.
+
+    CPAN::Distribution::make()
+        First runs the "get" method to make sure the distribution is
+        downloaded and unpacked. Changes to the directory where the
+        distribution has been unpacked and runs the external commands "perl
+        Makefile.PL" or "perl Build.PL" and "make" there.
+
+    CPAN::Distribution::perldoc()
+        Downloads the pod documentation of the file associated with a
+        distribution (in HTML format) and runs it through the external
+        command *lynx* specified in "$CPAN::Config-"{lynx}>. If *lynx* isn't
+        available, it converts it to plain text with the external command
+        *html2text* and runs it through the pager specified in
+        "$CPAN::Config-"{pager}>
+
+    CPAN::Distribution::prefs()
+        Returns the hash reference from the first matching YAML file that
+        the user has deposited in the "prefs_dir/" directory. The first
+        succeeding match wins. The files in the "prefs_dir/" are processed
+        alphabetically, and the canonical distroname (e.g.
+        AUTHOR/Foo-Bar-3.14.tar.gz) is matched against the regular
+        expressions stored in the $root->{match}{distribution} attribute
+        value. Additionally all module names contained in a distribution are
+        matched against the regular expressions in the
+        $root->{match}{module} attribute value. The two match values are
+        ANDed together. Each of the two attributes are optional.
+
+    CPAN::Distribution::prereq_pm()
+        Returns the hash reference that has been announced by a distribution
+        as the "requires" and "build_requires" elements. These can be
+        declared either by the "META.yml" (if authoritative) or can be
+        deposited after the run of "Build.PL" in the file "./_build/prereqs"
+        or after the run of "Makfile.PL" written as the "PREREQ_PM" hash in
+        a comment in the produced "Makefile". *Note*: this method only works
+        after an attempt has been made to "make" the distribution. Returns
+        undef otherwise.
+
+    CPAN::Distribution::readme()
+        Downloads the README file associated with a distribution and runs it
+        through the pager specified in "$CPAN::Config-"{pager}>.
+
+    CPAN::Distribution::reports()
+        Downloads report data for this distribution from www.cpantesters.org
+        and displays a subset of them.
+
+    CPAN::Distribution::read_yaml()
+        Returns the content of the META.yml of this distro as a hashref.
+        Note: works only after an attempt has been made to "make" the
+        distribution. Returns undef otherwise. Also returns undef if the
+        content of META.yml is not authoritative. (The rules about what
+        exactly makes the content authoritative are still in flux.)
+
+    CPAN::Distribution::test()
+        Changes to the directory where the distribution has been unpacked
+        and runs "make test" there.
+
+    CPAN::Distribution::uptodate()
+        Returns 1 if all the modules contained in the distribution are
+        uptodate. Relies on containsmods.
+
+    CPAN::Index::force_reload()
+        Forces a reload of all indices.
+
+    CPAN::Index::reload()
+        Reloads all indices if they have not been read for more than
+        "$CPAN::Config-"{index_expire}> days.
+
+    CPAN::InfoObj::dump()
+        CPAN::Author, CPAN::Bundle, CPAN::Module, and CPAN::Distribution
+        inherit this method. It prints the data structure associated with an
+        object. Useful for debugging. Note: the data structure is considered
+        internal and thus subject to change without notice.
+
+    CPAN::Module::as_glimpse()
+        Returns a one-line description of the module in four columns: The
+        first column contains the word "Module", the second column consists
+        of one character: an equals sign if this module is already installed
+        and uptodate, a less-than sign if this module is installed but can
+        be upgraded, and a space if the module is not installed. The third
+        column is the name of the module and the fourth column gives
+        maintainer or distribution information.
+
+    CPAN::Module::as_string()
+        Returns a multi-line description of the module
+
+    CPAN::Module::clean()
+        Runs a clean on the distribution associated with this module.
+
+    CPAN::Module::cpan_file()
+        Returns the filename on CPAN that is associated with the module.
+
+    CPAN::Module::cpan_version()
+        Returns the latest version of this module available on CPAN.
+
+    CPAN::Module::cvs_import()
+        Runs a cvs_import on the distribution associated with this module.
+
+    CPAN::Module::description()
+        Returns a 44 character description of this module. Only available
+        for modules listed in The Module List
+        (CPAN/modules/00modlist.long.html or 00modlist.long.txt.gz)
+
+    CPAN::Module::distribution()
+        Returns the CPAN::Distribution object that contains the current
+        version of this module.
+
+    CPAN::Module::dslip_status()
+        Returns a hash reference. The keys of the hash are the letters "D",
+        "S", "L", "I", and <P>, for development status, support level,
+        language, interface and public licence respectively. The data for
+        the DSLIP status are collected by pause.perl.org when authors
+        register their namespaces. The values of the 5 hash elements are
+        one-character words whose meaning is described in the table below.
+        There are also 5 hash elements "DV", "SV", "LV", "IV", and <PV> that
+        carry a more verbose value of the 5 status variables.
+
+        Where the 'DSLIP' characters have the following meanings:
+
+          D - Development Stage  (Note: *NO IMPLIED TIMESCALES*):
+            i   - Idea, listed to gain consensus or as a placeholder
+            c   - under construction but pre-alpha (not yet released)
+            a/b - Alpha/Beta testing
+            R   - Released
+            M   - Mature (no rigorous definition)
+            S   - Standard, supplied with Perl 5
+
+          S - Support Level:
+            m   - Mailing-list
+            d   - Developer
+            u   - Usenet newsgroup comp.lang.perl.modules
+            n   - None known, try comp.lang.perl.modules
+            a   - abandoned; volunteers welcome to take over maintainance
+
+          L - Language Used:
+            p   - Perl-only, no compiler needed, should be platform independent
+            c   - C and perl, a C compiler will be needed
+            h   - Hybrid, written in perl with optional C code, no compiler needed
+            +   - C++ and perl, a C++ compiler will be needed
+            o   - perl and another language other than C or C++
+
+          I - Interface Style
+            f   - plain Functions, no references used
+            h   - hybrid, object and function interfaces available
+            n   - no interface at all (huh?)
+            r   - some use of unblessed References or ties
+            O   - Object oriented using blessed references and/or inheritance
+
+          P - Public License
+            p   - Standard-Perl: user may choose between GPL and Artistic
+            g   - GPL: GNU General Public License
+            l   - LGPL: "GNU Lesser General Public License" (previously known as
+                  "GNU Library General Public License")
+            b   - BSD: The BSD License
+            a   - Artistic license alone
+            2   - Artistic license 2.0 or later
+            o   - open source: appoved by www.opensource.org
+            d   - allows distribution without restrictions
+            r   - restricted distribtion
+            n   - no license at all
+
+    CPAN::Module::force($method,@args)
+        Forces CPAN to perform a task it would normally refuse to do. Force
+        takes as arguments a method name to be invoked and any number of
+        additional arguments to pass that method. The internals of the
+        object get the needed changes so that CPAN.pm does not refuse to
+        take the action. See also the section above on the "force" and the
+        "fforce" pragma.
+
+    CPAN::Module::get()
+        Runs a get on the distribution associated with this module.
+
+    CPAN::Module::inst_file()
+        Returns the filename of the module found in @INC. The first file
+        found is reported, just as perl itself stops searching @INC once it
+        finds a module.
+
+    CPAN::Module::available_file()
+        Returns the filename of the module found in PERL5LIB or @INC. The
+        first file found is reported. The advantage of this method over
+        "inst_file" is that modules that have been tested but not yet
+        installed are included because PERL5LIB keeps track of tested
+        modules.
+
+    CPAN::Module::inst_version()
+        Returns the version number of the installed module in readable
+        format.
+
+    CPAN::Module::available_version()
+        Returns the version number of the available module in readable
+        format.
+
+    CPAN::Module::install()
+        Runs an "install" on the distribution associated with this module.
+
+    CPAN::Module::look()
+        Changes to the directory where the distribution associated with this
+        module has been unpacked and opens a subshell there. Exiting the
+        subshell returns.
+
+    CPAN::Module::make()
+        Runs a "make" on the distribution associated with this module.
+
+    CPAN::Module::manpage_headline()
+        If module is installed, peeks into the module's manpage, reads the
+        headline, and returns it. Moreover, if the module has been
+        downloaded within this session, does the equivalent on the
+        downloaded module even if it hasn't been installed yet.
+
+    CPAN::Module::perldoc()
+        Runs a "perldoc" on this module.
+
+    CPAN::Module::readme()
+        Runs a "readme" on the distribution associated with this module.
+
+    CPAN::Module::reports()
+        Calls the reports() method on the associated distribution object.
+
+    CPAN::Module::test()
+        Runs a "test" on the distribution associated with this module.
+
+    CPAN::Module::uptodate()
+        Returns 1 if the module is installed and up-to-date.
+
+    CPAN::Module::userid()
+        Returns the author's ID of the module.
+
+  Cache Manager
+    Currently the cache manager only keeps track of the build directory
+    ($CPAN::Config->{build_dir}). It is a simple FIFO mechanism that deletes
+    complete directories below "build_dir" as soon as the size of all
+    directories there gets bigger than $CPAN::Config->{build_cache} (in MB).
+    The contents of this cache may be used for later re-installations that
+    you intend to do manually, but will never be trusted by CPAN itself.
+    This is due to the fact that the user might use these directories for
+    building modules on different architectures.
+
+    There is another directory ($CPAN::Config->{keep_source_where}) where
+    the original distribution files are kept. This directory is not covered
+    by the cache manager and must be controlled by the user. If you choose
+    to have the same directory as build_dir and as keep_source_where
+    directory, then your sources will be deleted with the same fifo
+    mechanism.
+
+  Bundles
+    A bundle is just a perl module in the namespace Bundle:: that does not
+    define any functions or methods. It usually only contains documentation.
+
+    It starts like a perl module with a package declaration and a $VERSION
+    variable. After that the pod section looks like any other pod with the
+    only difference being that *one special pod section* exists starting
+    with (verbatim):
+
+        =head1 CONTENTS
+
+    In this pod section each line obeys the format
+
+            Module_Name [Version_String] [- optional text]
+
+    The only required part is the first field, the name of a module (e.g.
+    Foo::Bar, ie. *not* the name of the distribution file). The rest of the
+    line is optional. The comment part is delimited by a dash just as in the
+    man page header.
+
+    The distribution of a bundle should follow the same convention as other
+    distributions.
+
+    Bundles are treated specially in the CPAN package. If you say 'install
+    Bundle::Tkkit' (assuming such a bundle exists), CPAN will install all
+    the modules in the CONTENTS section of the pod. You can install your own
+    Bundles locally by placing a conformant Bundle file somewhere into your
+    @INC path. The autobundle() command which is available in the shell
+    interface does that for you by including all currently installed modules
+    in a snapshot bundle file.
+
+PREREQUISITES
+    If you have a local mirror of CPAN and can access all files with "file:"
+    URLs, then you only need a perl later than perl5.003 to run this module.
+    Otherwise Net::FTP is strongly recommended. LWP may be required for
+    non-UNIX systems, or if your nearest CPAN site is associated with a URL
+    that is not "ftp:".
+
+    If you have neither Net::FTP nor LWP, there is a fallback mechanism
+    implemented for an external ftp command or for an external lynx command.
+
+UTILITIES
+  Finding packages and VERSION
+    This module presumes that all packages on CPAN
+
+    * declare their $VERSION variable in an easy to parse manner. This
+      prerequisite can hardly be relaxed because it consumes far too much
+      memory to load all packages into the running program just to determine
+      the $VERSION variable. Currently all programs that are dealing with
+      version use something like this
+
+          perl -MExtUtils::MakeMaker -le \
+              'print MM->parse_version(shift)' filename
+
+      If you are author of a package and wonder if your $VERSION can be
+      parsed, please try the above method.
+
+    * come as compressed or gzipped tarfiles or as zip files and contain a
+      "Makefile.PL" or "Build.PL" (well, we try to handle a bit more, but
+      with little enthusiasm).
+
+  Debugging
+    Debugging this module is more than a bit complex due to interference
+    from the software producing the indices on CPAN, the mirroring process
+    on CPAN, packaging, configuration, synchronicity, and even (gasp!) due
+    to bugs within the CPAN.pm module itself.
+
+    For debugging the code of CPAN.pm itself in interactive mode, some
+    debugging aid can be turned on for most packages within CPAN.pm with one
+    of
+
+    o debug package...
+      sets debug mode for packages.
+
+    o debug -package...
+      unsets debug mode for packages.
+
+    o debug all
+      turns debugging on for all packages.
+
+    o debug number
+
+    which sets the debugging packages directly. Note that "o debug 0" turns
+    debugging off.
+
+    What seems a successful strategy is the combination of "reload cpan" and
+    the debugging switches. Add a new debug statement while running in the
+    shell and then issue a "reload cpan" and see the new debugging messages
+    immediately without losing the current context.
+
+    "o debug" without an argument lists the valid package names and the
+    current set of packages in debugging mode. "o debug" has built-in
+    completion support.
+
+    For debugging of CPAN data there is the "dump" command which takes the
+    same arguments as make/test/install and outputs each object's
+    Data::Dumper dump. If an argument looks like a perl variable and
+    contains one of "$", "@" or "%", it is eval()ed and fed to Data::Dumper
+    directly.
+
+  Floppy, Zip, Offline Mode
+    CPAN.pm works nicely without network access, too. If you maintain
+    machines that are not networked at all, you should consider working with
+    "file:" URLs. You'll have to collect your modules somewhere first. So
+    you might use CPAN.pm to put together all you need on a networked
+    machine. Then copy the $CPAN::Config->{keep_source_where} (but not
+    $CPAN::Config->{build_dir}) directory on a floppy. This floppy is kind
+    of a personal CPAN. CPAN.pm on the non-networked machines works nicely
+    with this floppy. See also below the paragraph about CD-ROM support.
+
+  Basic Utilities for Programmers
+    has_inst($module)
+      Returns true if the module is installed. Used to load all modules into
+      the running CPAN.pm that are considered optional. The config variable
+      "dontload_list" intercepts the "has_inst()" call such that an optional
+      module is not loaded despite being available. For example, the
+      following command will prevent "YAML.pm" from being loaded:
+
+          cpan> o conf dontload_list push YAML
+
+      See the source for details.
+
+    has_usable($module)
+      Returns true if the module is installed and in a usable state. Only
+      useful for a handful of modules that are used internally. See the
+      source for details.
+
+    instance($module)
+      The constructor for all the singletons used to represent modules,
+      distributions, authors, and bundles. If the object already exists,
+      this method returns the object; otherwise, it calls the constructor.
+
+SECURITY
+    There's no strong security layer in CPAN.pm. CPAN.pm helps you to
+    install foreign, unmasked, unsigned code on your machine. We compare to
+    a checksum that comes from the net just as the distribution file itself.
+    But we try to make it easy to add security on demand:
+
+  Cryptographically signed modules
+    Since release 1.77, CPAN.pm has been able to verify cryptographically
+    signed module distributions using Module::Signature. The CPAN modules
+    can be signed by their authors, thus giving more security. The simple
+    unsigned MD5 checksums that were used before by CPAN protect mainly
+    against accidental file corruption.
+
+    You will need to have Module::Signature installed, which in turn
+    requires that you have at least one of Crypt::OpenPGP module or the
+    command-line gpg tool installed.
+
+    You will also need to be able to connect over the Internet to the public
+    keyservers, like pgp.mit.edu, and their port 11731 (the HKP protocol).
+
+    The configuration parameter check_sigs is there to turn signature
+    checking on or off.
+
+EXPORT
+    Most functions in package CPAN are exported by default. The reason for
+    this is that the primary use is intended for the cpan shell or for
+    one-liners.
+
+ENVIRONMENT
+    When the CPAN shell enters a subshell via the look command, it sets the
+    environment CPAN_SHELL_LEVEL to 1, or increments that variable if it is
+    already set.
+
+    When CPAN runs, it sets the environment variable PERL5_CPAN_IS_RUNNING
+    to the ID of the running process. It also sets PERL5_CPANPLUS_IS_RUNNING
+    to prevent runaway processes which could happen with older versions of
+    Module::Install.
+
+    When running "perl Makefile.PL", the environment variable
+    "PERL5_CPAN_IS_EXECUTING" is set to the full path of the "Makefile.PL"
+    that is being executed. This prevents runaway processes with newer
+    versions of Module::Install.
+
+    When the config variable ftp_passive is set, all downloads will be run
+    with the environment variable FTP_PASSIVE set to this value. This is in
+    general a good idea as it influences both Net::FTP and LWP based
+    connections. The same effect can be achieved by starting the cpan shell
+    with this environment variable set. For Net::FTP alone, one can also
+    always set passive mode by running libnetcfg.
+
+POPULATE AN INSTALLATION WITH LOTS OF MODULES
+    Populating a freshly installed perl with one's favorite modules is
+    pretty easy if you maintain a private bundle definition file. To get a
+    useful blueprint of a bundle definition file, the command autobundle can
+    be used on the CPAN shell command line. This command writes a bundle
+    definition file for all modules installed for the current perl
+    interpreter. It's recommended to run this command once only, and from
+    then on maintain the file manually under a private name, say
+    Bundle/my_bundle.pm. With a clever bundle file you can then simply say
+
+        cpan> install Bundle::my_bundle
+
+    then answer a few questions and go out for coffee (possibly even in a
+    different city).
+
+    Maintaining a bundle definition file means keeping track of two things:
+    dependencies and interactivity. CPAN.pm sometimes fails on calculating
+    dependencies because not all modules define all MakeMaker attributes
+    correctly, so a bundle definition file should specify prerequisites as
+    early as possible. On the other hand, it's annoying that so many
+    distributions need some interactive configuring. So what you can try to
+    accomplish in your private bundle file is to have the packages that need
+    to be configured early in the file and the gentle ones later, so you can
+    go out for cofeee after a few minutes and leave CPAN.pm to churn away
+    untended.
+
+WORKING WITH CPAN.pm BEHIND FIREWALLS
+    Thanks to Graham Barr for contributing the following paragraphs about
+    the interaction between perl, and various firewall configurations. For
+    further information on firewalls, it is recommended to consult the
+    documentation that comes with the *ncftp* program. If you are unable to
+    go through the firewall with a simple Perl setup, it is likely that you
+    can configure *ncftp* so that it works through your firewall.
+
+  Three basic types of firewalls
+    Firewalls can be categorized into three basic types.
+
+    http firewall
+        This is when the firewall machine runs a web server, and to access
+        the outside world, you must do so via that web server. If you set
+        environment variables like http_proxy or ftp_proxy to values
+        beginning with http://, or in your web browser you've proxy
+        information set, then you know you are running behind an http
+        firewall.
+
+        To access servers outside these types of firewalls with perl (even
+        for ftp), you need LWP.
+
+    ftp firewall
+        This where the firewall machine runs an ftp server. This kind of
+        firewall will only let you access ftp servers outside the firewall.
+        This is usually done by connecting to the firewall with ftp, then
+        entering a username like "user@outside.host.com".
+
+        To access servers outside these type of firewalls with perl, you
+        need Net::FTP.
+
+    One-way visibility
+        One-way visibility means these firewalls try to make themselves
+        invisible to users inside the firewall. An FTP data connection is
+        normally created by sending your IP address to the remote server and
+        then listening for the return connection. But the remote server will
+        not be able to connect to you because of the firewall. For these
+        types of firewall, FTP connections need to be done in a passive
+        mode.
+
+        There are two that I can think off.
+
+        SOCKS
+            If you are using a SOCKS firewall, you will need to compile perl
+            and link it with the SOCKS library. This is what is normally
+            called a 'socksified' perl. With this executable you will be
+            able to connect to servers outside the firewall as if it were
+            not there.
+
+        IP Masquerade
+            This is when the firewall implemented in the kernel (via NAT, or
+            networking address translation), it allows you to hide a
+            complete network behind one IP address. With this firewall no
+            special compiling is needed as you can access hosts directly.
+
+            For accessing ftp servers behind such firewalls you usually need
+            to set the environment variable "FTP_PASSIVE" or the config
+            variable ftp_passive to a true value.
+
+  Configuring lynx or ncftp for going through a firewall
+    If you can go through your firewall with e.g. lynx, presumably with a
+    command such as
+
+        /usr/local/bin/lynx -pscott:tiger
+
+    then you would configure CPAN.pm with the command
+
+        o conf lynx "/usr/local/bin/lynx -pscott:tiger"
+
+    That's all. Similarly for ncftp or ftp, you would configure something
+    like
+
+        o conf ncftp "/usr/bin/ncftp -f /home/scott/ncftplogin.cfg"
+
+    Your mileage may vary...
+
+FAQ
+    1)  I installed a new version of module X but CPAN keeps saying, I have
+        the old version installed
+
+        Probably you do have the old version installed. This can happen if a
+        module installs itself into a different directory in the @INC path
+        than it was previously installed. This is not really a CPAN.pm
+        problem, you would have the same problem when installing the module
+        manually. The easiest way to prevent this behaviour is to add the
+        argument "UNINST=1" to the "make install" call, and that is why many
+        people add this argument permanently by configuring
+
+          o conf make_install_arg UNINST=1
+
+    2)  So why is UNINST=1 not the default?
+
+        Because there are people who have their precise expectations about
+        who may install where in the @INC path and who uses which @INC
+        array. In fine tuned environments "UNINST=1" can cause damage.
+
+    3)  I want to clean up my mess, and install a new perl along with all
+        modules I have. How do I go about it?
+
+        Run the autobundle command for your old perl and optionally rename
+        the resulting bundle file (e.g. Bundle/mybundle.pm), install the new
+        perl with the Configure option prefix, e.g.
+
+            ./Configure -Dprefix=/usr/local/perl-5.6.78.9
+
+        Install the bundle file you produced in the first step with
+        something like
+
+            cpan> install Bundle::mybundle
+
+        and you're done.
+
+    4)  When I install bundles or multiple modules with one command there is
+        too much output to keep track of.
+
+        You may want to configure something like
+
+          o conf make_arg "| tee -ai /root/.cpan/logs/make.out"
+          o conf make_install_arg "| tee -ai /root/.cpan/logs/make_install.out"
+
+        so that STDOUT is captured in a file for later inspection.
+
+    5)  I am not root, how can I install a module in a personal directory?
+
+        First of all, you will want to use your own configuration, not the
+        one that your root user installed. If you do not have permission to
+        write in the cpan directory that root has configured, you will be
+        asked if you want to create your own config. Answering "yes" will
+        bring you into CPAN's configuration stage, using the system config
+        for all defaults except things that have to do with CPAN's work
+        directory, saving your choices to your MyConfig.pm file.
+
+        You can also manually initiate this process with the following
+        command:
+
+            % perl -MCPAN -e 'mkmyconfig'
+
+        or by running
+
+            mkmyconfig
+
+        from the CPAN shell.
+
+        You will most probably also want to configure something like this:
+
+          o conf makepl_arg "LIB=~/myperl/lib \
+                            INSTALLMAN1DIR=~/myperl/man/man1 \
+                            INSTALLMAN3DIR=~/myperl/man/man3 \
+                            INSTALLSCRIPT=~/myperl/bin \
+                            INSTALLBIN=~/myperl/bin"
+
+        and then the equivalent command for Module::Build, which is
+
+          o conf mbuildpl_arg "--lib=~/myperl/lib \
+                            --installman1dir=~/myperl/man/man1 \
+                            --installman3dir=~/myperl/man/man3 \
+                            --installscript=~/myperl/bin \
+                            --installbin=~/myperl/bin"
+
+        You can make this setting permanent like all "o conf" settings with
+        "o conf commit" or by setting "auto_commit" beforehand.
+
+        You will have to add ~/myperl/man to the MANPATH environment
+        variable and also tell your perl programs to look into ~/myperl/lib,
+        e.g. by including
+
+          use lib "$ENV{HOME}/myperl/lib";
+
+        or setting the PERL5LIB environment variable.
+
+        While we're speaking about $ENV{HOME}, it might be worth mentioning,
+        that for Windows we use the File::HomeDir module that provides an
+        equivalent to the concept of the home directory on Unix.
+
+        Another thing you should bear in mind is that the UNINST parameter
+        can be dangerous when you are installing into a private area because
+        you might accidentally remove modules that other people depend on
+        that are not using the private area.
+
+    6)  How to get a package, unwrap it, and make a change before building
+        it?
+
+        Have a look at the "look" (!) command.
+
+    7)  I installed a Bundle and had a couple of fails. When I retried,
+        everything resolved nicely. Can this be fixed to work on first try?
+
+        The reason for this is that CPAN does not know the dependencies of
+        all modules when it starts out. To decide about the additional items
+        to install, it just uses data found in the META.yml file or the
+        generated Makefile. An undetected missing piece breaks the process.
+        But it may well be that your Bundle installs some prerequisite later
+        than some depending item and thus your second try is able to resolve
+        everything. Please note, CPAN.pm does not know the dependency tree
+        in advance and cannot sort the queue of things to install in a
+        topologically correct order. It resolves perfectly well if all
+        modules declare the prerequisites correctly with the PREREQ_PM
+        attribute to MakeMaker or the "requires" stanza of Module::Build.
+        For bundles which fail and you need to install often, it is
+        recommended to sort the Bundle definition file manually.
+
+    8)  In our intranet, we have many modules for internal use. How can I
+        integrate these modules with CPAN.pm but without uploading the
+        modules to CPAN?
+
+        Have a look at the CPAN::Site module.
+
+    9)  When I run CPAN's shell, I get an error message about things in my
+        "/etc/inputrc" (or "~/.inputrc") file.
+
+        These are readline issues and can only be fixed by studying readline
+        configuration on your architecture and adjusting the referenced file
+        accordingly. Please make a backup of the "/etc/inputrc" or
+        "~/.inputrc" and edit them. Quite often harmless changes like
+        uppercasing or lowercasing some arguments solves the problem.
+
+    10) Some authors have strange characters in their names.
+
+        Internally CPAN.pm uses the UTF-8 charset. If your terminal is
+        expecting ISO-8859-1 charset, a converter can be activated by
+        setting term_is_latin to a true value in your config file. One way
+        of doing so would be
+
+            cpan> o conf term_is_latin 1
+
+        If other charset support is needed, please file a bugreport against
+        CPAN.pm at rt.cpan.org and describe your needs. Maybe we can extend
+        the support or maybe UTF-8 terminals become widely available.
+
+        Note: this config variable is deprecated and will be removed in a
+        future version of CPAN.pm. It will be replaced with the conventions
+        around the family of $LANG and $LC_* environment variables.
+
+    11) When an install fails for some reason and then I correct the error
+        condition and retry, CPAN.pm refuses to install the module, saying
+        "Already tried without success".
+
+        Use the force pragma like so
+
+          force install Foo::Bar
+
+        Or you can use
+
+          look Foo::Bar
+
+        and then "make install" directly in the subshell.
+
+    12) How do I install a "DEVELOPER RELEASE" of a module?
+
+        By default, CPAN will install the latest non-developer release of a
+        module. If you want to install a dev release, you have to specify
+        the partial path starting with the author id to the tarball you wish
+        to install, like so:
+
+            cpan> install KWILLIAMS/Module-Build-0.27_07.tar.gz
+
+        Note that you can use the "ls" command to get this path listed.
+
+    13) How do I install a module and all its dependencies from the
+        commandline, without being prompted for anything, despite my CPAN
+        configuration (or lack thereof)?
+
+        CPAN uses ExtUtils::MakeMaker's prompt() function to ask its
+        questions, so if you set the PERL_MM_USE_DEFAULT environment
+        variable, you shouldn't be asked any questions at all (assuming the
+        modules you are installing are nice about obeying that variable as
+        well):
+
+            % PERL_MM_USE_DEFAULT=1 perl -MCPAN -e 'install My::Module'
+
+    14) How do I create a Module::Build based Build.PL derived from an
+        ExtUtils::MakeMaker focused Makefile.PL?
+
+        http://search.cpan.org/search?query=Module::Build::Convert
+
+        http://www.refcnt.org/papers/module-build-convert
+
+    15) I'm frequently irritated with the CPAN shell's inability to help me
+        select a good mirror.
+
+        The urllist config parameter is yours. You can add and remove sites
+        at will. You should find out which sites have the best uptodateness,
+        bandwidth, reliability, etc. and are topologically close to you.
+        Some people prefer fast downloads, others uptodateness, others
+        reliability. You decide which to try in which order.
+
+        Henk P. Penning maintains a site that collects data about CPAN
+        sites:
+
+          http://www.cs.uu.nl/people/henkp/mirmon/cpan.html
+
+        Also, feel free to play with experimental features. Run
+
+          o conf init randomize_urllist ftpstats_period ftpstats_size
+
+        and choose your favorite parameters. After a few downloads running
+        the "hosts" command will probably assist you in choosing the best
+        mirror sites.
+
+    16) Why do I get asked the same questions every time I start the shell?
+
+        You can make your configuration changes permanent by calling the
+        command "o conf commit". Alternatively set the "auto_commit"
+        variable to true by running "o conf init auto_commit" and answering
+        the following question with yes.
+
+    17) Older versions of CPAN.pm had the original root directory of all
+        tarballs in the build directory. Now there are always random
+        characters appended to these directory names. Why was this done?
+
+        The random characters are provided by File::Temp and ensure that
+        each module's individual build directory is unique. This makes
+        running CPAN.pm in concurrent processes simultaneously safe.
+
+    18) Speaking of the build directory. Do I have to clean it up myself?
+
+        You have the choice to set the config variable "scan_cache" to
+        "never". Then you must clean it up yourself. The other possible
+        value, "atstart" only cleans up the build directory when you start
+        the CPAN shell. If you never start up the CPAN shell, you probably
+        also have to clean up the build directory yourself.
+
+COMPATIBILITY
+  OLD PERL VERSIONS
+    CPAN.pm is regularly tested to run under 5.004, 5.005, and assorted
+    newer versions. It is getting more and more difficult to get the minimal
+    prerequisites working on older perls. It is close to impossible to get
+    the whole Bundle::CPAN working there. If you're in the position to have
+    only these old versions, be advised that CPAN is designed to work fine
+    without the Bundle::CPAN installed.
+
+    To get things going, note that GBARR/Scalar-List-Utils-1.18.tar.gz is
+    compatible with ancient perls and that File::Temp is listed as a
+    prerequisite but CPAN has reasonable workarounds if it is missing.
+
+  CPANPLUS
+    This module and its competitor, the CPANPLUS module, are both much
+    cooler than the other. CPAN.pm is older. CPANPLUS was designed to be
+    more modular, but it was never intended to be compatible with CPAN.pm.
+
+SECURITY ADVICE
+    This software enables you to upgrade software on your computer and so is
+    inherently dangerous because the newly installed software may contain
+    bugs and may alter the way your computer works or even make it unusable.
+    Please consider backing up your data before every upgrade.
+
+BUGS
+    Please report bugs via <http://rt.cpan.org/>
+
+    Before submitting a bug, please make sure that the traditional method of
+    building a Perl module package from a shell by following the
+    installation instructions of that package still works in your
+    environment.
+
+AUTHOR
+    Andreas Koenig "<andk@cpan.org>"
+
+LICENSE
+    This program is free software; you can redistribute it and/or modify it
+    under the same terms as Perl itself.
+
+    See <http://www.perl.com/perl/misc/Artistic.html>
+
+TRANSLATIONS
+    Kawai,Takanori provides a Japanese translation of this manpage at
+    <http://homepage3.nifty.com/hippo2000/perltips/CPAN.htm>
+
+SEE ALSO
+    cpan, CPAN::Nox, CPAN::Version
+
similarity index 95%
rename from cpan/CPAN/lib/CPAN/SIGNATURE
rename to cpan/CPAN/SIGNATURE
index 286b255..27f3f6b 100644 (file)
@@ -14,18 +14,18 @@ not run its Makefile.PL or Build.PL.
 -----BEGIN PGP SIGNED MESSAGE-----
 Hash: SHA1
 
-SHA1 6e8d0b0d1883761e588707bd952de40bbe3a485e Changes
-SHA1 0ea0887959becc8c039f8c37b6a9b2c164200aeb MANIFEST
+SHA1 2e4776bc62a63c4ca6ce27196882c4eef7048b39 Changes
+SHA1 66eb69d2464004b9f3edea97ba0713c7c35514ed MANIFEST
 SHA1 97732eaafa3212deb5fe0e292f70e25ce5ee66a7 MANIFEST.SKIP
-SHA1 bfb57c4a633e130303959cd23ba5798e59adeb67 META.yml
-SHA1 90bcb550c498de8b05a636e9c85ff1dad5b107d0 Makefile.PL
+SHA1 4c41c7a8d7494d66ac645f2d3bb05d6974bfe560 META.yml
+SHA1 1c7ec901d245cb29ffca26c67beddbc3e0e5ce85 Makefile.PL
 SHA1 37e858c51409a297ef5d3fb35dc57cd3b57f9a4d PAUSE2003.pub
 SHA1 af016003ad503ed078c5f8254521d13a3e0c494f PAUSE2005.pub
 SHA1 a3941566358617b918e0bb7b5c4c2638f451a9d8 PAUSE2007.pub
 SHA1 6bd0c71ccaf4e9cd77d13a330f02714c08af4de8 PAUSE2009.pub
 SHA1 baf5f4df67c583a50193fbc88a465f733492ce23 README
 SHA1 efeeb5816ec6e9fbf95384b37fd0a3f76870658c SlayMakefile
-SHA1 c08973601e45068809e6499b98a181b4445f5e33 Todo
+SHA1 ef4a22c34df0a8da874472f3b2d9e937c05b3b5d Todo
 SHA1 9928e72969096af7df7a4e54c284da21b457c47f distroprefs/00.README
 SHA1 79848ebd7fbf81020d38ea81c3b8b989f2ab16fb distroprefs/01.DISABLED.yml
 SHA1 377ded2410b847e9ed060b2d1c0dc165cc85c9e7 distroprefs/02.NOREPORT.yml
@@ -38,6 +38,7 @@ SHA1 8b68d317e8a2f7875fc634536fe10159a8bf81e2 distroprefs/ADAMK.Image-Delivery.y
 SHA1 002442babbc2b516bbe4793188ad5435a1c8189d distroprefs/ADAMK.PPI.yml
 SHA1 4b46b611acd0265d98e43a8263716f5fae83b9cc distroprefs/ADAMK.Test-ClassAPI.yml
 SHA1 18d53ac2d3d801cdd37d4f5280c76ef89335c3f1 distroprefs/ADAMK.Test-Inline.yml
+SHA1 95f0139c65543f33cbc4834fc8b0a090653804cc distroprefs/ADIE.Test-Class.yml
 SHA1 6e505736a3259660f80d96db4e995938decd40b4 distroprefs/AGENT.OpenResty.yml
 SHA1 af2a4a9c72895c8e13b6c194bbf53d75e79eb0aa distroprefs/AGRUNDMA.POE-Loop-EV.yml
 SHA1 57ed2146b1be91f5248db77dcabf47f77bda36ac distroprefs/AMICHAUER.Unicode-Lite.yml
@@ -130,6 +131,7 @@ SHA1 4913fc5a830a7e7a2a5ec2737c302a7ee8ac39f1 distroprefs/DRTECH.Config-Loader.y
 SHA1 e21fd0031c45a351fcd8ca0095d0aa09629aa24d distroprefs/DSKOLL.MIME-tools.yml
 SHA1 fe533a848487ea3ea99f21c2f553d3e608efb85f distroprefs/DSUGAL.Devel-Size.yml
 SHA1 659f3e3a410d4ad3866cf90c98e52420c9c892f1 distroprefs/DUNNIGANJ.Tk-CursorControl.yml
+SHA1 501b16fd5cf45e2091e1bedfd83fe7eb766c27b9 distroprefs/DURIST.Proc-ProcessTable.yml
 SHA1 887d92e9be51998e75b0707e1127abdd773dc252 distroprefs/DURIST.WWW-Babelfish.yml
 SHA1 01ffd3bc7d2e67d2507c55e50c560ea0da409a13 distroprefs/DWHEELER.Params-CallbackRequest.yml
 SHA1 bf61479adb94d120f118e6635f48f6beb0f653a9 distroprefs/EBOHLMAN.Text-Query.yml
@@ -383,7 +385,7 @@ SHA1 3a216694d57bb44948f1433947cd9aff8e7a03dd distroprefs/ZOOLEIKA.RDF-Simple.ym
 SHA1 eeaec00a7b15e8e0dc0ef86b7d92949a70efbd34 distroprefs/ZOOLEIKA.SVG-Plot.yml
 SHA1 efbe8e6882a2caa0d741b113959a706830ab5882 inc/Test/Builder.pm
 SHA1 ae1d68262bedc2475e2c6fd478d99b259b4fb109 inc/Test/More.pm
-SHA1 dc0eab8096ce8e37ef81e4b685f66e5e9682402f lib/CPAN.pm
+SHA1 dd02599ec3d5de5bf02cfb8a291aa0bd8ee4ac1d lib/CPAN.pm
 SHA1 ca47203e0e6479e2be6fac33069ea2cd09d463ec lib/CPAN/API/HOWTO.pod
 SHA1 31fe6809bca43dc74f54ecf6a6ace8706b5ed226 lib/CPAN/Admin.pm
 SHA1 15d7b0a87447db7f0787172ce315ae552465a7d9 lib/CPAN/Author.pm
@@ -392,44 +394,44 @@ SHA1 6613db3adad2817cc30f63ba060f214dba3de008 lib/CPAN/CacheMgr.pm
 SHA1 6277f7d06dfb92da050e0ee78fa5fe4ca96537fc lib/CPAN/Complete.pm
 SHA1 7e763ea4ad3c8da421e313efa1cc74783d5cb3aa lib/CPAN/Debug.pm
 SHA1 34c8162aa20cc7074fe2cffe3fce0573e68515b8 lib/CPAN/DeferredCode.pm
-SHA1 5d44abe7ae749db5d21cc4574389ce923721f43e lib/CPAN/Distribution.pm
+SHA1 bb1f1beee2826205ba88254588ed127af37c738a lib/CPAN/Distribution.pm
 SHA1 43d3b96072d651441cee8412573f5f18baa72510 lib/CPAN/Distroprefs.pm
 SHA1 cd39b0f1bb9763a516bffd2e81b5347c0c797d1f lib/CPAN/Distrostatus.pm
 SHA1 62b728edde39be16a38cce29b08f88b4709a1abd lib/CPAN/Exception/RecursiveDependency.pm
 SHA1 0914803a2ed6c20f050d6377969fc086e7da56ac lib/CPAN/Exception/blocked_urllist.pm
 SHA1 06015c184c85de35a9e7832524a4776d27b20265 lib/CPAN/Exception/yaml_not_installed.pm
-SHA1 44b0126e756f43980a469b17e3600f1cecc63a70 lib/CPAN/FTP.pm
+SHA1 95ec32f82b4a2f0b70667b75755f1a13afcdacd0 lib/CPAN/FTP.pm
 SHA1 72a3b878de0fb72a9fd0ef5f806060cf6113acc4 lib/CPAN/FTP/netrc.pm
-SHA1 19c4ed734ae2b36d38fb001be4ac99e50494d5f7 lib/CPAN/FirstTime.pm
-SHA1 209ffa1405d3356d34ead21255d1b23732c4c8b5 lib/CPAN/HandleConfig.pm
-SHA1 2c95b20a0d342635da3d8d7967637fa4ba10b057 lib/CPAN/Index.pm
+SHA1 ce10b132c05f383d34cc45c31f9f2e6cd8c5dad6 lib/CPAN/FirstTime.pm
+SHA1 a65762d13a94000fc7e9d878e084b7bec004696e lib/CPAN/HandleConfig.pm
+SHA1 d28beab5a7b9e4102ee0b39959d2a1c303702832 lib/CPAN/Index.pm
 SHA1 7cf0d99ff78c97afa4e6d042b18338f5f1477198 lib/CPAN/InfoObj.pm
 SHA1 d12264dc1735654f0a7e6e31387106336be8726d lib/CPAN/Kwalify.pm
 SHA1 0460d53b1b0b4fb6b1b1ec3218a3182210e0802a lib/CPAN/Kwalify/distroprefs.dd
 SHA1 ca22988f7fd6d0989d04df8b5f84e913e8a1a593 lib/CPAN/Kwalify/distroprefs.yml
-SHA1 d38e7c2e5b019bedd00423fbf82a14defa0aa7c6 lib/CPAN/LWP/UserAgent.pm
-SHA1 42e9a304da0a6ef87e8a73ec180fbd915d8628a4 lib/CPAN/Module.pm
+SHA1 0bb4d41b20fba85fd002335e6d169eae98d63d38 lib/CPAN/LWP/UserAgent.pm
+SHA1 c33593252d7841e236f7aec86bfb7922fe100262 lib/CPAN/Module.pm
 SHA1 6faf2d6787bcb6c6d2a205f59a92d78e73fc7f14 lib/CPAN/Nox.pm
 SHA1 e18c032c69ccafc2d224ae6dfbb0b60628c7848a lib/CPAN/Prompt.pm
 SHA1 ac4e3fd3b264404956de68d227909d8d2abd8498 lib/CPAN/Queue.pm
-SHA1 9f656fefbf93517fe0a121000ae5b5bc0e1a44ef lib/CPAN/Shell.pm
+SHA1 edf7e305b2f5732c0642012de7ddc91ec14a1d7c lib/CPAN/Shell.pm
 SHA1 f742634c1110ab6c66b92b1b9f052027d14a6280 lib/CPAN/Tarzip.pm
 SHA1 c572134ef16d4cfdbee4e23f1946062fb5fff5fe lib/CPAN/URL.pm
 SHA1 2492ea05e3fd53d03876bdf112cadca009e65418 lib/CPAN/Version.pm
-SHA1 01c2c0d35ce8b8e5c472ac2b542a3529d88c4a37 scripts/cpan
+SHA1 7c1684395971f365aed855f26bade4b1f4e2f18d scripts/cpan
 SHA1 ce8f1c86172c6cd2698c27f6f76864de724a1282 t/00signature.t
 SHA1 215dace24b507de20011d36cbe2d16ddea78bcf3 t/01loadme.t
 SHA1 11b0e1300cef04885330d292a52296a44ed689d2 t/02nox.t
 SHA1 4f58adf390660cddecf31274a838e48e65dca940 t/03pkgs.t
-SHA1 cf39823c3aba766be6f8b99bf74634013b4d6029 t/04clean_load.t
+SHA1 db989880fa813b7eb4883cd8a741349af58df65d t/04clean_load.t
 SHA1 6799037363cbb460183f1b483784055cb96c7e40 t/10version.t
 SHA1 4c7da618cd8a3054b32b218e4d7daf13ce5fedf2 t/11mirroredby.t
-SHA1 9d2be90f9c95844cf3d16c175b3620770d61617c t/12cpan.t
+SHA1 eaf6b7dcf742c669055e7ba1cb0f18443d31adc7 t/12cpan.t
 SHA1 c5697c558df9cc12e8a1fb42b9d4eeb2eeae0c6a t/13tarzip.t
 SHA1 54e904dc7362af2710b130bafbf7b3ea6e2ddbb8 t/14forkbomb.t
 SHA1 e0e62c08ee1152d64d70180a6a06199ec13b05b1 t/30shell.coverage
 SHA1 03bbe31acae1d5c4bc3760cea20dbadc842e3960 t/30shell.t
-SHA1 514cceea939d34aba0102d5bf76e47b64069dfc6 t/31sessions.t
+SHA1 984af2f6c0c37c4aaf3f97ef079489381880c6be t/31sessions.t
 SHA1 874c4086a55b6d3f2856b47d1be8e39c61bd05ab t/41distribution.t
 SHA1 5acddcbee26d5bd075119d309efae14c6f8f8ff7 t/42distroprefs.t
 SHA1 b86a9ffad6b939c5091524a6c210dc89cc3cea0c t/43distroprefspref.t
@@ -443,7 +445,7 @@ SHA1 f7dc1c86ff96f2ff444a375024652c50d710e195 t/CPAN/TestConfig.pm
 SHA1 081ed556ae14a75c43ca31e67cfc99d180c9ef41 t/CPAN/TestMirroredBy
 SHA1 455480f7053abe4ac853a4c456d52b83e8b922e8 t/CPAN/TestPatch.txt
 SHA1 b4fd27234696da334ac6a1716222c70610a98c3a t/CPAN/authors/01mailrc.txt
-SHA1 816c992e5853ed7312a7789fcab11719de958727 t/CPAN/authors/id/A/AN/ANDK/CHECKSUMS
+SHA1 72f593d94477b90941e3583d13ca407d9d630806 t/CPAN/authors/id/A/AN/ANDK/CHECKSUMS
 SHA1 d1a101f24d2d0719c9991df28ede729d58005bb4 t/CPAN/authors/id/A/AN/ANDK/CHECKSUMS.2nd
 SHA1 34cf1bf9c95007fe02a4b4f4977eb017516b0cdc t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Build-1.03.tar.gz
 SHA1 3f66b598a79d5b120205715e86a5eed19251cd13 t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Build-DepeFails-1.02.tar.gz
@@ -456,26 +458,26 @@ SHA1 ffffd32d5e63075ce47527d5af689e76f7421b13 t/CPAN/authors/id/A/AN/ANDK/CPAN-T
 SHA1 0a897ebf94b88af75dcd6495f736c317601b9878 t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-ConfReq-1.00.tar.gz
 SHA1 b992aebcd2fa43e3d83113247d2310abf028068f t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Expect-1.00.tar.gz
 SHA1 522f39ed6921d9704b38bd7dd0c3559815f45a68 t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Failearly-1.02.tar.gz
+SHA1 1ee88e2392d9f4edb55b2393b9b03c73b5d821c4 t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Features-1.06.tar.gz
 SHA1 35b9020b23e004f349e14fd2cd79b16b94b8c8a9 t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-UnsatPrereq-1.00.tar.gz
 SHA1 a424441767925cd6eb4db35098a896ac15b42991 t/CPAN/authors/id/A/AN/ANDK/CPAN-Test-Dummy-Perl5-Make-Zip-1.03.zip
 SHA1 043196f76ae3b0bb245ac2a4428fd910cfeff509 t/CPAN/authors/id/A/AN/ANDK/NotInChecksums-0.000.tar.gz
 SHA1 1a5b3cc1fbd14373bc8f1820fdb2e981052d4b70 t/CPAN/authors/id/A/AN/ANDK/cpantestdummies/CHECKSUMS
-SHA1 9a5a44d2abc57f3003a0eb2883538f2bb4e5fe79 t/CPAN/authors/id/A/AN/ANDK/cpantestdummies/CPAN-Test-Dummy-Perl5-Make-Features-1.05.tgz
 SHA1 5bc14cda7abdb6306caec36f804dfba54b113e80 t/CPAN/authors/id/A/AN/ANDK/patches/CHECKSUMS
 SHA1 1aee1bed21f0e9755d693419e810ec75543eb0b7 t/CPAN/authors/id/A/AN/CHECKSUMS
 SHA1 1f3304f219bf0da4db6a60f638e11b61c2c2f4c0 t/CPAN/authors/id/A/CHECKSUMS
 SHA1 dfc900f5bfbc9683fa91977a1c7198222fbd4452 t/CPAN/authors/id/CHECKSUMS
-SHA1 8466a904cf7a0e8522051d19fc028689449a5d73 t/CPAN/modules/02packages.details.txt
+SHA1 75724e64b53acd13040d0899b51b40c01edd465c t/CPAN/modules/02packages.details.txt
 SHA1 f4c1a524de16347b37df6427ca01f98dd27f3c81 t/CPAN/modules/03modlist.data
 SHA1 e635fad8933c18200afe49290ca25bb1c4694f14 t/data/META-dynamic.yml
 SHA1 0182c65f3032611635ad5f008e181ea4eba71ef4 t/data/META-static.yml
-SHA1 3735e39de4ee6753cde1c3078afa2d16be8c2f65 t/local_utils.pm
+SHA1 693232c939a315f87b26d1b02e10625deb9fae13 t/local_utils.pm
 SHA1 3b6f98262392387823dd49f342e6731e1a6ec291 t/perlcriticrc
 SHA1 8a00e60e767af838833dea621abe9683cd360e5d t/yaml_code.yml
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.9 (GNU/Linux)
 
-iEYEARECAAYFAkpFhmsACgkQ7IA58KMXwV0zJQCfdE9L000Ea1PMXQ5vZHupO6vD
-yYEAoKMlsaOxc2+RDRh+o8uM5QY4AxpB
-=K/sX
+iEYEARECAAYFAkqtqnIACgkQ7IA58KMXwV3F/QCg+a4hjT0N0+7JQ7/JjmW0+yKH
+o7EAn0sY6TN5TV2SAGz8WgNl4W+2iys5
+=BaEU
 -----END PGP SIGNATURE-----
diff --git a/cpan/CPAN/Todo b/cpan/CPAN/Todo
new file mode 100644 (file)
index 0000000..87456c7
--- /dev/null
@@ -0,0 +1,18794 @@
+2009-07-08  Andreas J. Koenig  <andk@cpan.org>
+
+       * from cpantesters-discuss
+
+       05:04:06 <@ST47> Hey
+       05:04:21 <@ST47> Anyone ever had a problem with the FTPstats.yml getting 
+  corrupted?
+       05:04:49 <@ST47> It keeps getting messed up and throwing a syntax error through 
+  YAML::Syck and throwing my smokers into a useless state
+       06:28:45 <@ST47> Probably ran out of disk space mid-write...
+       07:53:33 <@rafl> yeah, i've seen that.
+
+2009-07-02  Andreas J. Koenig  <andk@cpan.org>
+
+       * Curtis Jewell reports failing tests that I overlooked on cpantesters.
+       Seems to be that Expect-less systems fail some tests around push/pop on
+       urllist???
+
+       http://www.nntp.perl.org/group/perl.cpan.testers/2009/06/msg4356518.html
+
+       Nope, I can remove Expect and still pass all tests.
+
+       He is stuck in the test "urllist empty" and then gets the fail for the
+       test "reordering urllist". Skipping the "urllist empty" test when no
+       Expect is installed will most probably "fix" this. I mean, we're fixing
+       a test, not code.
+
+       Nope. Was a whitespace bug, FIXED.
+
+2009-07-01  Andreas J. Koenig  <andk@cpan.org>
+
+       * amend version numbers and let Andy Armstrongs script care for them
+       automatically. 1.9402 was delivered with 3 decreasing version numbers.
+       How come?
+
+       Status: Decreasing version number
+       =================================
+       
+            module: CPAN::Distribution
+           version: 1.93
+           in file: CPAN-1.9402/lib/CPAN/Distribution.pm
+            status: Not indexed because CPAN-1.9304/lib/CPAN.pm in
+                    A/AN/ANDK/CPAN-1.9304.tar.gz has a higher version number
+                    (1.9304)
+       
+            module: CPAN::Index
+           version: 1.93
+           in file: CPAN-1.9402/lib/CPAN/Index.pm
+            status: Not indexed because CPAN-1.9304/lib/CPAN.pm in
+                    A/AN/ANDK/CPAN-1.9304.tar.gz has a higher version number
+                    (1.9304)
+       
+            module: CPAN::LWP::UserAgent
+           version: 1.00
+           in file: CPAN-1.9402/lib/CPAN/LWP/UserAgent.pm
+            status: Not indexed because CPAN-1.9304/lib/CPAN.pm in
+                    A/AN/ANDK/CPAN-1.9304.tar.gz has a higher version number
+                    (1.9304)
+
+       Something like
+       perl-reversion -current 0.0.4 -set 0.0.5 lib/**/*.pm
+
+2009-04-19  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Acme::Badexample ($VERSION = do { $_++ while 1; return $_ };) breaks
+       us. Could not get a stable solution from BSD::Resource. The problem was
+       that when running the r command after a while the number of $SIG{XCPU}
+       interrupts increased until finally the shell ended itself. Probably a
+       bug somewhere else. Giving up at this state:
+
+diff --git a/lib/CPAN/Module.pm b/lib/CPAN/Module.pm
+index f9520d9..92d53c9 100644
+--- a/lib/CPAN/Module.pm
++++ b/lib/CPAN/Module.pm
+@@ -652,9 +652,32 @@ sub available_version {
+ #-> sub CPAN::Module::parse_version ;
+ sub parse_version {
+     my($self,$parsefile) = @_;
++    our($soft0,$hard0,$used0);
++    if (CPAN->has_usable("BSD::Resource")) {
++        ($used0) = BSD::Resource::getrusage();
++        ($soft0,$hard0) = BSD::Resource::getrlimit(BSD::Resource::RLIMIT_CPU()) unless $soft0;
++        warn "used0[$used0]soft0[$soft0]hard0[$hard0]\n";
++        my $success = BSD::Resource::setrlimit(BSD::Resource::RLIMIT_CPU(),int(3+$used0),$hard0);
++        if ($success) {
++            $SIG{XCPU} = sub {
++                my $sig = shift;
++                die +{ SIG => $sig};
++            };
++        } else {
++            $CPAN::Frontend->mywarn("Could not set limit\n");
++        }
++    }
+     my $have = eval { MM->parse_version($parsefile); };
+     if ($@) {
+-        $CPAN::Frontend->mywarn("Error while parsing version number in file '$parsefile'\n");
++        if (my $sig = $@->{SIG}) {
++            $CPAN::Frontend->mywarn("Signal $sig caught while parsing version number in file '$parsefile'\n");
++        } else {
++            $CPAN::Frontend->mywarn("Error while parsing version number in file '$parsefile'\n");
++        }
++    }
++    if ($soft0) {
++        BSD::Resource::setrlimit(BSD::Resource::RLIMIT_CPU(),$soft0,$hard0);
++        $SIG{XCPU} = 'IGNORE';
+     }
+     my $leastsanity = eval { defined $have && length $have; };
+     $have = "undef" unless $leastsanity;
+
+       Seems to be solved with a much simpler alarm call now but I had to
+       choose a surprisingly high alarm value of 10. Below that I saw random
+       errors.
+
+2009-04-14  Andreas J. Koenig  <andk@cpan.org>
+
+       * explicit option to prefer Archive::Tar over tar like suggested by
+       https://rt.cpan.org/Ticket/Display.html?id=33686?
+
+       explicit option for suppress readline!
+
+       while being at readline: improve the wording "available" versus what
+       Schwern suggested in https://rt.cpan.org/Ticket/Display.html?id=29862
+
+2009-04-14  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * reminder: Solaris tar cannot read tarballs with a path with more than
+       100 bytes. Wolfram re-reported it today.
+
+       https://rt.cpan.org/Ticket/Display.html?id=43813 was the first report.
+       No, https://rt.cpan.org/Ticket/Display.html?id=40843
+
+       MST suggested switching to tgz. Good idea.
+
+2009-03-13  Andreas J. Koenig  <andk@cpan.org>
+
+       * git tags not exported. Why? Need to export the release tags. How?
+
+       Do I actually have some? 
+
+% git tag -l | tail
+1.92_63
+1.92_64
+1.92_65
+1.92_66
+1.93
+1.9301
+1.9304
+1.93_02
+1.93_03
+1.93_51
+
+       But on the re-imported clone it ends with 1.9301
+
+       git push --tags
+
+       this is considered to dtrt. Can be checked visiting github and hovering
+       over "all tags". According to
+       http://blog.ashchan.com/archive/2008/06/30/tags-on-git/ at least.
+       Problem with that is we have so many tags that we cannot scroll to the
+       last in firefox.
+
+       But indeed 'git push --tags' did work as expected and downloading to the
+       the other box also
+
+2009-03-13  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * test YAML::XS and YAML::Perl.
+
+|                 | YAML::Syck | YAML::XS | YAML | YAML::Perl     | YAML::Tiny |
+|                 |            |          |      |                |            |
+| hosts command   | 0 s        | 0 s      | 5 s  | INTR after 1 m | FAILS      |
+|                 |            |          |      |                |            |
+| test Acme::Meta | 4 s        | 4 s      | 35 s | FAILS          | FAILS      |
+|                 |            |          |      |                |            |
+
+2009-02-28  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * support deprecate.pm: Nick's plan seems to be that when Switch.pm is
+       installed at
+
+       /Users/nick/Sandpit/511v/lib/perl5/5.11.0/Switch.pm
+
+       then it is a second class citizen (because it came with perl) which
+       warns when being loaded (due to deprecated.pm). But when it (the very
+       same file) is installed from the CPAN it will live in a different
+       location, say
+
+       /Users/nick/Sandpit/511v/lib/perl5/site_perl/5.11.0/Switch.pm
+
+       and then it will not warn about deprecate although the 'use deprecate'
+       is in the file.
+
+       The plan is to change CPAN.pm such that it installs from CPAN the very
+       same version as the core version is. The difference should be recognized
+       in the installation directory. So there shall be more magic in the INC
+       order.
+       
+2009-02-27  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * todo/nice to have: completion on distros such that before the slash we
+       complete user ids and after the slash not ls() but existing distros. Or
+       maybe if we have more than x characters we complete the distros. Or some
+       such.
+
+2009-01-22  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * todo: add a new pause batch signing key
+
+2009-01-18  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * 12:04:17 <@Alias> What I'm suggesting is that CPAN.pm can be embedded inside of 
+                  larger programs
+12:04:36 <@Alias> Or at least, it should be... it is extremely front-end 
+                  centric in many places
+12:05:22 <@Alias> Well, I can't actually load up CPAN.pm inside my process, as 
+                  it's unsafe...
+12:05:29 <@Alias> Because it does permalocks on files and stuff
+12:05:36 <@Alias> And that goes all explodey
+12:05:47 <@Alias> So I have to isolate each CPAN.pm call out in seperate 
+                  processes
+12:06:20 <@Alias> Mostly via pip or "cpan Whatever" calls
+12:07:04 <@klapperl> maybe we can get rid of the permalocks 
+12:07:11 <@Alias> That would be nice
+12:07:26 <@Alias> Also, to not apply the "don't try to reinstall" between 
+                  user-land commands
+12:08:12 <@Alias> But if we could flush some of this stuff out, it would be nice
+
+2008-11-03  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * shlomi-regex-utf8.pl needs a trick to kill itself after a second or
+       two but without alarm because alarm doesn't kill the running regexp.
+       Implemented with open..."|-". It uses alarm but in the parent and the
+       child runs the regex.
+
+       * S/SR/SRI/Catalyst-Plugin-HTML-Widget-1.1.tar.gz also calls cpanplus.
+
+2008-11-02  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * somebody has successfully called cpanplus. I suspect it was
+       Devel-ebug-HTTP-0.32. Or Module::Install::Catalyst. Whatever. I now have
+       a process standing in
+       /home/sand/.cpanplus/5.11.0/build/Catalyst-Runtime-5.7015 doing nothing
+       having 6 pipes open and giving me no clue.
+
+       Yes, Leon has Module::Install 0.60 in inc/. Arrrrrrrgh.
+
+       http://rt.cpan.org/Ticket/Display.html?id=40599
+
+2008-10-23  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Scriptalicious had its first fail on 2008-07-08 with a bleadperl since
+       then 6 green and 31 red.
+
+2008-09-14  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Class::MOP and 32734:
+
+Class-MOP-0.64_01.tar.gz  OK
+Class-MOP-0.64_02.tar.gz  OK
+Class-MOP-0.64_03.tar.gz  OK
+Class-MOP-0.64_04.tar.gz  OK
+Class-MOP-0.64_05.tar.gz  NOT OK
+
+       A comment explains that the other versions did not load XS but fell back
+       to the pure perl versions.
+
+       It's not a trivial enough thing for me to simply fix it with an #if.
+
+       Envariable CLASS_MOP_NO_XS? Fixes it, of course but does not help us much.
+
+2008-09-10  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Class-MOP
+
+----Program----
+eval q{use Class::MOP 0.65};
+print $@ ? "N/A" : "OK";
+print "\n";
+
+----Output of ...pIitLTW/perl-5.10.0@32733/bin/perl----
+OK
+
+----EOF ($?='0')----
+----Output of ...p3OAlrp/perl-5.10.0@32734/bin/perl----
+N/A
+
+----EOF ($?='0')----
+
+       http://rt.cpan.org/Ticket/Display.html?id=39149
+
+2008-09-07  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * HOP-Parser-0.01 broke between
+
+ FAIL  1754549 meta:from[DAGOLDEN] meta:date[2008-06-20T22:25:00]
+ PASS  1727355 meta:from[andreas.koenig.gmwojprw] meta:date[2008-06-18T02:45:00]
+
+       HOP::Stream 0.02 came out
+
+       http://rt.cpan.org/Ticket/Display.html?id=37367 by RUDY with patch
+
+2008-09-06  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * ATOURBIN/rpm-build-perl-0.6.8.tar.gz (= B::PerlReq) broke between Jun
+       28 and Jul 8 for all perls that had modules up to date. My 34053 is not
+       uptodate and it still tests ok.
+
+       Looking at the output of 'r' should reveal something.
+
+       B::Debug                       1.07      1.11  OK
+       B::Utils                       0.05      0.06  OK
+       Devel::CallTrace                1.0       1.2  OK
+       Devel::Backtrace               0.10      0.11  OK
+       CPAN::Reporter                 1.15      1.1601 NOT OK
+
+       https://rt.cpan.org/Ticket/Display.html?id=39054 by DAGOLDEN with patch
+
+2008-09-04  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * limit the autogeneration of a Makefile.PL to single-file stuff should
+       not break too many script distros. Requested by
+
+Mailing-List: contact perl-qa-help@perl.org; run by ezmlm
+To: perl-qa@perl.org
+Subject: Re: imaginary Makefile.PL (and scripts)
+Date: Wed, 3 Sep 2008 13:24:34 -0700
+Message-Id: <200809031324.34780.ewilhelm@cpan.org>
+From: Eric Wilhelm <scratchcomputing@gmail.com>
+
+2008-08-23  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * it has already been reported as http://rt.cpan.org/Ticket/Display.html?id=36912
+
+       Hook::Filter has a use_ok in a BEGIN block. Only reached one of several
+       things is missing because then it is a skip_all. use_ok in BEGIN block?
+       Wasn't this allowed in old times due to a Test::Simple bug? Yes. I added
+       a comment to the ticket.
+
+2008-07-17  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * mixed success with JSON::XS. At least a first binary search
+       demonstrates that there must be some problem.
+
+----Program----
+eval q{use JSON::XS 2.22};
+print $@ ? "N/A" : "OK";
+print "\n";
+
+----Output of .../pQYroRO/perl-5.9.3@27322/bin/perl----
+OK
+
+----EOF ($?='0')----
+----Output of .../piMBZQp/perl-5.9.3@27323/bin/perl----
+N/A
+
+----EOF ($?='0')----
+
+       Is it a Test::Harness problem? The test output looks OK but the summary
+       says FAIL. T:H is up to date, 3.12. Upgrading CPAN from 1.9205 to
+       1.92_63. Upgrading CPAN::Reporter from 1.1601 to 1.16_51.
+
+       Still same bad result.
+
+       Upgrading to Test::Harness::Straps 0.30 No success
+
+cpan[5]> install JSON::XS
+Running install for module 'JSON::XS'
+Running make for M/ML/MLEHMANN/JSON-XS-2.22.tar.gz
+  Has already been unwrapped into directory /home/sand/.cpan/build/JSON-XS-2.22-bEP80n                                                                          
+  Has already been made
+Running make test
+PERL_DL_NONLAZY=1 /home/src/perl/repoperls/installed-perls/perl/piMBZQp/perl-5.9.3@27323/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
+t/00_load...............ok
+t/01_utf8...............ok
+t/02_error.............. All 31 subtests passed
+t/03_types..............ok
+t/04_dwiw_encode........ok
+t/05_dwiw_decode........ok
+t/06_pc_pretty..........ok
+t/07_pc_esc.............ok
+t/08_pc_base............ok
+t/09_pc_extra_number....ok
+t/10_pc_keysort.........ok
+t/11_pc_expo............ok
+t/12_blessed............ok
+t/13_limit..............ok
+t/14_latin1.............ok
+t/15_prefix.............ok
+t/16_tied...............ok
+t/17_relaxed............ok
+t/18_json_checker.......ok
+t/19_incr...............ok
+t/99_binary.............ok
+
+Test Summary Report
+-------------------
+Files=21, Tests=25547, 24 wallclock secs ( 9.90 usr  0.04 sys + 13.26 cusr  0.25 csys = 23.45 CPU)
+Result: FAIL
+Failed 1/21 test programs. 0/25547 subtests failed.
+
+
+       Most probably the t/02error.t thing, it has no "ok".
+
+       Oh no! I saw the above thing several times and now I retried and it has
+       disappeared with that same perl @27323.
+
+2008-07-13  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * DBD-Pg on k81 hangs forever asking for 'Path to pg_config?'
+
+       * STEVAN/FCGI-Engine-0.04 seems to hang forever
+
+2008-07-09  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * App-Control-1.02 seems to call the wrong perl and when it then fails
+       it goes into a--fortunately slow--endless loop. Need to investigate
+       soonish if nobody beats me to it.
+
+2008-07-07  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * XML::RSS::Tools has three FAILS that nobody else reported but me.
+
+       Manually reproducable with 5.10.0 () and ParseReport does not lead me in
+       any direction.
+
+       So I decide to upgrade random pieces.
+
+       I come by Archive::Any and I see it fail the same way as XML::RSS::Tools!!!
+
+t/type............
+#   Failed test 'right warning, unknown type'
+#   at t/type.t line 15.
+# found carped warning: uplevel 2 is more than the caller stack at /home/src/perl/repoperls/installed-perls/perl/pVNtS9N/perl-5.8.0@32642/lib/site_perl/5.10.0/Test/Warn.pm line 283
+# found warning: No mime type found for type 'hominawoof' at /home/sand/.cpan/build/Archive-Any-0.0932-SZsz9I/blib/lib/Archive/Any.pm line 169.
+# expected to find warning: (?-xism:No mime type found for type 'hominawoof')
+
+#   Failed test 'right warning, no type'
+#   at t/type.t line 19.
+# found carped warning: uplevel 2 is more than the caller stack at /home/src/perl/repoperls/installed-perls/perl/pVNtS9N/perl-5.8.0@32642/lib/site_perl/5.10.0/Test/Warn.pm line 283
+# found warning: No handler available for type 'text/plain' at /home/sand/.cpan/build/Archive-Any-0.0932-SZsz9I/blib/lib/Archive/Any.pm line 179.
+# expected to find warning: (?-xism:No handler available for type 'text/plain')
+# Looks like you failed 2 tests of 7.
+ Dubious, test returned 2 (wstat 512, 0x200)
+ Failed 2/7 subtests 
+
+Test Summary Report
+-------------------
+t/type        (Wstat: 512 Tests: 7 Failed: 2)
+  Failed tests:  5, 7
+
+
+       Test-Warn has many used-by and many dependencies. I pick for example
+       dependency on Sub::Uplevel and this perl has 0.19_03.
+
+       Only few have 0.19_03 installed. And indeed, downgrading to 0.1901 fixes
+       the issue.
+
+2008-07-03  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Math-BaseCalc
+
+       1802488 1802531 1813504 1814071 1819368 1823811 1826225 
+
+2008-06-28  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       *  rt-perl-22977
+
+----Program----
+sub f ($); # Comment out to get right result!
+sub f ($) {
+        my $test = $_[0];
+        write;
+        format STDOUT =
+@<<<<<<<
+$test
+.
+}
+f(1);
+f(2);
+
+----Output of .../pMZAcVt/perl-5.8.0@19648/bin/perl----
+1
+1
+
+----EOF ($?='0')----
+----Output of .../pgL2gwc/perl-5.8.0@19649/bin/perl----
+
+----EOF ($?='11')----
+
+
+2008-06-26  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Email-Simple 2.004/2.003: During the latest megainstall I installed
+       first 2.004 and later 2.003 for whatever reason. And then, when he tried
+       to install Email-Simple-FromHandle, he complained that 2.003 was
+       insufficient.
+
+       http://rt.cpan.org/Ticket/Display.html?id=37144
+
+2008-06-18  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Sys-Syscall-0.22 hangs with 34066 (maint-5.8) during 02-sendfile. That
+       makes Danga-Socket a DISCARD. Hmm. And then Perlbal hangs in its test.
+       Hmm.
+
+       update 2008-06-23: 34074@bleadperl also hangs. 34053 too. Why did I not
+       notice that? 33949 same. Aha: since Jun 15 there is process 9195 running
+       occupying port 60001, owned by sand, parent is 1 and it has plenty
+       children. I kill it and run the tests for 33949 again. Doesn't help. Now
+       process 21113, testing some t/31-realworld.t has occupied port 60001.
+
+       When I kill that then the Syscall test runs through.
+
+       Whose bug is that? I'd say Sys::Syscall should fail more gracefully
+       instead of just hanging.
+
+       Retrying 34053: now Sys-Syscall-0.22/t/01-epoll.t fails! But at least
+       without hanging. Same with 33949:
+
+t/01-epoll.........
+#   Failed test 'made temp listening socket'
+#   at t/01-epoll.t line 61.
+Can't use an undefined value as a symbol reference at t/01-epoll.t line 62.
+# Looks like you planned 20 tests but only ran 13.
+# Looks like you failed 1 test of 13 run.
+# Looks like your test died just after 13.
+ Dubious, test returned 255 (wstat 65280, 0xff00)
+ Failed 8/20 subtests 
+
+       Of course, there's process 9193 listening on 60000 since Jun 15.
+
+       And now epoll runs through everywhere.
+
+       http://rt.cpan.org/Ticket/Display.html?id=37075
+
+2008-06-13  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Todo: report Data::Float the bug to switch to "traditional" instead of
+       "passthrough".
+
+       https://rt.cpan.org/Ticket/Display.html?id=36731
+
+2008-06-12  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * As the last time in 2008-03-08 today I hit the Makefile.PLs written by
+       Module::Build::Compat "passthough" model. This time with
+       Data-Float-0.009 and Text-SimpleTable-0.03. Why does this perl have no
+       Module::Build? I thought my megainstall rules install it because they
+       install Bundle::CPANxxl? Yes, I do. But M:B FAILs with current
+       5.8.9-tobe. Is it Test::Harness 3.11? At line 675 we install T:H 3.11
+       and at 950 we fail the test compat.t, so yes, this is with 3.11.
+
+       Retrying with 33994 I see T:H 3.11 fail in its
+       t/compat/test-harness-compat.t. It has 3.10 and M:B PASSes.
+
+       Retrying with 33935 I see M:B PASS with T:H 3.10. Here T:H 3.11 PASSes
+       and is now installed. Testing M:B again FAILs on its t/compat.t test.
+
+       Retrying with what next? I would like to have a stock 5.8.8 as it comes
+       with just the bare metal.... Not needed because AndyA apparently
+       already knows (witnessed on #p5p)
+
+       Workaround is to force install M:B.
+
+2008-06-05  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * URI::Escape::XS has 10 fails all of which have useperlio, usemymalloc,
+       ld=cc, intsize=4, hint=recommended, dlsrc=dl_dlopen.xs,
+       d_longlong=define, ccversion="", cc=cc, alignbytes=4. But what does that
+       tell us?
+
+       perl bin/quidi-getreports.pl -q=conf:intsize URI-Escape-XS | perl -nale 'if ($F[0] eq "FAIL"){ print "~/var/cpantesters/nntp-testers/$F[1]"}'|xargs echo
+
+       With this list we can grep for the test failure (it is always 03-hashu.
+       Uniq -c gives us:
+
+      1 #   Failed test 'decodeURI(&quot;%uD869&quot;)'
+      9 #   Failed test 'decodeURI(&quot;%uD869%uDEB2%u5F3E%u0064&quot;)'
+
+       The shorter one is /home/k/var/cpantesters/nntp-testers/1595927 from chris.
+
+       No clue.
+
+2008-05-31  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * There seems to be a bug when the user has makepl_args and the
+       distroprefs file has other pl/args.
+
+2008-05-29  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * flock on windows is mandatory -- mail from Jan Dubois
+
+2008-05-28  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * what's the matter with maint-5.10? need a perl between 33823 and 33921
+       and because 33921 does not build I must read the available perls in the
+       APC directory:
+
+       % ls APC/perl-5.10.x-diffs
+
+       Trying 33883. Trying lots of older 5.10s which all must have worked some
+       time before because I do not think the I have skipped testing often. All
+       fail in the same way. Some debian upgrade must have broken something.
+       For the record:
+
+ok 385 - Archive type recognized properly
+not ok 386 - extract() for 'x.lzma' reports success
+
+#   Failed test 'extract() for 'x.lzma' reports success'
+#   at ../lib/Archive/Extract/t/01_Archive-Extract.t line 334.
+ok 387 - No errors capturing buffers
+not ok 388 - Found correct number of output files
+
+#   Failed test 'Found correct number of output files'
+#   at ../lib/Archive/Extract/t/01_Archive-Extract.t line 356.
+#          got: '0'
+#     expected: '1'
+Modification of non-creatable array value attempted, subscript -1 at ../lib/Archive/Extract/t/01_Archive-Extract.t line 358.
+1..388
+# Looks like you failed 2 tests of 388.
+# Looks like your test died just after 388.
+dubious
+        Test returned status 255 (wstat 65280, 0xff00)
+DIED. FAILED tests 386, 388
+        Failed 2/388 tests, 99.48% okay
+Failed Test                               Stat Wstat Total Fail  List of Failed
+-------------------------------------------------------------------------------
+../lib/Archive/Extract/t/01_Archive-Extra  255 65280   388    2  386 388
+Failed 1/1 test scripts. 2/388 subtests failed.
+Files=1, Tests=388,  3 wallclock secs ( 1.05 cusr +  0.34 csys =  1.39 CPU)
+
+       But Archive::Extract from CPAN passes its tests.
+
+       Look, the x.lzma files in perl and in Archive::Extract differ:
+
+% md5sum ~/.cpan/build/Archive-Extract-0.26-t7pU2J/t/src/x.lzma ./x.lzma
+44c17dfa72c5277ff13518c9214f8a02  /home/sand/.cpan/build/Archive-Extract-0.26-t7pU2J/t/src/x.lzma
+447ad6244441d9cccfa8ab690b6cd035  ./x.lzma
+>sand@k75:/home/src/perl/repoperls/perl-m-5.10.0@33942/lib/Archive/Extract/t/src% cmp -l ~/.cpan/build/Archive-Extract-0.26-t7pU2J/t/src/x.lzma ./x.lzma
+ 1 135  43
+ 2   0  43
+ 3   0  43
+ 4 200  43
+ 5   0  43
+ 6   0  43
+ 7   0  43
+ 8   0  43
+ 9   0  43
+10   0  43
+11   0  43
+12   0  43
+13   0  43
+14   0  43
+15   0  43
+16   0  43
+17   0  43
+18   0  43
+cmp: EOF auf /home/sand/.cpan/build/Archive-Extract-0.26-t7pU2J/t/src/x.lzma.
+
+       What? The test file in the CPAN distro is only 18 bytes? Bleedperl's
+       also has only 18 bytes.
+
+       see http://public.activestate.com/cgi-bin/perlbrowse/r///depot/maint-5.10/perl/lib/Archive/Extract/t/src/x.lzma.packed which says:
+
+//depot/maint-5.10/perl/lib/Archive/Extract/t/src/x.lzma.packed
+... #2 change 33943 integrate on 2008/05/28 by davem@davem-pigeon (text) 'Integrate: [ 33414] Subject: [p'
+... ... copy from //depot/perl/lib/Archive/Extract/t/src/x.lzma.packed#2
+... #1 change 33113 branch on 2008/01/29 by nicholas@nicholas-saigo (text) 'Integrate: [ 32652] Upgrade to '
+... ... branch from //depot/perl/lib/Archive/Extract/t/src/x.lzma.packed#1
+
+       And the same for bleadperl http://public.activestate.com/cgi-bin/perlbrowse/r///depot/perl/lib/Archive/Extract/t/src/x.lzma.packed
+
+//depot/perl/lib/Archive/Extract/t/src/x.lzma.packed
+... #2 change 33470 edit on 2008/03/10 by rgs@scipion (text) 'Subject: Re: [PATCH] make Archi'
+... ... copy into //depot/maint-5.10/perl/lib/Archive/Extract/t/src/x.lzma.packed#2
+... #1 change 33098 add on 2008/01/28 by stevep@stevep-kirk (text) 'Upgrade to Archive-Extract-0.26'
+... ... branch into //depot/maint-5.10/perl/lib/Archive/Extract/t/src/x.lzma.packed#1
+
+       main-5.10 has the packed file instead of the unpacked one. So who calls
+       uupacktool and how?
+
+       Ahh, 33943 must fix it. My last try was 33942.
+
+2008-05-25  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * >>>>> On Sun, 25 May 2008 12:53:15 -0400, "David Golden" said:
+
+  > So here's what I think should be the logic, more or less:
+
+  > * under "install", all 'requires' must be satisfied without adding
+  > build directories to PERL5LIB or else they need to be queued.  All
+  > "build_requires" must be satisfied including build directories or they
+  > need to be queued.
+
+  > * under "test/make", "requires" or "build_requires" must be satisfied
+  > including build directories or they need to be queued
+
+  > What do you think?
+
+       Excellent summary. This will indeed allow the user to mix install and
+       make/test commands.
+
+2008-05-21  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Games::RolePlay::MapGen puzzling fails may need autobundle diffs.
+
+       /home/sand/.cpan/Bundle/Snapshot_2008_05_21_00.pm
+
+2008-05-18  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * David did some refactoring and now we see that satisfy_requires and
+       satisfy_configure_requires are similar but not foldable into one thing.
+       Is this intentional or are there bugs lurking?
+
+       * "later_for" seems an unused variable, David said. Dispensable or lost
+       in transition? Not lost in transition, rather introduced without a clear
+       mission.
+
+       * bleedperl between 33832 and 33845 broke CPAN::Reporter?
+
+t/51_test_report_fail..................
+#   Failed test 't-MultipleMatch: 'make test' grade explanation correct'
+#   at t/51_test_report_fail.t line 105.
+#          got: ''make test' error detected.'
+#     expected: 'One or more tests failed.'
+# Looks like you failed 1 test of 102.
+ Dubious, test returned 1 (wstat 256, 0x100)
+ Failed 1/102 subtests
+
+       This is in the logfile but I cannot reproduce it.
+
+2008-05-10  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Kwiki::Test and 5.10.1 tobe have a problem. 33787 is my maint-5.10,
+       33788 my blead. Autobundles in
+
+           /home/sand/.cpan/Bundle/Snapshot_2008_05_10_0[01].pm
+
+       First suspect File::Path 2.04 vs 2.06?
+
+       http://rt.cpan.org//Ticket/Display.html?id=35761
+
+2008-05-04  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Devel::Profiler
+
+       http://rt.cpan.org/Ticket/Display.html?id=35620
+
+       * new bug in Module::Install? MooseX::Storage declares the dependency
+       "Best" on feature "YAML". Then I set my usual environment variables for
+       Module::Install and nobody asks a question and Best is not being
+       installed. Who's doing wrong?
+
+       To find out, we need a perl without Best.pm. 33711
+
+       Trying on the commandline both
+
+       /home/src/perl/repoperls/installed-perls/perl/pw3p8BE/perl-5.10.0@33711/bin/perl Build.PL
+       and
+       /home/src/perl/repoperls/installed-perls/perl/pw3p8BE/perl-5.10.0@33711/bin/perl Makefile.PL
+
+       ask the right questions, But setting either PERL_AUTOINSTALL=--skip or
+       PERL_EXTUTILS_AUTOINSTALL=--skip leads to no questions asked.
+
+       This is contrary to my expectations but as I'm not sure how
+       Module::Install intends to behave I cannot really tell what's up.
+
+       I filed a ticket against Module::Install to please provide some docs.
+
+       https://rt.cpan.org/Ticket/Display.html?id=35619
+
+2008-05-03  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * SOAP-WSDL fails sometimes with Can't locate object method "new" via
+       package "SOAP::WSDL::Transport::HTTP"
+
+       Stepping through the debugger reveals it may have to do with the fact
+       that I have Test::Without::Module installed. Because otherwise he skips
+       tests silently.
+
+       http://rt.cpan.org/Ticket/Display.html?id=35610
+
+       * Catalyst-View-Jemplate 0.06 had a few fails recently, the first on May
+       1.
+
+       Jemplate 0.22 seems to break it
+
+    CPAN_FILE    R/RK/RKRIMEN/Jemplate-0.22.tar.gz
+    UPLOAD_DATE  2008-04-29
+
+       There is no older version in the RKRIMEN directory. Previous maintainer
+       was INGY. Downgrading to INGY/Jemplate-0.21? Does not fix it. 0.20 fixes
+       this.
+
+       http://rt.cpan.org//Ticket/Display.html?id=35609
+
+       * DROLSKY/Log-Dispatch-2.21.tar.gz has its first fail ever yesterday.
+
+       Looks like a Params::Validate issue
+
+       k75 33755 0.89 PASS
+       k75 33755 0.90 FAIL
+       k81 32642 0.89 PASS
+       k81 32642 0.90 FAIL
+       k78 5.8.8 0.89 PASS
+       k78 5.8.8 0.90 FAIL
+
+       http://rt.cpan.org/Ticket/Display.html?id=35608
+
+       * SHA256-0.01b has some 64bit issue. All FAILs are systems that have
+       use64bitint set.
+
+       http://rt.cpan.org/Ticket/Display.html?id=33944
+
+2008-04-29  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * XML::SAX::RTF needs an emergency release
+
+       * Bug in new distroprefs: sorting has been lost
+
+2008-04-26  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * get-reports: when we get no clue from whatever we try we would like to
+       have an automaton that tests for every possible dependency, calculates a
+       regression and lists them. POE::API::Peek is such a case but also
+       List-Sliding-Changes might be analyzable that way.
+
+       L:S:C is fixed and get-reports did not help. Would have needed more
+       insights into tests but most reports do not provide that especially not
+       when it is a PASS.
+
+2008-04-25  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * IPC::Run fails today with any perl I try even with perls that have
+       installed it successfully in the past and recent days. Either a
+       dependency on a module has got a new version or something on that system
+       (semaphores?). Interesting is http://rt.cpan.org/Ticket/Display.html?id=28150
+       Locale! distropref written.
+
+2008-04-23  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Event::Lib seems to need a binarysearch. Might be a Test::Harness issue.
+
+       Ok, came to the conclusion it is Test::Harness 3.0 related.
+
+       http://rt.cpan.org/Ticket/Display.html?id=35355
+
+       * JSON::XS 2.2 is accused to need a binary search but I find it working
+       under many bleadperls and indeed failing with a very old bleedperl
+       (30953).
+
+       cpantesters currently count Pass 65 : Fail 3, so this seems to be a
+       bogus report.
+
+2008-04-21  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * apc-overview says/should say
+
+maint-5.10                   5.10.1   32695  33660 ( 116) [have 33642]
+maint-5.8                     5.8.9   27041  33694 ( 982) [have 33638]
+perl                         5.11.0   32643  33714 ( 810) [have 33714]
+
+       missing number of patches since last build
+
+2008-04-20  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Coming back to Data::Serializer. The trick was to do what in the
+       debugger?
+
+       make testdb TEST_FILE=t/05-Encryption.t
+
+       b 53 "JSON" eq $serializer
+       s
+       c 340
+       s
+       c 738
+       s
+       c 642
+
+       Ahja, now we can reconstruct.
+
+       use Crypt::CBC;
+       my $secret = "test";
+       my $cipher = "Blowfish";
+       my $digest = qq{deadbeef};
+       $digest .= chr(256); chop $digest;
+       my $cipher_obj = Crypt::CBC->new($secret,$cipher);
+       print length $cipher_obj->encrypt($digest)==32 ? "ok\n" : "not ok\n";
+
+       http://rt.cpan.org/Ticket/Display.html?id=35239
+
+       And a perlbug
+
+       Bitops on strings when UTF8 flag is set
+
+2008-04-13  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * would like to get DJHD/Speech-Recognizer-SPX-0.09.tar.gz running on
+       debian but it needs more work:
+
+Package pocketsphinx was not found in the pkg-config search path.
+Perhaps you should add the directory containing `pocketsphinx.pc'
+to the PKG_CONFIG_PATH environment variable
+No package 'pocketsphinx' found
+Unable to locate PocketSphinx using pkg-config.  Please make sure that
+you have installed pkg-config and PocketSphinx on your system, and
+that PKG_CONFIG_PATH is set correctly.
+
+
+2008-04-12  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * would like to get JavaScript to compile. Needs work on Debian. The
+       $lib/$libs thing is broken, fixing it was easy but then the compilation
+       and the tests still failed.
+
+       * refresh investigations Data::Serializer
+
+       The string that is brought from JSON via Data::Serializer to Crypt::CBC::encrypt is this:
+
+  DB<10> Devel::Peek::Dump $data
+SV = PVMG(0x8a9e908) at 0x87e1964
+  REFCNT = 2
+  FLAGS = (PADMY,POK,pPOK,UTF8)
+  IV = 0
+  NV = 0
+  PV = 0x8b32198 "6cbcecd11182ea942e597f5a5b77b2883885cceccff88f6b08e025db66316c96=[\"one\",\"two\",\"three\"]"\0 [UTF8 "6cbcecd11182ea942e597f5a5b77b2883885cceccff88f6b08e025db66316c96=["one","two","three"]"]
+  CUR = 86
+  LEN = 221
+  MAGIC = 0x85c4148
+    MG_VIRTUAL = &PL_vtbl_utf8
+    MG_TYPE = PERL_MAGIC_utf8(w)
+    MG_LEN = 86
+
+       So far no difference between 2396[56] in Crypt::CBC::crypt.
+
+       The difference comes after 
+
+       my @blocks = unpack("a$bs "x(int(length($self->{'buffer'})/$bs)) . "a*", $self->{'buffer'});
+
+       These blocks are UTF8 since 23966 and were not so in 23965. Even with
+       identical 7bit content this makes a difference later.
+
+2008-04-11  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * may be a bug in Distroprefs.pm the $abs in line 122. Seen with some DD
+       only perl.
+
+       * OOTools:
+
+----Program----
+eval q{use Class::Error 2.21};
+print $@ ? "N/A" : "OK";
+print "\n";
+
+----Output of .../pBnR154/perl-5.9.2@24659/bin/perl----
+OK
+
+----EOF ($?='0')----
+----Output of .../pWYtCAP/perl-5.9.2@24660/bin/perl----
+N/A
+
+----EOF ($?='0')----
+
+
+2008-04-05  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * CharsetDetector
+
+----Program----
+eval q{use CharsetDetector 1.0};
+print $@ ? "N/A" : "OK";
+print "\n";
+
+----Output of .../pdVMYpV/perl-5.9.2@25178/bin/perl----
+OK
+
+----EOF ($?='0')----
+----Output of .../p1Kjy6j/perl-5.9.2@25179/bin/perl----
+N/A
+
+----EOF ($?='0')----
+
+
+       * There are some perls on my system that cannot compile current Expect!
+
+       Which are that? At the moment just 25185. 25180 and 25194 both have it,
+       so the gap must be pretty small.        
+
+2008-04-04  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Data-Serializer:
+
+----Program----
+eval q{use Data::Serializer 0.44; use JSON 2.07};
+print $@ ? "N/A" : "OK";
+print "\n";
+
+----Output of .../p691lTk/perl-5.9.1@23965/bin/perl----
+OK
+
+----EOF ($?='0')----
+----Output of .../pSMD0sR/perl-5.9.1@23966/bin/perl----
+N/A
+
+----EOF ($?='0')----
+
+
+2008-04-01  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Ricardo Signes suggested to discuss PAUSE issues on some list and I
+       suggested reviving cpan-workers. Now I am not sure that I'm subscribed
+       there. Google suggests the address is cpan-workers@perl.org
+
+       http://www.nntp.perl.org/group/perl.cpan.workers/
+
+       has the last posting from 2005. I'll now retry to send a message.
+
+       update 2008-04-03 akoenig : seems to be disabled. But perl.cpan.discuss
+       is in the slow lists and alive and I'm probably not subscribed.
+
+       * Both Barbie and David Golden agreed to my plan to refuse the make
+       phase when we are in the make(1) domain AND some files have a future
+       timestamp. Slaven is opposed to the idea but has no better suggestion.
+       Details in the thread on cpan-testers-discuss starting on 2008-03-28.
+
+       * To understand #34582 I need a perl without Glib, ExtUtils::Depends,
+       and ExtUtils::PkgConfig. Then I should issue a 'test Glib'
+
+       No, better would be a perl with ExtUtils::Depends < 0.300 and/or
+       ExtUtils::PkgConfig < 1.00 to see if they can pick up the right one.
+
+       See also David Golden Message-ID:
+       <5d4beb40803052058w7f774a8u3a72891b1aba9803@mail.gmail.com> on
+       cpan-testers-discuss
+
+2008-03-30  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * No useable patch available between 17639 and 17672
+
+       This is where we lost JSON.
+
+----Program----
+eval q{use JSON 2.07};
+print $@ ? "N/A" : "OK";
+print "\n";
+
+----Output of .../p0IId7q/perl-5.8.0@17639/bin/perl----
+OK
+
+----EOF ($?='0')----
+----Output of .../p957hf5/perl-5.8.0@17672/bin/perl----
+N/A
+
+----EOF ($?='0')----
+Need a perl between 17639 and 17672
+(but 17642, 17654, 17656 could not successfully be used to build perl)
+
+       For some reason -Ui_db does not seem to work with these? No it seems the
+       -Ui_db was lost or forgotten.
+
+       So I retried after deleting much remainings from the previous binary
+       search and finally found a straight patch threshold:
+
+----Program----
+eval q{use JSON 2.07};
+print $@ ? "N/A" : "OK";
+print "\n";
+
+----Output of .../pfB6YBj/perl-5.8.0@17656/bin/perl----
+OK
+
+----EOF ($?='0')----
+----Output of .../pgWUpay/perl-5.8.0@17671/bin/perl----
+N/A
+
+----EOF ($?='0')----
+
+       So it is 17671. And as expected it has (pretty certainly) to do with the
+       change of the PERL_VERSION in patchlevel.h from 8 to 9.
+
+       http://rt.cpan.org/Ticket/Display.html?id=34599 reports/fixes JSON
+       
+       * distname vs modulename: david golden recently seemed to have suggested
+       a solution to the distname trap that everybody so far had been ignoring.
+       Where is a link?
+
+       The thread was Subject: RFC: URI::cpan on the module-authors@perl.org
+       mailing list.
+
+       * No useable patch available between 17639 and 17836
+
+       -Ui_db as described further down
+
+2008-03-29  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * timestamps in the future:
+
+>  I'm going beyond that: toss the entire _make_ unless they say
+>  "allow_future_timestamps". Then CPAN::Reporter could refuse to send
+>  reports when they actually do set "allow_future_timestamp".
+
+I think that's a very reasonable way to go.
+
+       This needs to be done soonish.
+
+       * Crypt-CBC-2.27 seems to not declare prereq Crypt-Rijndael but fail
+       without it? Seen with 25418. Reported in
+       http://rt.cpan.org/Ticket/Display.html?id=34521
+
+2008-03-27  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Data::Serializer: I stopped a binary search because of Math::Pari
+
+       Then I restarted it and it ended with the impossible resolution:
+
+----Program----
+eval q{use Data::Serializer 0.44};
+print $@ ? "N/A" : "OK";
+print "\n";
+
+----Output of ...pVDHwBj/perl-5.10.0@33153/bin/perl----
+OK
+
+----EOF ($?='0')----
+----Output of ...pyNdNAp/perl-5.10.0@33154/bin/perl----
+N/A
+
+----EOF ($?='0')----
+
+       Crap because 33154 is a patch of just a test.
+
+-optimize='-g';
++optimize='-O2';
+
+-archname='i686-linux-64int';
++archname='i686-linux';
+
+       Let's remove 33154. Next iteration ends here:
+
+----Program----
+eval q{use Data::Serializer 0.44};
+print $@ ? "N/A" : "OK";
+print "\n";
+
+----Output of ...pyQ307v/perl-5.10.0@33550/bin/perl----
+OK
+
+----EOF ($?='0')----
+----Output of ...p0PdUk4/perl-5.10.0@33551/bin/perl----
+N/A
+
+----EOF ($?='0')----
+
+       with only configdiff:
+
+-d_builtin_expect='define';
++d_builtin_expect='undef';
+
+       Stepping through the debugger reaches a point:
+
+643:      return $cipher_obj->encrypt($digest);
+  DB<42> x $digest
+0  '6cbcecd11182ea942e597f5a5b77b2883885cceccff88f6b08e025db66316c96=["one","two","three"]'
+  DB<43> x $cipher_obj
+0  Crypt::CBC=HASH(0x90d1b74)
+   'blocksize' => 8
+   'cipher' => 'Crypt::Blowfish'
+   'header_mode' => 'salt'
+   'iv' => undef
+   'key' => undef
+   'keysize' => 56
+   'legacy_hack' => undef
+   'literal_key' => ''
+   'make_random_iv' => 1
+   'make_random_salt' => 1
+   'padding' => CODE(0x8aa745c)
+      -> &Crypt::CBC::_standard_padding in /home/src/perl/repoperls/installed-perls/perl/prFWwqr/perl-5.10.0@33580/lib/site_perl/5.11.0/Crypt/CBC.pm:461-476
+   'passphrase' => 'test'
+   'pcbc' => undef
+   'salt' => undef
+  DB<44> s
+Crypt::CBC::encrypt(/home/src/perl/repoperls/installed-perls/perl/prFWwqr/perl-5.10.0@33580/lib/site_perl/5.11.0/Crypt/CBC.pm:173):
+173:        my ($self,$data) = @_;
+  DB<44> n
+Crypt::CBC::encrypt(/home/src/perl/repoperls/installed-perls/perl/prFWwqr/perl-5.10.0@33580/lib/site_perl/5.11.0/Crypt/CBC.pm:174):
+174:        $self->start('encrypting');
+  DB<44> 
+Crypt::CBC::encrypt(/home/src/perl/repoperls/installed-perls/perl/prFWwqr/perl-5.10.0@33580/lib/site_perl/5.11.0/Crypt/CBC.pm:175):
+175:        my $result = $self->crypt($data);
+  DB<44> 
+input must be 8 bytes long at /home/src/perl/repoperls/installed-perls/perl/prFWwqr/perl-5.10.0@33580/lib/site_perl/5.11.0/i686-linux-64int/Crypt/Blowfish.pm line 56.
+ at /home/src/perl/repoperls/installed-perls/perl/prFWwqr/perl-5.10.0@33580/lib/site_perl/5.11.0/i686-linux-64int/Crypt/Blowfish.pm line 56
+        Crypt::Blowfish::encrypt('Crypt::Blowfish=HASH(0x90cc684)', 'u¿&µ[²k') called at /home/src/perl/repoperls/installed-perls/perl/prFWwqr/perl-5.10.0@33580/lib/site_perl/5.11.0/Crypt/CBC.pm line 250
+        Crypt::CBC::crypt('Crypt::CBC=HASH(0x90d1b74)', '6cbcecd11182ea942e597f5a5b77b2883885cceccff88f6b08e025db66316...') called at /home/src/perl/repoperls/installed-perls/perl/prFWwqr/perl-5.10.0@33580/lib/site_perl/5.11.0/Crypt/CBC.pm line 175
+        Crypt::CBC::encrypt('Crypt::CBC=HASH(0x90d1b74)', '6cbcecd11182ea942e597f5a5b77b2883885cceccff88f6b08e025db66316...') called at blib/lib/Data/Serializer.pm line 643
+        Data::Serializer::_encrypt('Data::Serializer=SCALAR(0x909efac)', '["one","two","three"]', 'Blowfish', 'SHA-256') called at blib/lib/Data/Serializer.pm line 738
+        Data::Serializer::serialize(undef, 'ARRAY(0x8510aac)') called at ./t/serializer-testlib line 340
+        main::run_test('ExtUtils::TBone=HASH(0x85122ac)', 'JSON', 'simplearray', 'encryption') called at t/05-Encryption.t line 53
+
+
+       Retrying
+
+  DB<47> 
+Crypt::CBC::crypt(/home/src/perl/repoperls/installed-perls/perl/prFWwqr/perl-5.10.0@33580/lib/site_perl/5.11.0/Crypt/CBC.pm:245):
+245:        foreach my $block (@blocks) {
+  DB<47> x \@blocks
+0  ARRAY(0x8a93128)
+   0  '6cbcecd1'
+   1  '1182ea94'
+   2  '2e597f5a'
+   3  '5b77b288'
+   4  '3885ccec'
+   5  'cff88f6b'
+   6  '08e025db'
+   7  '66316c96'
+   8  '=["one",'
+   9  '"two","t'
+  DB<48> l
+245==>      foreach my $block (@blocks) {
+246:          if ($d) { # decrypting
+247:            $result .= $iv = $iv ^ $self->{'crypt'}->decrypt($block);
+248:            $iv = $block unless $self->{pcbc};
+249           } else { # encrypting
+250:            $result .= $iv = $self->{'crypt'}->encrypt($iv ^ $block);
+251           }
+252:          $iv = $iv ^ $block if $self->{pcbc};
+253         }
+254:        $self->{'civ'} = $iv;               # remember the iv
+  DB<48> c 254
+input must be 8 bytes long at /home/src/perl/repoperls/installed-perls/perl/prFWwqr/perl-5.10.0@33580/lib/site_perl/5.11.0/i686-linux-64int/Crypt/Blowfish.pm line 56.
+
+
+       After some more stepping down into the debugger I discover that somebody
+       passes in an 8 character string to Blowfish and as it is UTF8 it is not
+       8 bytes and Blowfish correctly dies. Seems to be JSON 2.07 related.
+       33550 has no JSON installed. Is it that? Yes, maybe. But if I add JSON
+       into the prereq mix I need to go much further back in history. 5.8.8 is
+       OK, 24518 isn't and for perls before patch 25000 several things fall
+       apart for different reasons.
+
+       19173 cannot have JSON and subsequently Data::Serializer succeeds. So
+       the test scripts must add JSON as explicit requirement.
+
+       Now I find out that JSON does not run on 17968 either. So where did JSON
+       2.07 stop? 17639 was the beginning of 5.9.0 the day after 5.8.0. And
+       JSON 2.07 still did work with 17637.
+
+       * Math::Pari: a perlmonks posting leads to success but later perls broke
+       it again
+
+2008-03-25  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * maybe still unreported: Safe::World, Data::Dump::Streamer,
+       Authen-Htpasswd-0.16, YAML::LibYAML, Handel
+
+       * reported but unfixed: Devel::ebug, Storable, Tk, Devel::Size
+
+       * reported and fixed: FreezeThaw, Test::Deep, Params::Validate
+
+2008-03-25  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Repeatedly observed a "Possible unintended interpolation of ...@33430"
+
+       Where did it come from? Probably my fault!
+
+2008-03-23  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * RSOD/IPC-Run-0.80.tar.gz fails? Apparently yes, from time to time.
+
+2008-03-21  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Does Clone have issues ATM? Object-Relation has a problem and among
+       all dependencies the reddest is Clone. But I do have Clone in current
+       blead, why is it red? Simply because Steve and I have patched for 5.11
+       and not reported on RT as it seems.  Now done with
+
+       http://rt.cpan.org/Ticket/Display.html?id=34317
+
+2008-03-19  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Devel::Profiler has a very annoying test that tests plausible speed
+       and sets the threshod so low that nearly everybody fails.
+
+2008-03-18  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Slaven reports a special problem with Util-Properties 0.17 with
+       current CPAN.pm. It complains about -T while 1.9205 does not. With 5.8.8.
+
+       I have seen quite some successes with current CPAN.pm and several perls.
+       But also inexplicable behaviour (but not wrt -T).
+
+       Other contenders:
+
+       BBKR/IPC-Concurrency-0.4.tar.gz
+       JACQUELIN/RRDTool-Creator-0.9.tar.gz
+       ADIE/Test-Class-0.28.tar.gz
+
+
+2008-03-17  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * PERL5INC/OPT/LIB needs more testing. Net::Amazon::Signature is well
+       suited because it depends on Spiffy but doesn't declare that. Somebody
+       seems to put the PERL5OPT into INC:
+
+       I got it. It seems not possible to load two -M with one PERL5OPT (?)
+
+       At least this does not work:
+
+       PERL5OPT="-MCPAN::PERL5INC=yaml_module,YAML::Syck -MCPAN::PERL5INC=yaml_module,YAML::Syck" make test
+
+       So I must 
+
+2008-03-16  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Slaven's segfault in RT 34066 needs more thought!!!
+
+2008-03-14  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * GSHANK/Form-Processor-Model-DBIC-0.01.tar.gz has something that triggers
+
+Can't use string ("--") as a HASH ref while "strict refs" in use at /home/src/perl/repoperls/installed-perls/maint-5.8/pnDGtsd/perl-5.8.7@27040/lib/5.8.8/CPAN.pm line 8441.
+ATTN-ATTN-ATTN-ATTN-ATTN-ATTN-ATTN-ATTN-ATTN-ATTN-ATTN-ATTN
+      Something went wrong during
+      /home/src/perl/repoperls/installed-perls/maint-5.8/pnDGtsd/perl-5.8.7@27040/bin/perl
+      G/GS/GSHANK/Form-Processor-Model-DBIC-0.01.tar.gz
+      (sleeping 30)
+ATTN-ATTN-ATTN-ATTN-ATTN-ATTN-ATTN-ATTN-ATTN-ATTN-ATTN-ATTN
+
+       Fixed in my sources, too early to write RT ticket.
+
+       At least wrote http://rt.cpan.org//Ticket/Display.html?id=34073 on
+       YAML::Syck which should (probably?) not have accepted this META.yml.
+
+2008-03-11  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * 
+
+----Program----
+eval q{use Hatena::Keyword 0.05};
+print $@ ? "N/A" : "OK";
+print "\n";
+
+----Output of .../pW6uQKQ/perl-5.9.1@24009/bin/perl----
+OK
+
+----EOF ($?='0')----
+----Output of .../pBwPNFp/perl-5.9.1@24010/bin/perl----
+N/A
+
+----EOF ($?='0')----
+
+       thinnercache tells me that Unicode::RecursiveDowngrade broke at the same
+       patch
+       
+2008-03-10  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Some day Ken Williams made a few statements about what CPAN.pm is
+       considered to do in the face of a recommends or an optional_features.
+       Where is it? Can't find it.
+
+       So recap what Slaven hashed out today:
+
+       If the user says dynamic_config=0 and specifies optional_features and
+       the distroprefs give me want_optional_features, then I can merge these
+       requires and build_requires and configure_requires into the main stuff
+       and proceed without asking questions. Really cool.
+
+       * VPIT/IPC-MorseSignals-0.13 hangs during t/62-fork-storable.t under
+       maint-5.10@33443.
+
+       And it hangs on t/61-fork-utf8 under maint-5.10.0@33412
+
+       * AI::Prolog jumped into my eye:
+
+2007-12-20T21:07  perl  32674   584   JJORE/AI-Prolog-0.739.tar.gz  NOT OK
+2007-12-18T19:17  perl  32642   441   JJORE/AI-Prolog-0.739.tar.gz  OK
+
+       Red since then independent of the branch. Already reported in RT 31905,
+       it's the infamous Test::Simple fix.
+
+2008-03-09  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * ExtUtils::Command broken; suspect Test::Simple
+
+perl/pMDhhVO/perl-5.10.0@33370;5.11.0;thr=;opt=-O2;perl_patchlevel=              PASS 0.75
+perl/paM8WrN/perl-5.10.0@33387;5.11.0;thr=;opt=-O2;perl_patchlevel=              FAIL 0.77
+                         33390                                                   PASS
+perl/pXTMoRe/perl-5.10.0@33401;5.11.0;thr=;opt=-O2;perl_patchlevel=
+perl/pXZ43Pl/perl-5.10.0@33409;5.11.0;thr=;opt=-O2;perl_patchlevel=              FAIL
+perl/p5BztI8/perl-5.10.0@33411;5.11.0;thr=;opt=-O2;perl_patchlevel=              FAIL
+perl/paD9wDz/perl-5.10.0@33423;5.11.0;thr=;opt=-g;perl_patchlevel=33423
+perl/pRu8vDi/perl-5.10.0@33450;5.11.0;thr=define;opt=-O2;perl_patchlevel=33450
+perl/pq7Gob0/perl-5.10.0@33451;5.11.0;thr=;opt=-O2;perl_patchlevel=33451         FAIL
+perl/pPLJssF/perl-5.10.0@33452;5.11.0;thr=;opt=-O2;perl_patchlevel=33452         FAIL 0.78
+
+       http://rt.cpan.org/Ticket/Display.html?id=33926
+
+2008-03-08  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * This I get with maint-5.8@33449:
+
+WARNING: DBIx::Class::StartupCheck: This version of Perl is likely to exhibit
+extremely slow performance for certain critical operations.
+Please consider recompiling Perl.  For more information, see
+https://bugzilla.redhat.com/show_bug.cgi?id=196836 and/or
+http://lists.scsys.co.uk/pipermail/dbix-class/2007-October/005119.html.
+You can suppress this message by setting DBIC_NO_WARN_BAD_PERL=1 in your
+environment.
+
+       * Data::Structure::Util broke somewhere 24650..24661
+
+  CPAN.pm: Going to build F/FO/FOTANGO/Data-Structure-Util-0.12.tar.gz
+
+This module requires Module::Build to install itself.
+  Install Module::Build from CPAN? [y] 
+
+       Aha. This is a special Module::Build silliness that calls CPAN
+       recursively to install Module::Build::Compat. If you say no, it dies.
+
+       update 2008-06-12 akoenig : what's the politically correct way to deal
+       with this Makefile.PL nowadays? Large Module::Build::Compat thread at
+       http://www.nntp.perl.org/group/perl.perl5.porters/2008/01/msg133202.html
+       (just a random point in the middle), no conclusion there. My conclusion:
+       install Module::Build really early and never see this discussion again.
+       And if Module::Build cannot be built? When this happens it will be fixed
+       within days or we can force install it and with 5.10 this is moot.
+
+       Nope, changing mind again. If there is no reason to use "passthrough",
+       they really should use "traditional", the only sane option when there is
+       no special reason why you'd absolutely need Module::Build.
+
+2008-03-05  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * PIJLL/DateTime-Format-Epoch-0.11.tar.gz has both fails and passes. 64bitint?
+
+       33008 MIX  no64bitint -O2 nothreads
+       33409 PASS 64bitint -O2 nothreads
+       33411 PASS 64bitint -O2 nothreads
+       33423 MIX  no64bitint -g nothreads
+       33430 FAIL no64bitint threads
+
+       http://rt.cpan.org//Ticket/Display.html?id=33816
+
+2008-03-03  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * FreezeThaw is pure perl and is written such that the test goes
+       somewhere out of reach, out of memory, unlimited recursion or some such.
+       make testdb comes to the last test which is really a large eval and
+       there is gets lost. It's definitely only related to Regexp.
+
+ok 27
+# 'FrT;@1|/13|(?mi-xs:^abc)'
+
+ok 27
+# 'FrT;@1|/13|(?mi-xs:^abc)'
+# 'FrT;!0|{>0|$6|Regexp/13|(?mi-xs:^abc)})0|@1|@3|<0|<0|$2|11'
+
+       http://rt.cpan.org/Ticket/Display.html?id=33844
+
+       * what is my latest 5.10.1? It could be 33412 but it is 33288:5.10.0::thr=:opt=-g
+
+       * what is my latest 5.8.9? It could be 33424 but it is
+       pBxK9vV/perl-5.8.8@33243:5.8.8::thr=:opt=-O2
+
+       * POE-0.9999
+
+       make test TEST_FILES=t/90_regression/cfedde-filter-httpd.t
+
+       FAIL under Test::Simple 0.78 with perl@33409
+       PASS under Test::Simple 0.74 with perl@33409
+       PASS under Test::Simple 0.74 with perl@33390
+       FAIL under Test::Simple 0.78 with perl@33390
+       PASS under Test::Simple 0.74 with perl@32642 (5.10.0)
+       FAIL under Test::Simple 0.74 with perl@32642 (5.10.0)
+
+       http://rt.cpan.org/Ticket/Display.html?id=33768
+
+2008-03-01  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * SAPER/CPAN-Dependency-0.12 hangs:
+
+>sand@k75:~/CPAN-SVN% ps -A -o user,pid,ppid,start_time,cmd | grep '^sand'|grep 3533
+sand      3533  3527 12:26 /home/src/perl/repoperls/installed-perls/perl/pXTMoRe/perl-5.10.0@33401/bin/perl -w t/02internals.t
+sand      7509 27737 12:42 grep 3533
+>sand@k75:~/CPAN-SVN% strace -p 3533
+Process 3533 attached - interrupt to quit
+select(8, [4], NULL, NULL, {278, 608000} <unfinished ...>
+Process 3533 detached
+>sand@k75:~/CPAN-SVN% kill 3533     
+>sand@k75:~/CPAN-SVN% 
+
+       Or, it seems, it has very long timeouts and connects ftp without passive
+       or whatever.
+
+       RT 33726
+
+       * I need to keep a pointer to the last BBC articles and I should check
+       if all unresolved ones are in RT. Today somebody reported Readonly::XS
+       on RT. Should have been there already. Now as a reply in
+
+       http://rt.cpan.org/Ticket/Display.html?id=33711
+
+       Nowadays I think I always post BBCs immediately to RT which is the right
+       thing.
+
+2008-02-25  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Test::Class 0.28 is a candidate to prove something between 33356 and 33358
+
+       Maybe Test::Simple, Test::More, Test::Builder? Yes.
+
+       http://rt.cpan.org/Ticket/Display.html?id=33574
+
+       Is there more to it?
+
+       new fails
+    ILYAZ/modules/Math-Pari-2.010709.tar.gz[42]        # the usual
+         PDENIS/Test-Strict-0.09.tar.gz[244]                # Devel::Cover
+         MIYAGAWA/Catalyst-View-JSON-0.23.tar.gz[329]       # broken dependency declaration
+         MTHURN/I18N-Charset-1.388.tar.gz[630]              # random due to skip
+         REDTREE/PDF-API2-Simple-1.1.4u.tar.gz[657]         # flaky ever since
+         ADIE/Test-Class-0.28.tar.gz[847]                   # see above
+         NEELY/Data-Serializer-0.43.tar.gz[939]             # random since months
+         BBC/Email-MIME-CreateHTML-1.026.tar.gz[940]        # dep on Data::Serializer
+         JAYK/Catalyst-Authentication-Store-DBIx-Class-0.104.tar.gz[1010]
+                                                       # not reproducable, flaky ever since
+         MIYAGAWA/Apache-GuessCharset-0.03.tar.gz[1266]     # dep on I18N::Charset
+         CHOCOLATE/Scalar-Util-Clone-0.10.tar.gz[1332]      # not bleadperl compat
+         MSTROUT/Devel-REPL-1.002000.tar.gz[1513]           # dep on DDS
+
+2008-02-24  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Curious:
+
+----Program----
+eval q{use Devel::LeakTrace 0.05};
+print $@ ? "N/A" : "OK";
+print "\n";
+
+----Output of .../p9aWFUh/perl-5.8.0@17967/bin/perl----
+OK
+
+----EOF ($?='0')----
+----Output of .../pUEVfU9/perl-5.8.0@17968/bin/perl----
+N/A
+
+----EOF ($?='0')----
+
+       Also in maint-5.8:
+
+----Program----
+eval q{use Devel::LeakTrace 0.05};
+print $@ ? "N/A" : "OK";
+print "\n";
+
+----Output of .../pcZcM34/perl-5.8.0@18079/bin/perl----
+OK
+
+----EOF ($?='0')----
+----Output of .../piE8rWS/perl-5.8.0@18080/bin/perl----
+N/A
+
+----EOF ($?='0')----
+
+       Reported on P5P: http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-02/msg00717.html
+
+       And on RT: https://rt.cpan.org/Ticket/Display.html?id=33548
+
+       * Spending some tuits on 01.DISABLED.yml
+
+  CPAN.pm: Going to build A/AD/ADAMK/ThreatNet-IRC-0.01.tar.gz
+
+==> ExtUtils::AutoInstall 0.49 required. Install it from CPAN? [Y/n] n
+Undefined subroutine &ExtUtils::AutoInstall::_make_args called at inc/Module/Install/AutoInstall.pm - /usr/local/share/perl/5.8.4/Module/Install/AutoInstall.pm line 46, <STDIN> line 1.
+Warning: No success on command[/home/src/perl/repoperls/installed-perls/perl/pyIdwn2/perl-5.10.0@33356/bin/perl Makefile.PL]
+  ADAMK/ThreatNet-IRC-0.01.tar.gz
+  /home/src/perl/repoperls/installed-perls/perl/pyIdwn2/perl-5.10.0@33356/bin/perl Makefile.PL -- NOT OK
+Running make test
+  Make had some problems, won't test
+Failed during this command:
+ ADAMK/ThreatNet-IRC-0.01.tar.gz              : writemakefile NO '/home/src/perl/repoperls/installed-perls/perl/pyIdwn2/perl-5.10.0@33356/bin/perl Makefile.PL' returned status 2304
+
+       What for is ExtUtils::AutoInstall required? Where is it documented?
+
+
+2008-02-23  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * ARTURAZ/Net-Vypress-Chat-0.72.1.tar.bz2
+
+2008-02-12  Andreas Koenig  <k@k78.linux.bogus>
+
+       * Investigate new noise from a
+       Lingua-Stem-Snowball-0.941/5.11/Test-Harness-3.09/whatever combination.
+       Megabytes of warnings against uc(undef) apparently starting yesterday.
+
+       The error reads:
+
+       Use of uninitialized value $dir in uc at /home/src/perl/repoperls/installed-perls/perl/pvCr5Qs/perl-5.10.0@33278/lib/5.11.0/TAP/Parser/Grammar.pm line 371.
+
+       RT#33146
+
+2008-02-12  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * 
+
+----Program----
+eval q{use Safe::World 0.14};
+print $@ ? "N/A" : "OK";
+print "\n";
+
+----Output of .../pGZP5H3/perl-5.9.2@24965/bin/perl----
+OK
+
+----EOF ($?='0')----
+----Output of .../pR6Z2HL/perl-5.9.2@24966/bin/perl----
+N/A
+
+----EOF ($?='0')----
+
+       This was a SEGV at that time but in the meantime it is a 'Unknown
+       operator name "threadsv" at ....Safe/World/Compartement.pm line 95.'
+
+       This means that 24966 is of only marginal interest.
+
+2008-02-10  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Wrote a new entry into http://rt.cpan.org/Ticket/Display.html?id=30145
+       to nail down XML::RSS::LibXML which failed again today with
+
+t/items-are-0....................http://my.netscape.com/publish/formats/rss-0.91.dtd:1: parser error : Content error in the external subset
+<br />
+^
+Can't call method "getNamespaces" on an undefined value at /home/sand/.cpan/build/XML-RSS-LibXML-0.3002-NE3qqm/blib/lib/XML/RSS/LibXML.pm line 172.
+# Looks like you planned 502 tests but only ran 472.
+# Looks like your test died just after 472.
+ Dubious, test returned 255 (wstat 65280, 0xff00)
+ Failed 30/502 subtests 
+^I(less 23 skipped subtests: 449 okay)
+
+       * http://rt.cpan.org/Ticket/Display.html?id=32841 Would have to consider
+       all possible directories on a given system. Compare them if they are at
+       all different. Offer the user a chance to resolve things if they are
+       different.
+
+       Found more than one CPAN/MyConfig.pm files:
+
+       [1] .../...
+       [2] .../...
+       [3] .../...
+
+       Please tell me which one I shall use.
+
+       * http://rt.cpan.org/Ticket/Display.html?id=32525: sent me a nice patch
+       to make the listings prettier by using representative module names for
+       the distros that have one so instead of this:
+
+App::Prove                     3.07      3.08  ANDYA/Test-Harness-3.08.tar.gz
+DBD::Gofer::Transport::Base  0.010088  0.010377  TIMB/DBI-1.602.tar.gz
+
+       ....we would see
+
+DBI                           1.601     1.602  TIMB/DBI-1.602.tar.gz
+Test::Harness                  3.07      3.08  ANDYA/Test-Harness-3.08.tar.gz
+
+       I rolled my own implementation of this idea today that needed less code
+       to change. It costs a bit more CPU to sort the raw list of modules and
+       the stupid thing is that we sort all, not only those that are being
+       displayed finally. But that was always our goal: to display while we go
+       so the user gets information as soon as possible. So now the list is
+       sorted by the boolean "representative module" and on second order
+       alphabetically. This means that after a first pass through the alphabet
+       there is a second as in:
+
+XML::SimpleObject::LibXML      0.53      0.60  DBRIAN/XML-SimpleObject-LibXML-0.60.tar.gz
+Catalyst::Model::Search::Item     undef      0.01  MRAMBERG/Catalyst-Model-Search-0.01.tar.gz
+
+
+2008-02-09  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Slaven suspects a misbehaviour of the new recursion detection. He
+       encountered it with Tcl.
+
+       * cpantesters website seems to have stalled. Reported to Robert.
+
+2008-02-08  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Frank asks me to investigate this based on program which is already in
+       rt.perl.org since Jan 8.
+
+       $p -Itests -MUnknownError
+
+31253:5.9.5::thr=:opt=-g
+Global symbol "$asd" requires explicit package name at tests/UnknownError.pm line 8.
+BEGIN not safe after errors--compilation aborted at tests/UnknownError.pm line 9.
+Compilation failed in require.
+BEGIN failed--compilation aborted.
+31384:5.9.5::thr=:opt=-g
+Unknown error
+Compilation failed in require.
+BEGIN failed--compilation aborted.
+
+       Wrote a call_UnknownError.pl. The UnknownError.pm was already there.
+       Apparently I was disturbed when running it the first time.
+
+----Program----
+my $out = `'$^X' -Itests -MUnknownError 2>&1`;
+$out =~ s/at .*$//mg;
+print $out;
+
+----Output of .../plx9DAz/perl-5.9.4@31254/bin/perl----
+Global symbol "$asd" requires explicit package name 
+BEGIN not safe after errors--compilation aborted 
+Compilation failed in require.
+BEGIN failed--compilation aborted.
+
+----EOF ($?='0')----
+----Output of .../pwiMCxf/perl-5.9.4@31255/bin/perl----
+Unknown error
+Compilation failed in require.
+BEGIN failed--compilation aborted.
+
+----EOF ($?='0')----
+
+       Reported to P5P
+
+       * inspired by RT#33004
+
+----Program----
+eval q{use Mail::Mbox::MessageParser 1.5};
+print $@ ? "N/A" : "OK";
+print "\n";
+
+----Output of .../paCcXxw/perl-5.9.1@23470/bin/perl----
+OK
+
+----EOF ($?='0')----
+----Output of .../prlkihB/perl-5.9.1@23471/bin/perl----
+N/A
+
+----EOF ($?='0')----
+
+       There is a regex written with qr/.../ which is later used within a
+       pattern. The -m of the inner pattern was overruled by the outer /m until
+       23470 and not overruled in 23471. It's the pattern 'from_pattern' from
+       the Config.pm. Fixing this fixes one test, not all. Two more spots to
+       patch.
+
+       distroprefs/DCOPPIT.Mail-Mbox-MessageParser.yml
+
+       http://rt.cpan.org/Ticket/Display.html?id=33004
+
+2008-02-05  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * need to re-visit OLAF/Net-DNS-0.62.tar.gz, not in RT and not inspected
+       closely enough.
+
+       http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2008-01/msg01365.html
+
+       * need to find the autobox mail that said something     about
+       1.22?
+
+       http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2007-12/msg00809.html
+
+       No need to run binary search again. Now in RT:
+
+       http://rt.cpan.org/Ticket/Display.html?id=32928
+
+2008-02-03  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Frank Wiegand tells me stories about a bug in AUTOLOAD, version, or
+       CPAN.pm.
+
+       http://perlmonks.org/?node_id=665058
+
+       After installing a few thousand modules I can reproduce the failure.
+       With both 1.9205 and current repository version. I must call 'reload
+       index' and then 'r'. An 'r' when loading the data from Metadata
+       succeeds.
+
+       Introducing more evals allows me to identify the modules that *trigger*
+       the bug:
+
+       'Acme::MetaSyntactic::nethack':
+       'Class::Accessor::Classy':
+       'Class::DBI':
+       'Class::Std':
+       'Config::Std':
+       'Getopt::Euclid':
+       'Smart::Comments':
+       'Sub::Installer':
+       'Text::Balanced':
+
+       I can then also step through the debugger in the AutoLoader which
+       believes it is being called for:
+
+         DB<<11>> x $AUTOLOAD
+0  'main::version::(""'
+
+       Before we reach there we see a version object that looks like so:
+
+         DB<7> x $have
+0  main::version=HASH(0xcc1b6ec)
+   'original' => 'v1.0.0'
+   'qv' => 1
+   'version' => ARRAY(0xcc1b8e4)
+      0  1
+      1  0
+      2  0
+
+       and the debugger displays it as such, so apparently overloading is
+       turned off somehow. Because if I construct such an object manually, it
+       has overloading and the 'x $have' just does:
+
+         DB<16> x $have                                       
+0  v1.0.0
+
+
+       I now have it down to:
+
+% /home/src/perl/repoperls/installed-perls/maint-5.8/p8tnrrm/perl-5.8.0@27144/bin/perl -Ilib -MCPAN -e '
+use CPAN;
+CPAN::Shell->reload("index");
+$TRACEMODULE = CPAN::Shell->expand('Module','Acme::MetaSyntactic::nethack');
+$traceinst = $TRACEMODULE->inst_version;
+print $traceinst;         
+'
+
+       Bombs immediately.
+
+       My perllocal.pod has many candidates that might have changed something.
+
+       A binary search would probably compare two perls and add one module
+       after the other to the one that is still sane?
+
+       stop,stop,stop Frank has found the culprit in Safe.pm 2.14.
+
+       * Could it be a way to increase responsibility consciousness among MI
+       users: report it as a bug when they distribute an old version? Makes
+       little sense in the absence of a good recent version. Ajj, but Chroniton
+       distributes 0.63 and that version seems to have not even a check for
+       PERL5_CPANPLUS_IS_RUNNING.
+
+       http://rt.cpan.org/Ticket/Display.html?id=32984
+
+       * A plan how we could protect the world from recursive usage. Inc the
+       counter in the environment, display it, display in which directory we
+       are, sleep for a long and increasing time, recommend the user to hit ^C
+       and file a bug report. Display the process number. Display a countdown
+       when we will continue. Display some sort of stack trace.
+
+2008-02-01  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * 
+
+----Program----
+eval q{use Devel::StackTrace 1.15};
+print $@ ? "N/A" : "OK";
+print "\n";
+
+----Output of ...pnKj4xI/perl-5.10.0@33021/bin/perl----
+OK
+
+----EOF ($?='0')----
+----Output of ...pMXqMnB/perl-5.10.0@33022/bin/perl----
+N/A
+
+----EOF ($?='0')----
+
+
+2008-01-30  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * 
+
+----Program----
+eval q{use Net::DNS 0.62};
+print $@ ? "N/A" : "OK";
+print "\n";
+
+----Output of ...pm8xeIK/perl-5.10.0@33087/bin/perl----
+OK
+
+----EOF ($?='0')----
+----Output of ...pjheziE/perl-5.10.0@33088/bin/perl----
+N/A
+
+----EOF ($?='0')----
+
+
+2008-01-28  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Todo: post to P5P:
+
+----Program----
+eval q{use Devel::Cover 0.63};
+print $@ ? "N/A" : "OK";
+print "\n";
+
+----Output of ...po5d47x/perl-5.10.0@33071/bin/perl----
+OK
+
+----EOF ($?='0')----
+----Output of ...pPgv7op/perl-5.10.0@33072/bin/perl----
+N/A
+
+----EOF ($?='0')----
+
+       * bisect for Florian Math::Pari patch
+
+       * bisect for Moritz Lenz the regex thing.
+
+
+2008-01-21  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Carp-Clan?
+
+cpan[2]> install Carp::Clan 
+Running install for module 'Carp::Clan'
+
+  The module Carp::Clan isn't available on CPAN.
+
+  Either the module has not yet been uploaded to CPAN, or it is
+  temporary unavailable. Please contact the author to find out
+  more about the status. Try 'i Carp::Clan'.
+
+       I find 
+
+     471 2008-01-11 JJORE/Carp-Clan-5.10.meta
+   18618 2008-01-11 JJORE/Carp-Clan-5.10.tar.gz
+
+       but it isn't indexed. Probably a decreasing version number case?
+
+2008-01-08  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * (from Slaven) Diese Datei ist leer:
+
+   JHI/Math-Complex-1.41.tar.gz
+
+       und führt dazu, dass mein Smoker abbricht. Könntest du CPAN.pm hier
+       beibringen, auch nur den Fehler anzuzeigen und weiterzumachen?
+
+2008-01-07  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Randy/PPM/etc. More thoughts needed.
+
+2007-12-31  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Need a tool to bring all broken distros into a tree shape as to
+       eliminate leaves below a common node.
+
+2007-12-24  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * summary
+
+       32707: Data::Alias, Devel::Declare, autobox
+
+       All other fails are not reproducable or dependencies.
+
+       * 32719
+
+new fails
+    ZOOLEIKA/RDF-Simple-0.3.tar.gz[332], ASH/DBIx-Class-0.08008.tar.gz[470], ADAMK/CPAN-Index-0.01.tar.gz[473], ADEO/Data-Random-0.05.tar.gz[786], AUDREYT/Encode-IBM-0.07.tar.gz[809], BRICAS/DBIx-Class-Indexed-0.02.tar.gz[908], DAXIM/Yahoo-Photos-0.0.2.tar.gz[995], OVID/Test-JSON-0.02.tar.gz[1089], MAURICE/IPC-ShareLite-0.09.tar.gz[1126], CFRANKS/DBIx-Class-HTML-FormFu-0.01004.tar.gz[1246], BLBLACK/Catalyst-Model-DBIC-Schema-0.20.tar.gz[1251], MRAMBERG/Catalyst-Plugin-Authentication-Store-DBIC-0.09.tar.gz[1252], BRICAS/DBIx-Class-DateTime-Epoch-0.03.tar.gz[1268], JROCKWAY/Task-Catalyst-Tutorial-0.03.tar.gz[1315], CLACO/DBIx-Class-Validation-0.02001.tar.gz[1429], CLACO/DBIx-Class-UUIDColumns-0.02002.tar.gz[1538]
+
+       * 32717
+
+new fails
+    NI-S/Tk-HTML-3.003.tar.gz[89], LGODDARD/Tk-Wizard-2.128.tar.gz[128], XMATH/Data-Alias-1.07.tar.gz[132], BSMITH/Devel-EvalContext-0.09.tar.gz[133], MSTROUT/Devel-Declare-0.001006.tar.gz[620], CHOCOLATE/autobox-1.22.tar.gz[625], STEVAN/Moose-Autobox-0.05.tar.gz[626], NEELY/Data-Serializer-0.43.tar.gz[780], BBC/Email-MIME-CreateHTML-1.026.tar.gz[781], RIZEN/Config-JSON-1.1.1.tar.gz[897], CHORNY/Apache-Session-1.85.tar.gz[1104], ANDK/Apache-Session-Counted-1.118.tar.gz[1310], SAMTREGAR/DBIx-Timeout-1.01.tar.gz[1316], ADUITSIS/IPC-Mmap-0.14.tar.gz[1482]
+
+2007-12-22  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * want to have: CPANPLUS::Dist::Deb with CPAN.pm as backend.
+
+2007-12-21  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * on blead@32674. Sigh.
+
+new fails
+  RIZEN/Config-JSON-1.1.1.tar.gz[124]
+       BRADFITZ/Danga-Socket-1.57.tar.gz[203]
+       DMAKI/Danga-Socket-Callback-0.01200.tar.gz[204]
+       OLAF/Net-DNS-0.61.tar.gz[258]
+       RJBS/Email-Valid-0.179.tar.gz[259]
+       MIYAGAWA/Email-Valid-Loose-0.05.tar.gz[261]
+       LYOKATO/FormValidator-Simple-0.22.tar.gz[263]
+       CLACO/DBIx-Class-Validation-0.02001.tar.gz[264]
+       GMPASSOS/Safe-World-0.14.tar.gz[285]
+       NODINE/Text-Restructured-0.003037.tar.gz[292]
+       CFRANKS/HTML-Widget-1.11.tar.gz[303]
+       JJORE/B-Generate-1.11.tar.gz[318]
+       MIYAGAWA/Email-Find-0.10.tar.gz[436]
+       RCAPUTO/POE-Component-Client-DNS-1.00.tar.gz[455]
+       JJORE/AI-Prolog-0.739.tar.gz[584]
+       DPAVLIN/Search-Estraier-0.08.tar.gz[748]
+       RCAPUTO/POE-Component-Client-Keepalive-0.1000.tar.gz[761]
+       RCAPUTO/POE-Component-Client-HTTP-0.82.tar.gz[762]
+       DMAKI/Xango-1.08.tar.gz[770]
+       JMASON/Mail-SpamAssassin-3.2.3.tar.gz[775]
+       PIJLL/DateTime-Format-Epoch-0.11.tar.gz[785]
+       NEELY/Data-Serializer-0.43.tar.gz[806]
+       BBC/Email-MIME-CreateHTML-1.026.tar.gz[841]
+       SARTAK/Jifty-0.71129.tar.gz[856]
+       NUFFIN/Test-TAP-Model-0.09.tar.gz[934]
+       NUFFIN/Test-TAP-HTMLMatrix-0.09.tar.gz[935]
+       GAAL/Task-Smoke-0.16.tar.gz[936]
+       BINGOS/POE-Component-Server-IRC-1.24.tar.gz[1009]
+       JOHANL/Devel-PerlySense-0.0136.tar.gz[1014]
+       VKON/Tcl-0.95.tar.gz[1025]
+       LGODDARD/Tk-Wizard-2.124.tar.gz[1101]
+       MIYAGAWA/CGI-Untaint-email-0.03.tar.gz[1269]
+
+2007-12-19  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * And on RT #31708 I found Data::Swap as being a binary search help seeker.
+
+----Program----
+eval q{use Data::Swap 0.05};
+print $@ ? "N/A" : "OK";
+print "\n";
+
+----Output of .../poY9GSb/perl-5.8.0@22739/bin/perl----
+OK
+
+----EOF ($?='0')----
+----Output of .../piOkQwD/perl-5.8.0@22741/bin/perl----
+N/A
+
+----EOF ($?='0')----
+
+       Sent a one-line note to Matthijs. Saying goodbye to the usual BBC
+       articles.
+
+2007-12-18  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * 5.10 is out and I find at home this binarysearch
+
+----Program----
+eval q{use Apache::DB 0.13};
+print $@ ? "N/A" : "OK";
+print "\n";
+
+----Output of .../pmRlzse/perl-5.8.0@32012/bin/perl----
+OK
+
+----EOF ($?='0')----
+----Output of .../p7cydGv/perl-5.8.0@32013/bin/perl----
+N/A
+
+----EOF ($?='0')----
+
+       What's in it? Signalhandler stuff, and yes, the error message is
+
+/home/src/perl/repoperls/installed-perls/perl/psSfy01/perl-5.8.0@32032/bin/perl /home/src/perl/repoperls/installed-perls/perl/psSfy01/perl-5.8.0@32032/lib/5.10.0/ExtUtils/xsubpp  -typemap /home/src/perl/repoperls/installed-perls/perl/psSfy01/perl-5.8.0@32032/lib/5.10.0/ExtUtils/typemap  DB.xs > DB.xsc && mv DB.xsc DB.c
+cc -c   -D_REENTRANT -D_GNU_SOURCE -DDEBUGGING -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g   -DVERSION=\"0.13\" -DXS_VERSION=\"0.13\" -fPIC "-I/home/src/perl/repoperls/installed-perls/perl/psSfy01/perl-5.8.0@32032/lib/5.10.0/i686-linux-thread-multi-64int/CORE"   DB.c
+DB.xs: In function XS_DB_ApacheSIGINT:
+DB.xs:59: error: too few arguments to function ApacheSIGINT
+make: *** [DB.o] Fehler 1
+
+       What I don't know is how to get the right ifdef. BBC written 2007-12-27.
+
+       * 32631:
+
+new fails
+    DROLSKY/HTML-Mason-1.37.tar.gz[821], JESSE/HTTP-Server-Simple-Mason-0.09.tar.gz[822], MJEWELL/docparser/Biblio-Document-Parser-1.10.tar.gz[913], SARTAK/Jifty-0.71129.tar.gz[947], FWILES/Apache-DB-0.13.tar.gz[997], BDFOY/Test-HTTPStatus-1.07.tar.gz[1116], RCLAMP/Devel-LeakTrace-0.05.tar.gz[1324], FLORA/Catalyst-View-Mason-0.15.tar.gz[1337], GWYN/POE-Component-Daemon-0.1006.tar.gz[1340], AUDREYT/Encode-IBM-0.07.tar.gz[1407]
+
+       The new fails are only due to new discoveries by Alexandr Chorny
+
+2007-12-17  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * From Chorny:
+
+----Program----
+eval q{use Test::HTTPStatus 1.07};
+print $@ ? "N/A" : "OK";
+print "\n";
+
+----Output of .../p9mfFVw/perl-5.8.0@31020/bin/perl----
+OK
+
+----EOF ($?='0')----
+----Output of .../prYHaRP/perl-5.8.0@31021/bin/perl----
+N/A
+
+----EOF ($?='0')----
+
+       But this is crap. We must declare an external dependency on
+       Test::Pod::Coverage first. So now we get:
+
+----Program----
+eval q{use Test::HTTPStatus 1.07};
+print $@ ? "N/A" : "OK";
+print "\n";
+
+----Output of .../psiUhc4/perl-5.8.0@26486/bin/perl----
+OK
+
+----EOF ($?='0')----
+----Output of .../pQD0dEL/perl-5.8.0@26487/bin/perl----
+N/A
+
+----EOF ($?='0')----
+
+       On Apache::DB we will start the binary search between 31941 and 32032.
+       BBC written 2007-12-27.
+
+       On Biblio::Document::Parser between 23232 and 23606.
+
+2007-12-16  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Todo: next BBC summary must include today's mail from/to Alexandr
+       Chorny.
+
+2007-12-14  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * BSUGARS/IPC-Shareable-0.60.tar.gz needs a bugreport, maybe is a BBC
+       "can't use...". On top of that several perls hang on test ipchv.t so
+       that I must disable it.
+
+       But, but, but nobody seems to use it, it's latest release is from 2001.
+       Just ignore it!
+
+2007-12-13  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Final binsearch on P5NCI:
+
+----Program----
+eval q{use P5NCI 0.31};
+print $@ ? "N/A" : "OK";
+print "\n";
+
+----Output of .../pecvOBn/perl-5.8.0@32401/bin/perl----
+N/A
+
+----EOF ($?='0')----
+----Output of .../pbMBeR9/perl-5.8.0@32405/bin/perl----
+OK
+
+----EOF ($?='0')----
+
+       http://rt.cpan.org/Ticket/Display.html?id=27963
+
+       * Bug: I just did a 'fforce get' on modperl followed by a 'install'. The
+       install tried to apply the patch a second time and then quickly failed
+       because apparently the "install" attribute wasn't cleared. Eeek. Low
+       prio because 'fforce get' is a bit of nonsense on the user side (it
+       seems).
+
+2007-12-12  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * P5NCI may need a binary search where it *started* to work. Depends
+       what chromatic wants to know. Ticket 27963. 32395 fails, 32444 passes
+       tests. DONE.
+
+2007-12-11  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * ALERT
+
+2007-12-10T07:35  perl  32603   25  DAGOLDEN/CPAN-Reporter-1.06.tar.gz  NOT OK
+2007-12-09T16:21  perl  32601   25  DAGOLDEN/CPAN-Reporter-1.06.tar.gz  OK
+
+       It cannot be perl because the changes were .... 
+
+32603 on 2007/12/10 by craigb@craigb-brianor
+
+       Fix uninitialized pointer bug in VMS version of readdir() when
+       case preservation feature is enabled.
+
+32602 on 2007/12/09 by craigb@craigb-brianor
+
+       Tolkien quote for vms/vms.c.
+
+       autobundle? No, I think it is Test-Harness 3.05. Trying on PAUSE with 32602
+
+       FIXED by David in 1.0601
+       
+2007-12-10  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * ELLIOTJS via RT has brought evidence about CPAN.pm failures on solaris
+
+2007-12-09  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Test::Harness 3.04 failing when Encode not installed?
+
+t/unicode.........................
+#   Failed test 'Unicode smiley (script): value for description matches'
+#   at t/unicode.t line 111.
+Wide character in print at t/lib/Test/Builder.pm line 1266.
+#          got: 'Everything is fine âº'
+#     expected: 'Everything is fine \e%Gâ\98º\e%@'
+# Looks like you failed 1 test of 20.
+ Dubious, test returned 1 (wstat 256, 0x100)
+ Failed 1/20 subtests
+
+       Haven't seen this before.
+
+       http://rt.cpan.org/Ticket/Display.html?id=31314 and fixed.
+
+       * Jifty failed on IPC::PubSub::Cache::Memcached: Can't locate
+       Cache/Memcached.pm. Looks like somebody forgot a dependency decl.
+
+       In the Jifty dependency preparations I see only IPC::PubSub and
+       Cache::Cache but no Memchache stuff. The full error states:
+
+       Cannot load backend module: IPC::PubSub::Cache::Memcached: Can't locate Cache/Memcached.pm in @INC (@INC contains: /home/sand/.cpan/build/Jifty-0.71129-LHzsQe/inc /home/sand/.cpan/build/Jifty-0.71129-LHzsQe/blib/lib /home/sand/.cpan/build/Jifty-0.71129-LHzsQe/blib/arch /home/src/perl/repoperls/installed-perls/perl/p0klOEE/perl-5.8.0@32600/lib/5.10.0/i686-linux /home/src/perl/repoperls/installed-perls/perl/p0klOEE/perl-5.8.0@32600/lib/5.10.0 /home/src/perl/repoperls/installed-perls/perl/p0klOEE/perl-5.8.0@32600/lib/site_perl/5.10.0/i686-linux /home/src/perl/repoperls/installed-perls/perl/p0klOEE/perl-5.8.0@32600/lib/site_perl/5.10.0 . /home/sand/.cpan/build/Jifty-0.71129-LHzsQe/lib Jifty::ClassLoader=HASH(0x8b21e68) Jifty::ClassLoader=HASH(0x8b245a8) Jifty::ClassLoader=HASH(0x8b24358) Jifty::ClassLoader=HASH(0x8b25778) Jifty::ClassLoader=HASH(0x96c9790) Jifty::ClassLoader=HASH(0x96cb800) Jifty::ClassLoader=HASH(0x96cbe20) Jifty::ClassLoader=HASH(0x972f5a8) /home/sand/.cpan/build/Jifty-0.71129-LHzsQe/lib) at /home/src/perl/repoperls/installed-perls/perl/p0klOEE/perl-5.8.0@32600/lib/site_perl/5.10.0/IPC/PubSub/Cache/Memcached.pm line 5.
+
+       and happens during t/04-test_file
+
+
+2007-12-08  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * New BBC candidate
+
+----Program----
+eval q{use Test::Class 0.25};
+print $@ ? "N/A" : "OK";
+print "\n";
+
+----Output of .../pykQRSb/perl-5.8.0@32581/bin/perl----
+OK
+
+----EOF ($?='0')----
+----Output of .../pvgC1Ko/perl-5.8.0@32582/bin/perl----
+N/A
+
+----EOF ($?='0')----
+
+       We have many other victims between 32580 and now but most of them are
+       shaky things that have already exhibited random behaviour in the past.
+
+       XML::RSS::LibXML                     ok
+       DBIx::Timeout                        ok
+       XML::RSS::Liberal                    ok
+       Net::FTP::Common                     ok
+       WebService::Bloglines                ok
+       Getopt::Attribute                    not ok
+       Module::Changes                      not ok (dependency of Getopt::Attribute)
+       CGI-Session                          not ok but only due to SKIPs ok on 32980
+       Log-Dispatch-Config                  ok
+       POE-Component-Logger                 ok
+       POE-Component-MessageQueue           ok
+  Attribute-Types                      not ok
+       Attribute::Overload                  not ok
+       Finance-Currency-Convert-WebserviceX ok
+       Data-Currency                        ok
+       SVG-Plot                             not ok but was not ok before too
+       HTML::GMap                           not ok (dependency of CGI::Session)
+       CGI-Application-Plugin-Session       not ok (dependency of CGI::Session)
+
+       #32582 (Attribute::Handlers) breaks Test::Class, Getopt::Attribute,
+       Attribute::Types, Attribute::Overload and more. Shall I write a BBC on
+       it or is there something in the pipeline?
+
+       I wrote a BBC and then quickly somebody provided a fix (he had not even
+       noticed my posting). So forget it.
+
+2007-12-06  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Alias says: "YAML::Tiny is quite clear about what it is, a module that
+       supports reading and writing of the block-mode JSON-subset of the YAML
+       specification."
+
+       mauzo writes a more complete spec:
+
+Perl doesn't have a formal spec, either, yet it seems to acquire its fair share of bugs :).
+
+YAML::Tiny has a perfectly decent (informal, implicit) spec:
+
+   1. if write_string is passed any Perl data structure consisting only of unmagical scalars, arrays and hashes, produce a spec-compliant YAML document representing it which can be parsed by YAML::Tiny or any more complete YAML parser;
+   2. if write_string is passed any other Perl data structure, report an error saying so;
+   3. if read_string is passed any spec-compliant YAML document, either
+         1. parse that document correctly and return the corresponding Perl data structure, or
+         2. report an error that this document is unsupported and a more complete parser should be used;
+   4. if read_string is passed anything that isn't a spec-compliant YAML document, report an error saying so.
+
+Any other behaviour, such as Adam has just fixed, is a bug. The only thing that might be useful is documentation of which cases get 3.1 and which get 3.2.
+
+       I must write a RT ticket demanding these specs become part of the manpage.
+
+       http://rt.cpan.org/Ticket/Display.html?id=31275 where Alias say "A challenge"
+
+       * off topic: http://use.perl.org/~pmichaud/journal/35049
+
+       patrick on state of perl6/parrot
+
+2007-12-04  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Feature request to David Golden: turn on/off cc_author via
+       distroprefs. How?
+
+2007-12-02  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Gtk2 has one single PASS. It fails on 27002 more or less the same way
+       as with current 5.10. It fails on 23023 because Glib fails there. Maybe
+       it would be interesting to find the place in history when Glib started
+       working and then to run Gtk2 through that version. Just a binarysearch
+       without --build should do.
+
+----Output of .../p4eJlzo/perl-5.8.0@25733/bin/perl----
+N/A
+
+----EOF ($?='0')----
+----Output of .../pdv4QaU/perl-5.8.0@25948/bin/perl----
+OK
+
+----EOF ($?='0')----
+
+       Perfect! The error summary with 25948 is shorter than the one with 5.10.
+
+       Wohoo, on "look" the DISPLAY isn't set, of course. But then the test
+       succeeds just fine:
+
+DISPLAY=:121 make test TEST_FILES="t/GdkDisplayManager.t" TEST_VERBOSE=1
+PERL_DL_NONLAZY=1 /home/src/perl/repoperls/installed-perls/perl/pdv4QaU/perl-5.8.0@25948/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(1, 'blib/lib', 'blib/arch')" t/GdkDisplayManager.t
+t/GdkDisplayManager......
+1..4
+ok 1 - The object isa Gtk2::Gdk::DisplayManager
+ok 2
+ok 3
+ok 4 - The object isa Gtk2::Gdk::Device
+ok
+All tests successful.
+Files=1, Tests=4,  1 wallclock secs ( 0.02 usr  0.00 sys +  0.25 cusr  0.01 csys =  0.28 CPU)
+Result: PASS
+
+       But from 'test Gtk2' in the CPAN shell I get:
+
+t/GdkDisplayManager..................The application 'GdkDisplayManager.t' lost its connection to the display :121.0;
+most likely the X server was shut down or you killed/destroyed
+the application.
+ Dubious, test returned 1 (wstat 256, 0x100)
+ No subtests run 
+t/GdkDnd.............................Gdk-WARNING **: Drops for GDK_DRAG_PROTO_ROOTWIN must be handled internally at t/GdkDnd.t line 100.
+ok
+
+
+       So under CPAN shell the connection is lost, under 'make test' tests are
+       succeeding? NO, under make test with arguments it works, under make test
+       without arguments it fails. NO, it's once again RANDOM TEST RESULTS.
+
+       When I run the command
+
+       DISPLAY=:121 make test TEST_FILES="t/00.Gtk2.t t/01.GtkWindow.t t/02.GtkContainer.t t/Gdk.t t/GdkCairo.t t/GdkColor.t t/GdkCursor.t t/GdkDisplay.t t/GdkDisplayManager.t"
+
+       several times then I get both a success and a failure. But the problem
+       case is always the last one.
+
+       AND there's another one that is even more annoying:
+
+DISPLAY=:121 make test TEST_FILES=t/PangoLayout.t
+PERL_DL_NONLAZY=1 /home/src/perl/repoperls/installed-perls/perl/pdv4QaU/perl-5.8.0@25948/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/PangoLayout.t
+t/PangoLayout......1/68 Modification of a read-only value attempted at t/PangoLayout.t line 134.
+# Looks like you planned 68 tests but only ran 36.
+# Looks like your test died just after 36.
+t/PangoLayout...... Dubious, test returned 255 (wstat 65280, 0xff00)
+ Failed 32/68 subtests 
+
+
+       If I run it in the debugger it loses track of the debugger context
+       completely and I cannot set a breakpoint. At least with 25948. So
+       switching to current bleadperl I reach that line and see that the
+       argument 23 is sent to some C lib and there it chokes. Not my area of
+       interest.
+
+       I made the random test results a ticket:
+
+       http://rt.cpan.org/Ticket/Display.html?id=31255
+
+2007-11-30  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * JJORE/overload-eval-0.07.tar.gz fails on 2007-11-28T09:27??
+
+       Also fails on 32032 which was also threaded. Works with many others.
+
+       Trying 30952 which is also threaded. FAIL.
+
+       Trying 27048 which is also threaded. FAIL.
+
+       Trying 23232 which is also threaded. Perl v5.9.4 required--this is only v5.9.2
+
+       Everything before 28317 fails.
+
+       http://rt.cpan.org/Ticket/Display.html?id=31139
+
+2007-11-29  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Sepia binary search
+
+----Program----
+our $have_warned;
+BEGIN { $SIG{__WARN__} = sub { return if $have_warned++; print "suppressing one or more warnings\n" }; }
+eval q{use Sepia "0.95_02"};
+print $@ ? "N/A" : "OK";
+print "\n";
+
+----Output of .../pA0wlau/perl-5.8.0@30609/bin/perl----
+OK
+
+----EOF ($?='0')----
+----Output of .../pV9JsIn/perl-5.8.0@30610/bin/perl----
+N/A
+
+----EOF ($?='0')----
+
+
+       * Long time been there, never noticed:
+
+       2007-07-04T01:03  perl  31526   529   JONALLEN/a2pdf-1.13.tar.gz  NOT OK
+       2007-07-02T15:26  perl  31515   299   JONALLEN/a2pdf-1.13.tar.gz  OK
+
+       Now I see this has been discussed in this file but no conclusion.
+
+       http://rt.cpan.org/Ticket/Display.html?id=28152
+
+       A perl/$^X issue. Voiced myself in the ticket.
+
+2007-11-27  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * PHRED/Apache-Test-1.30.tar.gz has a new dialog that needs to be
+       distropreffed.
+
+       This might need further work. Yesterday I saw a dialog despite
+       envariable APACHE being set?
+
+       * SEANO/Sepia-0.95.tar.gz might need a binary search. But it is
+       problematic because CPAN::Reporter and Sepia have an issue with each
+       other so it seems. Twice I have seen a hang after CPAN says
+       "CPAN::Reporter loaded". No! What looks like a hang is just something
+       taking many minutes. No?
+
+       No, it's just a buggy question/answer game for installing dependencies.
+       Somebody seems to have forgotten to set $| or something.
+
+       http://rt.cpan.org/Ticket/Display.html?id=30998
+
+2007-11-25  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Schwern posted about RT::Client::REST. Looks interesting.
+
+       http://use.perl.org/~schwern/journal/34967
+
+2007-11-24  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Overlooked this one
+
+       2007-11-07T01:28  perl  32230   282   GAAS/Font-AFM-1.19.tar.gz   NOT OK
+       2007-11-06T07:57  perl  32226   919   GAAS/Font-AFM-1.19.tar.gz   OK
+
+       Looks like Test::Harness. 3.00 came out on 11-06. With 32474 and 3.0 I
+       see FA fail too.
+
+       http://rt.cpan.org/Ticket/Display.html?id=30962
+
+2007-11-23  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * TEVERETT/Class-Prototyped-1.10.tar.gz looks like crying for a binary search help.
+
+----Program----
+eval q{use Class::Prototyped 1.10};
+print $@ ? "N/A" : "OK";
+print "\n";
+
+----Output of .../pLNXwon/perl-5.8.0@30979/bin/perl----
+OK
+
+----EOF ($?='0')----
+----Output of .../pTP10LN/perl-5.8.0@30980/bin/perl----
+N/A
+
+----EOF ($?='0')----
+
+       BBC? Yes. And ticket. http://rt.cpan.org/Ticket/Display.html?id=31556
+
+       * Random test failures with re-engine-Plan9:
+
+       http://rt.cpan.org/Ticket/Display.html?id=30928
+
+       * DONEILL/MIME-tools-5.425.tar.gz tests hang under 5.6.2
+
+       At about the same time a bleadperl test complained:
+
+       t/Smtpsend.............can't create socket: Address already in use at t/Smtpsend.t line 18.
+# Looks like your test died before it could output anything.
+ Dubious, test returned 255 (wstat 65280, 0xff00)
+ Failed 9/9 subtests 
+
+       So this might be a concurrency issue between the two tests? Sure!
+
+       http://rt.cpan.org/Ticket/Display.html?id=30927
+
+       And 12 days ago already the companion
+
+       http://rt.cpan.org/Ticket/Display.html?id=30645
+
+       and now stopped with a distropref.
+
+2007-11-22  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Re: [perl #47632] Undef loop while condition, loop code motion, and bad warning line number? 5.10-RC1 + 5.8.8
+
+       Schwern asks for a binary search. DONE
+
+       * My own module?
+
+       2007-10-30T23:51  perl  32204   495  ANDK/MAB2-0.06.tar.gz   NOT OK
+       2007-10-30T08:15  perl  32202  1121  ANDK/MAB2-0.06.tar.gz   OK
+
+       t/dualdb.........Could not tie @recs: illegal flag specified to DB->open; Filename => kafka.dualdb, Subname => recno, Mode => 0664, Flags => 524289 at /home/sand/.cpan/build/MAB2-0.06-EfNVot/blib/lib/Tie/MAB2/Dualdb/Recno.pm line 28.
+
+       -rw-r--r-- 1 root root     299 Oct 30 22:30 libdb-dev.list
+
+       Was this the upgrade to libdb 4.6.19-1?
+
+       Or the upgrade to 1.816?
+
+     395 2007-02-04 PMQS/DB_File-1.815.meta
+   87656 2007-02-04 PMQS/DB_File-1.815.tar.gz
+     395 2007-10-28 PMQS/DB_File-1.816.meta
+   87854 2007-10-29 PMQS/DB_File-1.816.tar.gz
+
+       Downgrading to 1.815 does not help. Downgrading to libdb 4.3 does not help either.
+
+       My perl 32147 passes all tests, it has DB_File 1.816 already. I
+       re-install 1.816 and re-test Encode::MAB2 and it succeeds again.
+
+       My perl 32208 fails that test, it has 1.816 already. I re-install 1.816
+       and re-test Encode::MAB2 and it fails again.
+
+       Everything looks like a perl bug except that between 32202 and 32204
+       nothing interesting happened.
+
+       So does the downgrade of libdb only have an effect on newer perls? If
+       so, then we will see 32177 and all others I build now succeed.
+
+       I do not understand the reason for that. Reading the output of the perl
+       compilation indicates that -ldb is called on the linker for DB_File.so.
+       But why is there a -L/usr/local/lib? Dunno, but irrelevant because there
+       is no libdb. And DB_File is a dynamic extension that gets stored into
+       ../../lib/auto/DB_File/DB_File.so. This then gets installed into
+
+       /home/src/perl/repoperls/installed-perls/perl/pbMhvub/perl-5.8.0@32444/lib/5.10.0/i686-linux-64int/DB_File.pm
+       and
+       /home/src/perl/repoperls/installed-perls/perl/pbMhvub/perl-5.8.0@32444/lib/5.10.0/i686-linux-64int/auto/DB_File/DB_File.so
+
+-r-xr-xr-x 1 sand sand 51221 2007-11-22 08:50 /home/src/perl/repoperls/installed-perls/perl/pbMhvub/perl-5.8.0@32444/lib/5.10.0/i686-linux-64int/auto/DB_File/DB_File.so
+-r--r--r-- 1 sand sand 63485 2007-11-22 08:50 /home/src/perl/repoperls/installed-perls/perl/pbMhvub/perl-5.8.0@32444/lib/5.10.0/i686-linux-64int/DB_File.pm
+
+       Nonono, wrong way down the road. BerkeleyDB is it, not DB_File, right? Yes
+
+                                  'requires' => {
+                                                  'BerkeleyDB' => '0.20',
+                                                  'Encode' => '1.41'
+                                                }
+
+       Now verified with
+
+Get:1 http://k66.linux.bogus testing/main libdb4.6 4.6.21-4 [562kB]
+Get:2 http://k66.linux.bogus testing/main libdb-dev 4.6.21-4 [643kB]
+
+       After that reinstalling BerkeleyDB, then testing Encode::MAB2 => FAIL.
+
+       http://rt.cpan.org/Ticket/Display.html?id=30926
+
+       * TkCarp has only fails for a while. Last srezic PASS with and first
+       srezic FAIL with 5.8.8
+
+    Left:  http://www.nntp.perl.org/group/perl.cpan.testers/2007/06/msg504007.html
+    Right: http://www.nntp.perl.org/group/perl.cpan.testers/2007/10/msg672129.html
+
+    Module Need Have                 Module Need Have       
+    ------ ---- -----------          ------ ---- -----------
+    Carp   0    1.04                 Carp   0    1.04       
+    Tk     0    804.027_500          Tk     0    804.027_501
+
+    Module              Have         Module              Have  
+    ------------------- ------       ------------------- ------
+    CPAN                1.9102       CPAN                1.9203
+    Cwd                 3.24         Cwd                 3.25  
+    ExtUtils::CBuilder  0.18         ExtUtils::CBuilder  0.18  
+    ExtUtils::Command   1.09         ExtUtils::Command   1.13  
+    ExtUtils::Install   1.41         ExtUtils::Install   1.41  
+    ExtUtils::MakeMaker 6.32         ExtUtils::MakeMaker 6.36  
+    ExtUtils::Manifest  1.48         ExtUtils::Manifest  1.51  
+    ExtUtils::ParseXS   2.15         ExtUtils::ParseXS   2.15  
+    File::Spec          3.12         File::Spec          3.12  
+    Module::Build       0.2806       Module::Build       0.2806
+    Module::Signature   0.55         Module::Signature   0.55  
+    Test::Harness       2.56         Test::Harness       2.64  
+    Test::More          0.70         Test::More          0.70  
+    version             n/a          YAML                0.66  
+                                     YAML::Syck          0.91  
+                                     version             0.7203
+
+       Did 501 break it?
+
+       http://rt.cpan.org/Ticket/Display.html?id=30909
+
+2007-11-21  Andreas J Koenig  <akoenig@iconmobile.com>
+
+       * Slaven: Give the LWP::UserAgent a conn cache to incr performance.
+
+       Patch in the mail but still undecided if this is really an improvement.
+
+2007-11-21  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * some encoding change
+
+       2007-11-20T10:28  perl  32412  1240   MIYAGAWA/Web-Scraper-0.22.tar.gz  NOT OK
+       2007-11-19T18:21  perl  32405   471   MIYAGAWA/Web-Scraper-0.22.tar.gz  OK
+
+       In the meantime 32405 also fails, I must go back to 32395 for an
+       autobundle comparison.
+
+       http://rt.cpan.org/Ticket/Display.html?id=30886 (HTML::TreeBuilder::XPath)
+
+       * where is the Gabor page with all the 5.005 modules?
+
+       http://cpantesters.szabgab.com/stats/perl_5.5.5.html
+
+       * V is a module but not indexed (?) what's up?
+
+    4934 2007-11-07 ABELTJE/V-0.13.tar.gz
+
+       ??? Mail sent, answer received, needs further processing.
+
+2007-11-18  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * BUG! I just discovered that a success report was sent for Readonly::XS
+       after a patch was applied. This was once forbidden and must remain
+       forbidden.
+
+       * MAROS/Mail-Builder-1.03.tar.gz seems to hang on 5.6.2 I just ^Ced it.
+
+       It was probably DONEILL/MIME-tools-5.425.tar.gz? See above.
+
+       * Just discovered that we lost JRED recently:
+
+       2007-11-08T16:04  perl  32244   494  JRED/Event-ExecFlow-0.63.tar.gz   NOT OK
+       2007-11-07T17:02  perl  32235   969  JRED/Event-ExecFlow-0.63.tar.gz   NOT OK
+       2007-11-07T01:28  perl  32230  1282  JRED/Event-ExecFlow-0.63.tar.gz   NOT OK
+       2007-11-06T07:57  perl  32226   456  JRED/Event-ExecFlow-0.63.tar.gz   OK
+       2007-11-05T13:08  perl  32222   402  JRED/Event-ExecFlow-0.63.tar.gz   OK
+       2007-11-04T20:10  perl  32219   124  JRED/Event-ExecFlow-0.63.tar.gz   OK
+
+       and since then 12 more fails out of 12 sessions.
+
+       It's a dependency on AnyEvent. Long day comparing AnyEvent results
+       follows. Mail to Marc has been sent. Update 2007-11-25 akoenig : FIXED
+
+       * <URL: http://rt.cpan.org/Ticket/Display.html?id=30051 >
+
+       Answers Yanick: pdflatex is the culprit littering /tmp. As I didn't find any easy way to...
+
+2007-11-17  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Todo: write a clean_tested() method. Suggests Adam Kennedy:
+
+ah, ok, I understand.
+Although if there is dependencies involved, would that also clean A?
+Or perhaps we need a clean_all, so that CPAN Testers can just call that each cycle?
+Adam K
+
+       * 32327 was a debugging build. I see a strange INC path without blib but
+       I see nothing suspect in the two patches 329 and 330 (328 is maintperl).
+       And the diff in the autobundles is a bit funny because 327 started
+       earlier and finished later, so it is a mix of upgrades and downgrades.
+
+       2007-11-16T13:38  perl  32330   709  YANICK/XML-XPathScript-1.52.tar.gz  NOT OK
+       2007-11-15T23:07  perl  32327  1008  YANICK/XML-XPathScript-1.52.tar.gz  OK
+       2007-11-14T09:33  perl  32308   325  YANICK/XML-XPathScript-1.52.tar.gz  OK
+
+       Module::Build 0.2808 vs 0.2808_01 is the most likely cause. But no, this
+       is it not. I tried it on 32354 which gives still a FAIL and then
+       downgraded to M:B 1.2808 and it stayed a FAIL. Upgrading to 0.2808_01
+       again does no change things either.
+
+       Ahhh, what does it really mean for a test script when ther is a shebang
+       line of
+
+       #!perl -t
+
+       ?? What was the exact error message again?
+
+t/04unicode......................Can't locate XML/XPathScript.pm in @INC (@INC contains: /home/src/perl/repoperls/installed-perls/perl/pztfddi/perl-5.8.0@32354/lib/5.10.0/i686-linux-64int /home/src/perl/repoperls/installed-perls/perl/pztfddi/perl-5.8.0@32354/lib/5.10.0 /home/src/perl/repoperls/installed-perls/perl/pztfddi/perl-5.8.0@32354/lib/site_perl/5.10.0/i686-linux-64int /home/src/perl/repoperls/installed-perls/perl/pztfddi/perl-5.8.0@32354/lib/site_perl/5.10.0) at t/04unicode.t line 7.
+BEGIN failed--compilation aborted at t/04unicode.t line 7.
+# Looks like your test died before it could output anything.
+ Dubious, test returned 255 (wstat 65280, 0xff00)
+ Failed 11/11 subtests
+
+       So it is the right perl being called but not the module in blib being
+       tested.
+
+       So I try it once again with 32308, run the test. UNINSTALL it. Run the
+       test again. There we have it. Fails just the same.
+
+       http://rt.cpan.org/Ticket/Display.html?id=30796
+
+2007-11-16  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Nicholas says that B::Generate still suffers from an assertion under
+       debugging. So I probably need to run a binary search on debugging perls
+       for B::Generate. The binary search leads us again to 22314/5 that has
+       already gone into a B:Generate BBC, so nothing to shout out.
+
+       * Marek Rouchal has opened a ticket about Module::ExtractUse. Resolved
+       in a MakeMaker ticket.
+
+2007-11-15  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Another breakage by Test::Distribution. Hopefully this will be fixed
+       in TD 2.00.
+
+       2007-11-11T18:16   maint-5.8   32273   838   SNOWHARE/Unicode-MapUTF8-1.11.tar.gz  NOT OK
+       2007-11-11T01:45   perl        32269   320   SNOWHARE/Unicode-MapUTF8-1.11.tar.gz  OK
+
+2007-11-13  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Another BBC article?
+
+       ----Program----
+       eval q{use B::PerlReq 0.006005};
+       print $@ ? "N/A" : "OK";
+       print "\n";
+
+       ----Output of .../pDKyJRO/perl-5.8.0@31962/bin/perl----
+       OK
+
+       ----EOF ($?='0')----
+       ----Output of .../pdIAoqO/perl-5.8.0@31963/bin/perl----
+       N/A
+
+       ----EOF ($?='0')----
+
+       Nope, BBC not justified. badly written test obviously.
+       http://rt.cpan.org/Ticket/Display.html?id=30717
+
+       Resolved in 0.006006.
+
+       * todo: publish the hvds patches DONE
+
+       * Need to try to fix Danga::Socket with Class::PseudoHash.
+
+        use fields;
+        use Class::PseudoHash;
+        # $ref = Class::PseudoHash->new;
+        $Class::PseudoHash::FixedKeys = 0;
+
+       Nope, does not seem to work.
+
+       * To write a bradfitz special BBC it needs a list of all his modules
+       that are broken because of pseudo hashes.
+
+       Danga::Socket is only the lowest-level broken module. As long as it is
+       not fixed we cannot even *see* the others (unless we read the source).
+
+       * Test::Distribution is living in a strangely infected neighborhood. E.g. List::Tuples fails with
+
+  NKH/List-Tuples-0.03.tar.gz
+  /usr/bin/make test -- NOT OK
+//hint// to see the cpan-testers results for installing this module, try:
+  reports NKH/List-Tuples-0.03.tar.gz
+Running make install
+  make test had returned bad status, won't install without force
+Failed during this command:
+ ATOURBIN/rpm-build-perl-0.6.5.tar.gz         : make_test NO
+ ZEV/Test-Dependencies-0.08.tar.gz            : make_test NO
+ SMUELLER/Test-Strict-0.08.tar.gz             : make_test NO
+ NKH/Carp-Diagnostics-0.03.tar.gz             : make_test NO
+ NKH/List-Tuples-0.03.tar.gz                  : make_test NO
+
+       I need Cantrell's website for resolving. AHA: 0% chance of success:)
+
+       Actually this example is exposing the problem that is in the system that
+       failing modules with failing dependencies are not reported on
+       cpantesters: Carp::Diagnostics has 2 fails but only 2 reports, not more.
+       Probably because Test::Dependencies has so many fails. Downgrading to
+       Test::Dependencies 0.07 also fails a test but "CPAN::Reporter: test
+       results were not valid, Prerequisite missing."
+
+       - B::PerlReq            ...missing.
+       - PerlReq::Utils        ...missing.
+
+       B::PerlReq missing in megainstall and a candidate for BBC. Fails with
+       blead, succeeds with 5.8.8. Now also Test::Dependencies has a test.
+
+       Update 2007-12-26 : Ticket to Test-Dependencies opened today
+       http://rt.cpan.org/Ticket/Display.html?id=31906 But both
+       Carp-Diagnostics and List-Tuples are by Nadim and make no sense as it
+       seems and I cannot argue over it. Hrm. I can:
+       http://rt.cpan.org/Ticket/Display.html?id=31914
+
+       * Lingua::Stem with Test::Harness 3.01 and 2.64 on 32274 broken
+
+t/97_distribution......no such test type: sig
+# Looks like your test died before it could output anything.
+ Dubious, test returned 255 (wstat 65280, 0xff00)
+ No subtests run
+
+  2007-11-11T01:45  perl  32269    939  SNOWHARE/Lingua-Stem-0.83.tar.gz  NOT OK
+       2007-11-10T02:38  perl  32262   1151  SNOWHARE/Lingua-Stem-0.83.tar.gz  OK
+
+       cpan[9]> m Test::Distribution
+Module id = Test::Distribution
+    CPAN_USERID  SRSHAH (Sagar R. Shah <srshah@cpan.org>)
+    CPAN_VERSION 1.29
+    CPAN_FILE    S/SR/SRSHAH/Test-Distribution-1.29.tar.gz
+    UPLOAD_DATE  2007-11-10
+    MANPAGE      Test::Distribution - perform tests on all modules of a distribution
+    INST_FILE    /home/src/perl/repoperls/installed-perls/perl/p4CNbhs/perl-5.8.0@32274/lib/site_perl/5.10.0/Test/Distribution.pm
+    INST_VERSION 1.29
+
+       Downgrading to 1.28 fixes that.
+
+       http://rt.cpan.org/Ticket/Display.html?id=30687
+       
+2007-11-11  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * My release of 1.92_52 gives FAILs in 6 of *my* smokes. As the error
+       messages mention File::Spec too I wonder if this has to do with a recent
+       glitch that I have not yet understood.
+
+         116743 2007-05-22 KWILLIAMS/PathTools-3.25.tar.gz
+    118823 2007-10-14 KWILLIAMS/PathTools-3.25_01.tar.gz
+
+       So 31790 has only 3.25 according to the m command.
+
+       And I get lots of these messages:
+
+Use of uninitialized value $file in string ne at /home/src/perl/repoperls/installed-perls/perl/pNaGaP6/perl-5.8.0@31790/lib/5.9.5/File/Spec/Unix.pm line 312.
+Use of uninitialized value $file in concatenation (.) or string at /home/src/perl/repoperls/installed-perls/perl/pNaGaP6/perl-5.8.0@31790/lib/5.9.5/File/Spec/Unix.pm line 320.
+
+       And after that failing tests.
+
+       The File/Spec.pm in current bleadperl 32269 is the same, but I do not
+       get these errors. Maybe the r command gives us a clue? No, it spits too
+       much output.
+
+       So I try an "update" to svk 3446 which was before Rich's patches and the
+       failures are the same. I should also try 3275. Indeed, the test failure
+       stays which should now have proven that it is not a change in my code
+       that broke but something that which I have installed in my smoke perls.
+
+       I should try perls close to 31790: 31613 and 31882. OK and OK. Now I can
+       go through diffs in the modules and upgrade until I have the jerk. Fun.
+       [...hours later...] This strategy does not lead anywhere.
+
+       32248 has no problem with this test either. But the scope of the problem
+       to compare whole trees with hundreds of interdependencies is simply too
+       big.
+
+       New idea: CPAN::Test::Dummy::Perl5::Make has been installed on those
+       perls, has it not? Yes. And when I uninstall it, all's well.
+
+       * This should become a BBC article:
+
+----Program----
+eval q{use Brackup 1.06};
+print $@ ? "N/A" : "OK";
+print "\n";
+
+----Output of .../pDjpgoB/perl-5.8.0@22314/bin/perl----
+OK
+
+----EOF ($?='0')----
+----Output of .../prHc4Oy/perl-5.8.0@22315/bin/perl----
+N/A
+
+----EOF ($?='0')----
+
+       
+
+2007-11-08  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Apache::Session failed today on 32235 because Test::Deep was missing.
+       seq was 388 and the seq of Test::Deep was 390. The latter was
+       successful, don't understand why it was not found by Apache::Session.
+       Needs more investigations.
+
+       * t/wmf/read..........
+1..2
+ok 1
+ok 2
+ok
+You already have a parser for (t/wmf/read.t) at /home/src/perl/repoperls/installed-perls/perl/pe1S7WD/perl-5.8.0@32235/lib/5.10.0/TAP/Harness.pm line 412
+
+       This happens with Image::MAgick and bleadperl@3223[05] even after I
+       fixed the test output of t/setattribute.t.
+
+       * RHANDOM/Template-Alloy-1.009.tar.gz works with 5.9.4, 5.9.5, 5.10.0
+       but hangs with 5.8.* during 05_tt_base. I ^Ced all 5.8 tests. 5.6.2 worked again.
+       Same for RHANDOM/Template-Parser-CET-0.05.tar.gz, even the test has the same name.
+
+       * [rt.cpan.org #30554] Not possible to upgrade from v1.9101 
+
+       Seems that I need to test with a perl that has no YAML.
+
+2007-11-07  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Net::SSLeay 1.32: make fails with "could not answer a question during the
+       dialog" or some such. Fails with 32230, 32226, 32222, 32219, 32216.
+
+       32212 seems different at first sight but then fails too.
+
+       * merejn on P5P:
+
+On Wed, 07 Nov 2007 05:30:34 +0100, andreas.koenig.7os6VVqR@franz.ak.mind.de
+(Andreas J. Koenig) wrote:
+
+> This patch brings bleadperl to 1.9204
+
+Can I please have an option or environment variable or install-time question
+to *NOT* ask if it is ok to connect to the internet please?
+
+
+       * where is the wiki? need to add hvds patches, Data::Dump::Streamer,
+       bradfitz, Devel::Cover, etc. to my Sunday posting.
+
+       http://www.perlfoundation.org/perl5/index.cgi
+
+       * need a (v)box without gzip or tar so I can see the tests succeed or fail
+
+2007-11-06  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * (Eric Wilhelm on module build mailing list) I think CPAN has a bug
+       which causes it to pass make_arg to ./Build install. (I seem to remember
+       having some grief with -j recently.)
+
+       * [rt.cpan.org #30481] Fail Installing New Mail::SpamAssassin 3.2.3
+
+       Need a fresh perl without spamassassin and build&test SpamAssassin as root.
+
+2007-11-05  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Subject: [rt.cpan.org #30481] Failed Test Suite with Mail::SpamAssassin 3.2.3 
+
+       Looks dangerous.
+
+       * http://users.endeworks.jp/~daisuke/code/pl/File-MMagic-XS-0.09003.tar.gz ?
+
+2007-11-03  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * what I want more than anything else before 5.10 is a list of all
+       modules that need patching or don't work.
+
+       A first approximation to the list that I really want would be a summary
+       of all BBC articles and the state they reached.
+
+       Shit, groups.google finds only 14 hits on "Bleadperl breaks CPAN" in a
+       narrow timeframe. So how do I find the older postings?
+
+       xray to the rescue: 373 hits on BBC. Now the list of affected modules.
+       "*" is for "not yet investigated". something else for "still relevant"
+       and "fixed"
+
+  Unsolved:
+    BRYCE/SVG-Metadata-0.28.tar.gz                    http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2007-07/msg00996.html
+    DMAKI/File-MMagic-XS-0.09002.tar.gz               http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2007-11/msg00025.html; only with threads and debugging; 
+    DOMIZIO/OOTools-2.21.tar.gz                       http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2007-07/msg00432.html
+    EDPRATOMO/Algorithm-Permute-0.06.tar.gz           http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2007-05/msg00297.html
+    HAYASHI/Term-ReadLine-Gnu-1.16.tar.gz             http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2006-11/msg00464.html
+    ILYAZ/modules/Math-Pari-2.010709.tar.gz           http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2006-10/msg00860.html
+    JJORE/B-Generate-1.10.tar.gz                      http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2007-08/msg00488.html
+    MARCEL/Exporter-Simple-1.10.tar.gz                http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2007-07/msg00710.html
+    MNOONING/Net-Daemon/Net-Daemon-0.43.tar.gz        http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2007-10/msg00811.html; only with threads; 
+    NAOYA/Hatena-Keyword-0.04.tar.gz                  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2007-05/msg00210.html
+    PDCAWLEY/Class-Inner-0.1.tar.gz                   http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2007-07/msg00499.html
+    PHOENIX/Term-ReadPassword-0.07.tar.gz             http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2007-08/msg00183.html
+    PJCJ/Devel-Cover-0.61.tar.gz                      http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2007-05/msg00861.html
+    RCLAMP/Devel-Caller-0.11.tar.gz                   http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2007-10/msg00813.html; only with threads;
+    RMUHLE/classes-0.943.tar.gz                       http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2007-05/msg00351.html
+    ROODE/Readonly-XS-1.04.tar.gz                     http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2007-07/msg00437.html
+    SAMTREGAR/XML-Validator-Schema-1.08.tar.gz        http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2007-05/msg00137.html
+    SAVA/Encode-IMAPUTF7-1.00.tar.gz                  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2007-06/msg00375.html
+    TANIGUCHI/Unicode-RecursiveDowngrade-0.03.tar.gz  http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2007-06/msg00498.html
+    VKON/Tcl-0.95.tar.gz                              http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2007-10/msg00822.html; only with debugging; 
+
+  Tested patches available
+    Text::Query                   0.07             http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2007-07/msg00434.html
+                                                   patch on CPAN: ANDK/patches/Text-Query-0.07-ROBIN-01.patch.gz               
+    Unicode::Lite                 0.12             http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2007-06/msg00012.html
+                                                   patch on CPAN: ANDK/Unicode-Lite-0.12-NWCLARK-01.patch.gz
+    XML::Parser                   2.34             http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2007-07/msg00662.html
+                                                   patch on CPAN: ANDK/patches/XML-Parser-2.34-ANDK-01.patch.gz
+
+  Authors fixed:                    broken           fixed
+    Class::Fields                 0.202            0.203
+    Class::MOP                    0.40             0.42
+    Clone                         0.25             0.28
+    DBI                           1.57             1.601
+    Data::Alias                   1.03             1.07
+    Devel::Size                   0.68             0.69
+    JSON                          1.12             1.14
+    PerlPoint::Parser             0.451            1.05
+    Regexp::Assemble              0.28             0.32
+    Rose::HTML::Object::Messages  0.549            0.550               https://rt.cpan.org/Ticket/Display.html?id=30021
+    ShiftJIS::X0213::MapUTF       0.30             0.31
+    TAP::Parser                   0.52             0.54
+
+  Bleadperl fixed:                  was broken
+    Acme::MetaSyntactic           0.99             fixed in bleadperl
+    Best.pm                       0.11             fixed in bleadperl
+    Class::Trait                  0.22             fixed in bleadperl
+    Contextual::Return           v0.2.1            fixed in bleadperl
+    Perl6::Attributes             0.04             fixed in bleadperl
+    SQL::Translator               0.08001          fixed in bleadperl
+    String::Multibyte             1.05             fixed in bleadperl
+    Test::MockObject              1.07             fixed in bleadperl
+    Text::WikiFormat              0.78             fixed in bleadperl
+    YAML                          0.66             fixed in bleadperl
+
+       * new fails
+    CHORNY/Apache-Session-1.84.tar.gz[545], RCLAMP/POE-Component-Server-HTTP-0.09.tar.gz[615], ADUITSIS/IPC-Mmap-0.14.tar.gz[767], ANDK/Apache-Session-Counted-1.118.tar.gz[793], DMAKI/DateTime-Calendar-Japanese-0.06001.tar.gz[930], TEVERETT/Class-Prototyped-1.10.tar.gz[1376], MERLYN/CGI-Prototype-0.9053.tar.gz[1377], MAURICE/IPC-ShareLite-0.09.tar.gz[1443]
+
+       I see that somebody has filled the messages and semaphore space and I
+       had to clean them up. Need to watch each of these beasts and write
+       Bugreports.
+
+       http://rt.cpan.org/Ticket/Display.html?id=30440
+
+2007-11-02  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * /tmp again:
+
+       30425 CatalystX-CRUD                  Cleaning up /tmp directory
+
+       * Today a new 32025 maintperl finished and it has many fails that I have
+       not noticed before. See 2007-11-01T02:38. This was due to the glitch
+       with disabling Sub-Uplevel. So this should not have caused harm because
+       no reports were sent out in such cases.
+
+2007-11-01  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Rethink the recent mail exchange with Barbie about timestamps in the future.
+
+       * Some distro removed the Config.pm of my testing perls so I lost 6 perl
+       installations. I removed them immediately and now let only one perl run.
+
+       From the history of sent test reports it seems that Perl-Dist is to blame.
+
+I'm starting cpan for bleadperl@32194 which has a working -V command so must have
+a Config.pm. Let me see it:
+
+                       % ls -l /home/src/perl/repoperls/installed-perls/perl/pICDJJz/perl-5.8.0@32194/lib/5.10.0/i686-linux-thread-multi-64int/Config.pm
+               -r--r--r-- 1 sand sand 3383 2007-10-26 06:17:43 /home/src/perl/repoperls/installed-perls/perl/pICDJJz/perl-5.8.0@32194/lib/5.10.0/i686-linux-thread-multi-64int/Config.pm
+
+And copy it away:
+
+                       cp /home/src/perl/repoperls/installed-perls/perl/pICDJJz/perl-5.8.0@32194/lib/5.10.0/i686-linux-thread-multi-64int/Config.pm /tmp/Config.pm.32194
+
+Ah, I see Adam has uploaded a 0.29_02 in the meantime. No mention of an
+alert. So let's try it now.
+
+                       cpan[6]> install ADAMK/Perl-Dist-0.29_02.tar.gz
+               Running make for A/AD/ADAMK/Perl-Dist-0.29_02.tar.gz
+
+                       CPAN.pm: Going to build A/AD/ADAMK/Perl-Dist-0.29_02.tar.gz
+
+               CPAN: CPAN::Reporter loaded ok (v1.04)
+               Checking if your kit is complete...
+               Looks good
+               Warning: prerequisite Perl::Dist::Downloads 0.02 not found.
+               Writing Makefile for Perl::Dist
+               Looking for Inno Setup 5... Failed to find the Program Files directory
+
+               (/home/src/perl/repoperls/installed-perls/perl/pICDJJz/perl-5.8.0@32194/bin/perl Makefile.PL exited with 0)
+               CPAN::Reporter: Makefile.PL result is 'pass', No errors.
+               ---- Unsatisfied dependencies detected during ----
+               ----      ADAMK/Perl-Dist-0.29_02.tar.gz      ----
+                               Perl::Dist::Downloads [requires]
+               Running make test
+                       Delayed until after prerequisites
+               Running make install
+                       Delayed until after prerequisites
+               Running install for module 'Perl::Dist::Downloads'
+               Running make for A/AD/ADAMK/Perl-Dist-Downloads-0.03.tar.gz
+               Checksum for /home/ftp/pub/CPAN/authors/id/A/AD/ADAMK/Perl-Dist-Downloads-0.03.tar.gz ok
+
+                       CPAN.pm: Going to build A/AD/ADAMK/Perl-Dist-Downloads-0.03.tar.gz
+
+               Checking if your kit is complete...
+               Looks good
+               Writing Makefile for Perl::Dist::Downloads
+               (/home/src/perl/repoperls/installed-perls/perl/pICDJJz/perl-5.8.0@32194/bin/perl Makefile.PL exited with 0)
+               CPAN::Reporter: Makefile.PL result is 'pass', No errors.
+               Installing blib/lib/auto/Perl/Dist/Downloads/mingw-runtime-3.13.tar.gz
+               Installing blib/lib/auto/Perl/Dist/Downloads/gcc-g++-3.4.5-20060117-1.tar.gz
+               Installing blib/lib/auto/Perl/Dist/Downloads/dmake-4.8-20070327-SHAY.zip
+               Installing blib/lib/auto/Perl/Dist/Downloads/gcc-core-3.4.5-20060117-1.tar.gz
+               Installing blib/lib/auto/Perl/Dist/Downloads/w32api-3.10.tar.gz
+               Installing blib/lib/auto/Perl/Dist/Downloads/mingw32-make-3.81-2.tar.gz
+               Installing blib/lib/auto/Perl/Dist/Downloads/binutils-2.17.50-20060824-1.tar.gz
+               cp lib/Perl/Dist/Downloads.pm blib/lib/Perl/Dist/Downloads.pm
+               Manifying blib/man3/Perl::Dist::Downloads.3
+               (/usr/bin/make exited with 0)
+               CPAN::Reporter: make result is 'pass', No errors.
+                       ADAMK/Perl-Dist-Downloads-0.03.tar.gz
+                       /usr/bin/make -- OK
+               Running make test
+               PERL_DL_NONLAZY=1 /home/src/perl/repoperls/installed-perls/perl/pICDJJz/perl-5.8.0@32194/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'inc', 'blib/lib', 'blib/arch')" t/*.t
+               t/01_compile....ok
+               t/02_main.......ok
+               t/98_pod........skipped
+                                               all skipped: Author tests not required for installation
+               t/99_pmv........skipped
+                                               all skipped: Author tests not required for installation
+               All tests successful, 2 tests skipped.
+               Files=4, Tests=9,  1 wallclock secs ( 0.21 cusr +  0.05 csys =  0.26 CPU)
+               (/usr/bin/make test exited with 0)
+               CPAN::Reporter: Test result is 'pass', All tests successful.
+               Preparing a CPAN Testers report for Perl-Dist-Downloads-0.03
+               Sending test report with 'pass' to cpan-testers@perl.org
+                       ADAMK/Perl-Dist-Downloads-0.03.tar.gz
+                       /usr/bin/make test -- OK
+               Running make install
+               Prepending /home/sand/.cpan/build/Perl-Dist-Downloads-0.03-QjvVtv/blib/arch /home/sand/.cpan/build/Perl-Dist-Downloads-0.03-QjvVtv/blib/lib to PERL5LIB for 'install'
+               Installing /home/src/perl/repoperls/installed-perls/perl/pICDJJz/perl-5.8.0@32194/lib/site_perl/5.10.0/Perl/Dist/Downloads.pm
+               Installing /home/src/perl/repoperls/installed-perls/perl/pICDJJz/perl-5.8.0@32194/lib/site_perl/5.10.0/auto/Perl/Dist/Downloads/mingw-runtime-3.13.tar.gz
+               Installing /home/src/perl/repoperls/installed-perls/perl/pICDJJz/perl-5.8.0@32194/lib/site_perl/5.10.0/auto/Perl/Dist/Downloads/gcc-g++-3.4.5-20060117-1.tar.gz
+               Installing /home/src/perl/repoperls/installed-perls/perl/pICDJJz/perl-5.8.0@32194/lib/site_perl/5.10.0/auto/Perl/Dist/Downloads/dmake-4.8-20070327-SHAY.zip
+               Installing /home/src/perl/repoperls/installed-perls/perl/pICDJJz/perl-5.8.0@32194/lib/site_perl/5.10.0/auto/Perl/Dist/Downloads/gcc-core-3.4.5-20060117-1.tar.gz
+               Installing /home/src/perl/repoperls/installed-perls/perl/pICDJJz/perl-5.8.0@32194/lib/site_perl/5.10.0/auto/Perl/Dist/Downloads/w32api-3.10.tar.gz
+               Installing /home/src/perl/repoperls/installed-perls/perl/pICDJJz/perl-5.8.0@32194/lib/site_perl/5.10.0/auto/Perl/Dist/Downloads/mingw32-make-3.81-2.tar.gz
+               Installing /home/src/perl/repoperls/installed-perls/perl/pICDJJz/perl-5.8.0@32194/lib/site_perl/5.10.0/auto/Perl/Dist/Downloads/binutils-2.17.50-20060824-1.tar.gz
+               Installing /home/src/perl/repoperls/installed-perls/perl/pICDJJz/perl-5.8.0@32194/man/man3/Perl::Dist::Downloads.3
+               Writing /home/src/perl/repoperls/installed-perls/perl/pICDJJz/perl-5.8.0@32194/lib/site_perl/5.10.0/i686-linux-thread-multi-64int/auto/Perl/Dist/Downloads/.packlist
+               Appending installation info to /home/src/perl/repoperls/installed-perls/perl/pICDJJz/perl-5.8.0@32194/lib/5.10.0/i686-linux-thread-multi-64int/perllocal.pod
+                       ADAMK/Perl-Dist-Downloads-0.03.tar.gz
+                       /usr/bin/make install UNINST=1 -- OK
+               Running make for A/AD/ADAMK/Perl-Dist-0.29_02.tar.gz
+                       Has already been unwrapped into directory /home/sand/.cpan/build/Perl-Dist-0.29_02-uH5Hsi
+
+                       CPAN.pm: Going to build A/AD/ADAMK/Perl-Dist-0.29_02.tar.gz
+
+               Installing blib/lib/auto/Perl/Dist/Config.pm
+               Installing blib/lib/auto/Perl/Dist/LICENSE.txt
+               Installing blib/lib/auto/Perl/Dist/README.w32api
+               Installing blib/lib/auto/Perl/Dist/Installed.pm
+               Installing blib/lib/auto/Perl/Dist/Packlist.pm
+               Installing blib/lib/auto/Perl/Dist/FinalConfig.pm
+               Installing blib/lib/auto/Perl/Dist/libnet.cfg
+               Installing blib/lib/auto/Perl/Dist/README
+               Installing blib/lib/auto/Perl/Dist/Install.pm
+               cp lib/Perl/Dist/Asset.pm blib/lib/Perl/Dist/Asset.pm
+               cp lib/Perl/Dist/Builder.pm blib/lib/Perl/Dist/Builder.pm
+               cp lib/Perl/Dist/Inno/Registry.pm blib/lib/Perl/Dist/Inno/Registry.pm
+               cp lib/Perl/Dist.pm blib/lib/Perl/Dist.pm
+               cp lib/Perl/Dist/Inno.pm blib/lib/Perl/Dist/Inno.pm
+               cp lib/Perl/Dist/Asset/Module.pm blib/lib/Perl/Dist/Asset/Module.pm
+               cp lib/Perl/Dist/Asset/Perl.pm blib/lib/Perl/Dist/Asset/Perl.pm
+               cp lib/Perl/Dist/Asset/Binary.pm blib/lib/Perl/Dist/Asset/Binary.pm
+               cp lib/Perl/Dist/Inno/File.pm blib/lib/Perl/Dist/Inno/File.pm
+               cp lib/Perl/Dist/Asset/File.pm blib/lib/Perl/Dist/Asset/File.pm
+               cp lib/Perl/Dist/Inno/Icon.pm blib/lib/Perl/Dist/Inno/Icon.pm
+               cp lib/Perl/Dist/Asset/Distribution.pm blib/lib/Perl/Dist/Asset/Distribution.pm
+               cp script/perldist blib/script/perldist
+               /home/src/perl/repoperls/installed-perls/perl/pICDJJz/perl-5.8.0@32194/bin/perl "-Iinc" "-MExtUtils::MY" -e "MY->fixin(shift)" blib/script/perldist
+               Manifying blib/man3/Perl::Dist::Builder.3
+               Manifying blib/man3/Perl::Dist.3
+               (/usr/bin/make exited with 0)
+               CPAN::Reporter: make result is 'pass', No errors.
+                       ADAMK/Perl-Dist-0.29_02.tar.gz
+                       /usr/bin/make -- OK
+               Running make test
+               PERL_DL_NONLAZY=1 /home/src/perl/repoperls/installed-perls/perl/pICDJJz/perl-5.8.0@32194/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'inc', 'blib/lib', 'blib/arch')" t/*.t
+               t/01_compile..........ok
+               t/03_inno_file........ok
+               t/04_inno_icon........ok
+               t/05_inno_registry....ok
+               t/06_inno.............skipped
+                                               all skipped: Not on Win32
+               t/07_asset_file.......ok
+               t/10_dist_new.........skipped
+                                               all skipped: Not on Win32
+               t/11_dist_run.........skipped
+                                               all skipped: Not on Win32
+               t/98_pod..............skipped
+                                               all skipped: Author tests not required for installation
+               t/99_pmv..............skipped
+                                               all skipped: Author tests not required for installation
+               All tests successful, 5 tests skipped.
+               Files=10, Tests=41,  8 wallclock secs ( 1.52 cusr +  0.14 csys =  1.66 CPU)
+               (/usr/bin/make test exited with 0)
+               CPAN::Reporter: Test result is 'pass', All tests successful.
+               Preparing a CPAN Testers report for Perl-Dist-0.29_02
+               Sending test report with 'pass' to cpan-testers@perl.org
+                       ADAMK/Perl-Dist-0.29_02.tar.gz
+                       /usr/bin/make test -- OK
+               Running make install
+               Prepending /home/sand/.cpan/build/Perl-Dist-0.29_02-uH5Hsi/blib/arch /home/sand/.cpan/build/Perl-Dist-0.29_02-uH5Hsi/blib/lib to PERL5LIB for 'install'
+               Can't locate Config.pm in @INC (@INC contains: inc /home/sand/.cpan/build/Perl-Dist-0.29_02-uH5Hsi/blib/arch /home/sand/.cpan/build/Perl-Dist-0.29_02-uH5Hsi/blib/lib /home/src/perl/repoperls/installed-perls/perl/pICDJJz/perl-5.8.0@32194/lib/5.10.0/i686-linux-thread-multi-64int /home/src/perl/repoperls/installed-perls/perl/pICDJJz/perl-5.8.0@32194/lib/5.10.0 /home/src/perl/repoperls/installed-perls/perl/pICDJJz/perl-5.8.0@32194/lib/site_perl/5.10.0/i686-linux-thread-multi-64int /home/src/perl/repoperls/installed-perls/perl/pICDJJz/perl-5.8.0@32194/lib/site_perl/5.10.0 .) at /home/src/perl/repoperls/installed-perls/perl/pICDJJz/perl-5.8.0@32194/lib/5.10.0/AutoSplit.pm line 4.
+               BEGIN failed--compilation aborted at /home/src/perl/repoperls/installed-perls/perl/pICDJJz/perl-5.8.0@32194/lib/5.10.0/AutoSplit.pm line 4.
+               Compilation failed in require at /home/src/perl/repoperls/installed-perls/perl/pICDJJz/perl-5.8.0@32194/lib/5.10.0/ExtUtils/Install.pm line 9.
+               BEGIN failed--compilation aborted at /home/src/perl/repoperls/installed-perls/perl/pICDJJz/perl-5.8.0@32194/lib/5.10.0/ExtUtils/Install.pm line 9.
+               Compilation failed in require.
+               BEGIN failed--compilation aborted.
+               make: *** [pure_site_install] Fehler 2
+                       ADAMK/Perl-Dist-0.29_02.tar.gz
+                       /usr/bin/make install UNINST=1 -- NOT OK
+               Failed during this command:
+                ADAMK/Perl-Dist-0.29_02.tar.gz               : install NO
+
+               cpan[7]> q
+               Warning: Configuration not saved.
+               Lockfile removed.
+               ......>sand@k75:~/CPAN
+               >sand@k75:~/CPAN-SVN% ls -l /home/src/perl/repoperls/installed-perls/perl/pICDJJz/perl-5.8.0@32194/lib/5.10.0/i686-linux-thread-multi-64int/Config.pm
+               ls: /home/src/perl/repoperls/installed-perls/perl/pICDJJz/perl-5.8.0@32194/lib/5.10.0/i686-linux-thread-multi-64int/Config.pm: Datei oder Verzeichnis nicht gefunden
+
+Which means in English: not found. So installing ADAMK/Perl-Dist-0.29_02.tar.gz removes the Config.pm if the installer is owner (which he usually is).
+
+       2007-11-01 akoenig : I have issued above text as a "security alert"
+       ticket on RT.cpan.org (#30404), informed the cpan-testers-discussion
+       mailing list and removed the two Perl-Dist-0.29_0[12].tar.gz files from
+       CPAN.
+
+       * Is it true that apache2 does not build with blead?
+
+2007-10-30  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Today I saw this ugly result:
+
+PERL_DL_NONLAZY=1 /home/src/perl/repoperls/installed-perls/perl/p6GHBr2/perl-5.8.0@27906/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
+t/01-sanity..............ok
+t/02-runthrough..........panic: free from wrong pool, <F> line 3.
+# Looks like your test died just after 13.
+t/02-runthrough..........dubious
+        Test returned status 255 (wstat 65280, 0xff00)
+        after all the subtests completed successfully
+t/03-error...............panic: free from wrong pool.
+# Looks like your test died just after 3.
+t/03-error...............dubious
+        Test returned status 255 (wstat 65280, 0xff00)
+        after all the subtests completed successfully
+t/99_pod-coverage........skipped
+        all skipped: Enable TEST_POD environment variable to test POD
+t/99_pod.................skipped
+        all skipped: Enable TEST_POD environment variable to test POD
+t/compat_01-selfcheck....panic: free from wrong pool.
+# Looks like your test died just after 2.
+t/compat_01-selfcheck....dubious
+        Test returned status 255 (wstat 65280, 0xff00)
+        after all the subtests completed successfully
+t/compat_02-extmagic.....panic: free from wrong pool.
+# Looks like your test died just after 2.
+t/compat_02-extmagic.....dubious
+        Test returned status 255 (wstat 65280, 0xff00)
+        after all the subtests completed successfully
+Failed Test             Stat Wstat Total Fail  Failed  List of Failed
+-------------------------------------------------------------------------------
+t/02-runthrough.t        255 65280    13    0   0.00%  ??
+Failed Test             Stat Wstat Total Fail  Failed  List of Failed
+-------------------------------------------------------------------------------
+t/03-error.t             255 65280     3    0   0.00%  ??
+Failed Test             Stat Wstat Total Fail  Failed  List of Failed
+-------------------------------------------------------------------------------
+t/compat_01-selfcheck.t  255 65280     2    0   0.00%  ??
+Failed Test             Stat Wstat Total Fail  Failed  List of Failed
+-------------------------------------------------------------------------------
+t/compat_02-extmagic.t   255 65280     2    0   0.00%  ??
+2 tests skipped.
+Failed 4/7 test scripts, 42.86% okay. 0/21 subtests failed, 100.00% okay.
+Files=7, Tests=21,  1 wallclock secs ( 0.76 cusr +  0.10 csys =  0.86 CPU)
+  DMAKI/File-MMagic-XS-0.09002.tar.gz
+  /usr/bin/make test -- OK
+
+       who wrote the result and who could not read it? Test::Harness 2.57_05
+       and CPAN::Reporter (not installed!), so it was me!
+
+       * Bug in File::Temp version checking code. A simple < is wrong, you must
+       use CPAN::Version!
+
+       * MLEHMANN/Gtk-Perl-0.7009.tar.gz fails because gtk-config not found or
+       something. Installed libgtk1.2-dev. More libraries missing in the next
+       round of trial and error.
+
+       * File-MMagic-XS failed on 32195, 32186 which is threaded and debugging.
+       I started to watch F:M:X with 31568 but we have one other
+       threaded+debugging perl since then: 32032. But yes, 32032 was not a
+       regular megainstall. So let's try DMAKI/File-MMagic-XS-0.09002.tar.gz
+       with 32032. And on a maintperl? Try 31223.
+
+       Yes, it fails with blead@32032 (panic free from wrong pool), it succeeds
+       with maint@31223.
+
+       And it fails for this:
+
+         MMagic.xs:455: error: expected declaration specifiers or '...' before '(' token'
+
+       with 27680, 27704, 27705, 27729, 27732, 27733, 27734
+       
+       It fails with the same panic free from wrong pool on 30953, 30952,
+       29353, 28507, 28106, 27906, 27806, 27755, 27741, 27735.
+
+       Next: According to the comment in 27735 we must go back in time before
+       27649 and I see a good place at 23232 which is 51 points from 23181
+       which is quite a good distance. 23240 would have been the better choice.
+       Oh well.
+
+----Program----
+eval q{use File::MMagic::XS 0.09002};
+print $@ ? "N/A" : "OK";
+print "\n";
+
+----Output of .../p3g2zXo/perl-5.8.0@26177/bin/perl----
+OK
+
+----EOF ($?='0')----
+----Output of .../p2IzPOM/perl-5.8.0@26178/bin/perl----
+N/A
+
+----EOF ($?='0')----
+
+       This is no way possible. 26178 did nothing but remove comments. Ahhh,
+       there is an old 27177 from 2005 involved.
+
+----Output of .../pql0Vj4/perl-5.8.0@26176/bin/perl----
+OK
+
+----EOF ($?='0')----
+----Output of .../p1BkiZu/perl-5.8.0@26177/bin/perl----
+N/A
+
+----EOF ($?='0')----
+
+       Yes, this is the real thing. BBC article posted to P5P.
+
+2007-10-28  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * watching /tmp is boring and I want to delay the next RT tickets until
+       after the next release of File::Temp.
+
+       * I wish I had an overview over all BBC articles and the status they are
+       in and links to the articles and the RT tickets and all postings that
+       preceded BBC saying something like "23456 breaks Term::ReadLine::Gnu".
+       This (at least the still open parts) should find its way into
+       perl5100delta.pod. Math::Pari and T:R:G being the most prominent
+       victims.
+
+       * Tcl maybe broke around 31941? We do not have the config of our perls
+       in the database, so SQL will not do it. We need to find all Tcl=OK for
+       perl=debugging. So some grep through all perl-V and all VKON! or so.
+
+       
+for d in logs/megainstall.2007{09,10}*.d; do
+grep -H " optimize" $d/perl-V.txt | perl -pe 's/\n//'
+grep ok= $d/VKON!Tcl-* |& perl -nle 'print /( ok=".+?")/'
+done
+[...]
+logs/megainstall.20070922T1716.d/perl-V.txt:    optimize='-g', ok="OK"
+logs/megainstall.20070923T1153.d/perl-V.txt:    optimize='-g', ok="NOT OK"
+
+
+       This means 31939-31941 and we need a config with optimize=-g. Nonono,
+       because 39 and 41 have long since been purged we need to order 40
+       directly, then the neighbor and then write the BBC (unless the neighbor
+       behaves differently from what we see in the database; which means 41
+       must fail).
+
+       31941 is easy peasy. The subject line says exactly what it is doing. But
+       is it correct to limit an assertion to debugging mode? Are the two
+       extensions doing stupid things? Let's examine the diagnostics. Tcl:
+
+t/call.........Assertion ((svtype)((_svi)->sv_flags & 0xff)) >= SVt_RV failed: file "Tcl.xs", line 647 at t/call.t line 38.
+dubious
+^ITest returned status 88 (wstat 22528, 0x5800)
+DIED. FAILED tests 9-10
+^IFailed 2/10 tests, 80.00% okay
+
+       And Coro? 4.13 does not work with 31940.
+
+       31847/31854 MLEHMANN/Coro-3.63.tar.gz from NA to OK
+       31682/31684 MLEHMANN/Coro-3.63.tar.gz from OK to NA
+
+       SEGV during test: 31613, 31021, 30019, 29743, 29619
+
+       PL_parser undeclared in State.xs:1111: 29023, 29503, 29537
+
+       As this PL_parser is dependent on 5.9.0 I do not expect that any older perl will now compile
+
+       Try older Coro: 4.11 no, 4.1 no, 4.03 SEGV
+
+       SEGV during test with 4.03: 29537, 28022, 27002, 25229, 24044
+
+       State.xs:263: error: too few arguments to function Perl_pad_push: 23023, 23494, 23768, 23973
+
+       This State.xs:263 thing is even in the oldest Coro, 3.63 and I'm not up
+       to searching backpan.
+
+       So I will now have a look at the gdb analysis and then check in maint perl.
+
+Failed to read a valid object file image from memory.
+Core was generated by `/home/src/perl/repoperls/installed-perls/perl/pm5CFa8/perl-5.8.0@32198/bin/perl'.
+Program terminated with signal 11, Segmentation fault.
+#0  coro_transfer (prev=Cannot access memory at address 0xfffffffc
+) at libcoro/coro.c:153
+153     }
+(gdb) bt
+#0  coro_transfer (prev=Cannot access memory at address 0xfffffffc
+) at libcoro/coro.c:153
+Cannot access memory at address 0x4
+
+       Well. And maintperl? Ahhh, same thing! Stock 5.8.8 has it. 5.8.1 is
+       simply too old to understand current Coro code. 22251(5.8.3) has the
+       SEGV too. So no BBC in here.
+       
+       * Bugreport to self: File::Temp needs a minimum of 0.14 if we use the
+       object interface. FIXED
+
+       * Devel-Caller poking around.
+
+       30955:
+
+t/Devel-Caller....ok 1/72
+#   Failed (TODO) test 'with lexical $foo'
+#   at t/Devel-Caller.t line 36.
+#          got: 'GLOB(0x8319b70)'
+#     expected: 'SCALAR(0x840c250)'
+
+#   Failed (TODO) test 'with lexical @foo'
+#   at t/Devel-Caller.t line 37.
+#          got: 'SCALAR(0x843b3a8)'
+#     expected: 'ARRAY(0x84417fc)'
+
+#   Failed (TODO) test 'with lexical %foo'
+#   at t/Devel-Caller.t line 38.
+#          got: 'GLOB(0x843b268)'
+#     expected: 'HASH(0x8441824)'
+Assertion ((svtype)((shplep)->sv_flags & 0xff)) == SVt_PVGV || ((svtype)((shplep)->sv_flags & 0xff)) == SVt_PVLV failed: file "lib/Devel/Caller.xs", line 49 at /home/sand/.cpan/build/Devel-Caller-0.11-JPp6H1/blib/lib/Devel/Caller.pm line 32.
+# Looks like you planned 72 tests but only ran 43.
+# Looks like your test died just after 43.
+t/Devel-Caller....dubious
+        Test returned status 255 (wstat 65280, 0xff00)
+DIED. FAILED tests 44-72
+        Failed 29/72 tests, 59.72% okay
+
+       32195:
+
+t/Devel-Caller....
+#   Failed (TODO) test 'with lexical $foo'
+#   at t/Devel-Caller.t line 36.
+#          got: 'GLOB(0x838b8d0)'
+#     expected: 'SCALAR(0x83a47b0)'
+
+#   Failed (TODO) test 'with lexical @foo'
+#   at t/Devel-Caller.t line 37.
+#          got: 'SCALAR(0x84af790)'
+#     expected: 'ARRAY(0x84b6690)'
+
+#   Failed (TODO) test 'with lexical %foo'
+#   at t/Devel-Caller.t line 38.
+#          got: 'GLOB(0x84af678)'
+#     expected: 'HASH(0x84b66b8)'
+dubious
+        Test returned status 0 (wstat 11, 0xb)
+DIED. FAILED tests 44-72
+        Failed 29/72 tests, 59.72% okay
+
+
+
+       Ah, das heisst doch coredump, oder?
+
+% gdb /home/src/perl/repoperls/installed-perls/perl/pbCbNp9/perl-5.8.0@32195/bin/perl core 
+GNU gdb 6.6.90.20070912-debian
+Copyright (C) 2007 Free Software Foundation, Inc.
+License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
+This is free software: you are free to change and redistribute it.
+There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
+and "show warranty" for details.
+This GDB was configured as "i486-linux-gnu"...
+Using host libthread_db library "/lib/i686/cmov/libthread_db.so.1".
+
+warning: Can't read pathname for load map: Input/output error.
+Reading symbols from /lib/i686/cmov/libnsl.so.1...done.
+Loaded symbols for /lib/i686/cmov/libnsl.so.1
+Reading symbols from /lib/i686/cmov/libdl.so.2...done.
+Loaded symbols for /lib/i686/cmov/libdl.so.2
+Reading symbols from /lib/i686/cmov/libm.so.6...done.
+Loaded symbols for /lib/i686/cmov/libm.so.6
+Reading symbols from /lib/i686/cmov/libcrypt.so.1...done.
+Loaded symbols for /lib/i686/cmov/libcrypt.so.1
+Reading symbols from /lib/i686/cmov/libutil.so.1...done.
+Loaded symbols for /lib/i686/cmov/libutil.so.1
+Reading symbols from /lib/i686/cmov/libpthread.so.0...done.
+Loaded symbols for /lib/i686/cmov/libpthread.so.0
+Reading symbols from /lib/i686/cmov/libc.so.6...done.
+Loaded symbols for /lib/i686/cmov/libc.so.6
+Reading symbols from /lib/ld-linux.so.2...done.
+Loaded symbols for /lib/ld-linux.so.2
+Reading symbols from /home/src/perl/repoperls/installed-perls/perl/pbCbNp9/perl-5.8.0@32195/lib/site_perl/5.10.0/i686-linux-thread-multi-64int/auto/PadWalker/PadWalker.so...done.
+Loaded symbols for /home/src/perl/repoperls/installed-perls/perl/pbCbNp9/perl-5.8.0@32195/lib/site_perl/5.10.0/i686-linux-thread-multi-64int/auto/PadWalker/PadWalker.so
+Reading symbols from /home/sand/.cpan/build/Devel-Caller-0.11-4u9D7a/blib/arch/auto/Devel/Caller/Caller.so...done.
+Loaded symbols for /home/sand/.cpan/build/Devel-Caller-0.11-4u9D7a/blib/arch/auto/Devel/Caller/Caller.so
+Failed to read a valid object file image from memory.
+Core was generated by `/home/src/perl/repoperls/installed-perls/perl/pbCbNp9/perl-5.8.0@32195/bin/perl'.
+Program terminated with signal 11, Segmentation fault.
+#0  0xb7f7b51c in glob_out (sigil=36 '$', op=0x84c2cc8, want_name=0)
+    at lib/Devel/Caller.xs:49
+49          case '$': ret = (SV*) GvSV(gv); break;
+
+
+       Hey, it even has debugging symbols. But what's that 'Failed to read a
+       valid object file image from memory.'?
+
+
+       27705:
+
+/home/src/perl/repoperls/installed-perls/perl/pBY7a0s/perl-5.8.0@27705/bin/perl Build --makefile_env_macros 1 test
+t/Devel-Caller....ok 1/72                                                    
+#   Failed (TODO) test 'with lexical $foo'
+#   in t/Devel-Caller.t at line 36.
+#          got: 'GLOB(0x82bac48)'
+#     expected: 'SCALAR(0x839aedc)'
+
+#   Failed (TODO) test 'with lexical @foo'
+#   in t/Devel-Caller.t at line 37.
+#          got: 'SCALAR(0x83f58c0)'
+#     expected: 'ARRAY(0x8401304)'
+
+#   Failed (TODO) test 'with lexical %foo'
+#   in t/Devel-Caller.t at line 38.
+#          got: 'GLOB(0x83f5758)'
+#     expected: 'HASH(0x840132c)'
+t/Devel-Caller....dubious                                                    
+        Test returned status 0 (wstat 11, 0xb)
+DIED. FAILED tests 44-72
+        Failed 29/72 tests, 59.72% okay
+
+
+       Core dump looks the same.
+
+       27048:
+
+       Same thing, core dump without symbols:
+
+(gdb) bt
+#0  0xb7f39941 in glob_out ()
+   from /home/sand/.cpan/build/Devel-Caller-0.11-K2jwTc/blib/arch/auto/Devel/Caller/Caller.so
+#1  0xb7f39eb4 in XS_Devel__Caller__called_with ()
+   from /home/sand/.cpan/build/Devel-Caller-0.11-K2jwTc/blib/arch/auto/Devel/Caller/Caller.so
+#2  0x080d090b in Perl_pp_entersub ()
+#3  0x080c85a9 in Perl_runops_standard ()
+#4  0x0806559b in perl_run ()
+#5  0x0806034d in main ()
+
+       16500:
+
+       Ahh, PadWalker 1.5 denies working with 5.7.3, demands minimum 5.8.2
+
+       19367:
+
+       Everything like in 27048 and the others above.
+
+       17706:
+
+       PadWalker 1.5 does not pass its own tests:
+
+t/test........FAILED tests 9, 15
+        Failed 2/15 tests, 86.67% okay
+t/tt..........FAILED tests 3-4
+        Failed 2/5 tests, 60.00% okay
+
+       I do a 'force install' on it. I then have to install Module::Build and
+       ExtUtils::CBuilder and then I can install Devel::Caller and it tests OK:
+
+cc -shared -L/usr/local/lib -o blib/arch/auto/Devel/Caller/Caller.so lib/Devel/Caller.o
+Manifying blib/lib/Devel/Caller.pm -> blib/libdoc/Devel::Caller.3
+  RCLAMP/Devel-Caller-0.11.tar.gz
+  /usr/bin/make -- OK
+Warning (usually harmless): 'YAML' not installed, will not store persistent state                                                                               
+Running make test
+/home/src/perl/repoperls/installed-perls/perl/pY6kBLf/perl-5.8.0@17706/bin/perl Build --makefile_env_macros 1 test
+t/Devel-Caller....ok
+        26/72 unexpectedly succeeded
+All tests successful (26 subtests UNEXPECTEDLY SUCCEEDED).
+Files=1, Tests=72,  0 wallclock secs ( 0.09 cusr +  0.01 csys =  0.10 CPU)
+  RCLAMP/Devel-Caller-0.11.tar.gz
+  /usr/bin/make test -- OK
+Warning (usually harmless): 'YAML' not installed, will not store persistent state                                                                               
+
+       A few minutes later I have installed several other modules for a
+       frictionless binary search and these programs then find a Devel::Caller
+       that does not pass its own test anymore. Why?
+
+       I remove the installation and reinstall with ./installperl from the
+       build directory. I install as above the three PadWalker, M:B and EU:CB
+
+       I see Devel::Caller working again. I make a backup or this tree. I
+       re-run './Build test' several times in the Devel-Caller-0.11-iL3qS5/
+       directory, always success.
+
+       Now I try to install the Bundle::CPANxxl piece by piece. YAML::Syck
+       fails. IO::Tty OK. Expect OK. YAML fails. Test::Harness OK.
+
+% ./Build test
+t/Devel-Caller....ok                                                         
+        26/72 unexpectedly succeeded
+TODO PASSED tests 12-14, 44-66
+
+All tests successful (26 subtests UNEXPECTEDLY SUCCEEDED).
+Passed TODO      Stat Wstat TODOs Pass  List of Passed
+-------------------------------------------------------------------------------
+t/Devel-Caller.t               26   26  12-14 44-66
+Files=1, Tests=72,  0 wallclock secs ( 0.07 cusr +  0.03 csys =  0.10 CPU)
+
+       Arrrrgrrrr, I misread this as a fail in my previous look at the terminal.
+
+       18554:
+
+       PadWalker passes its tests but D:C dumps core
+
+       18037:
+
+       PadWalker fails the two tests mentioned above and I force the install.
+       Devel::Caller passes its tests.
+
+       18300:
+
+       PadWalker is installed, so must have passed its test. D:C has its SEGV.
+
+       18150:
+
+       Padwalker fails as above. force install. D:C SEGV.
+
+       18078:
+       
+       Padwalker fails as above. force install. D:C SEGV.
+
+       18057:
+       
+       Padwalker fails as above. force install. D:C SEGV.
+
+       18048:
+
+       Padwalker fails as above. force install. D:C SEGV.
+
+       18047: no SEGV
+
+2007-10-27  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Net-Daemon's recent FAILS under threads seems to be due to the way the
+       old Thread.pm has now become a compatibility layer. Its t/thread.t tests
+
+if (!eval { require Thread; my $t = Thread->new(sub { }) }) {
+    print "1..0\n";
+    exit 0;
+}
+
+       The compat layer seems to have started working between 30910 and 32032:
+
+% for p in `binsearchaperl --show-cache  --bounds 27048-33000 --apcdir /home/src/perl/repoperls/APC --prefix /home/src/perl/repoperls/installed-perls --cachefilter tests/filter-threaded.pl `; do
+$p -MThread -e 'print substr($^X,64), ": ", eval{Thread->new(sub { })} ? "" : "not ", "ok\n"'
+done 2>/dev/null
+@27048/bin/perl: ok
+@29353/bin/perl: not ok
+@30910/bin/perl: not ok
+@31500/bin/perl: ok
+@32032/bin/perl: ok
+@32174/bin/perl: ok
+@32186/bin/perl: ok
+@32194/bin/perl: ok
+@32195/bin/perl: ok
+
+       but probably not good enough to run the whole code in t/thread.t.
+
+       I would guess that somewhere between 27048 and 29353 the compatibility
+       layer broke heavily and somewhere between 30910 and 31500 they
+       fixed it a bit. 30955 was the last change to Thread.pm. The fix for our
+       minimal testcase came a bit before that:
+
+----Program----
+require Thread;
+print eval{Thread->new(sub { })} ? "ok\n" : "not ok\n";
+
+----Output of .../pCY4xFO/perl-5.8.0@30952/bin/perl----
+not ok
+
+----EOF ($?='0')----
+----Output of .../pQ8RfLX/perl-5.8.0@30953/bin/perl----
+ok
+Perl exited with active threads:
+        1 running and unjoined
+        0 finished and unjoined
+        0 running and detached
+
+----EOF ($?='0')----
+
+----Program----
+require Thread;
+print eval{Thread->new(sub { })} ? "ok\n" : "not ok\n";
+
+----Output of .../ppYBvaY/perl-5.8.0@27704/bin/perl----
+ok
+A thread exited while 2 threads were running.
+
+----EOF ($?='0')----
+----Output of .../pBY7a0s/perl-5.8.0@27705/bin/perl----
+not ok
+
+----EOF ($?='0')----
+
+       Running a Net::Daemon 0.43 comare between 30952 and 53 shows the
+       equivalent result. Now let's see for Devel-Caller and Sub-Multi.
+       Devel-Caller needs a separate investigation (fails on both 3095[23]).
+       Now I discover the dependency chain of Sub-Multi. I see that
+       Devel::LexAlias depends on Devel-Caller. And Data::Bind depends on
+       Devel::LexAlias and Sub::Multi depends on Data::Bind. So Sub::Multi can
+       be dropped from further investigation.
+
+       Note that we have not yet looked which construct it is that breaks in
+       the test. So it might be interesting to look if 27704 was still ok. Yes,
+       it passes all tests and does not skip the t/thread.t.
+
+       BBC article is posted.
+
+       * /tmp again
+
+       30297 HTML-Display                            Cleaning up /tmp directory
+
+2007-10-26  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * mod_perl also broke recently. Between 32090 and 32101. And it suddenly
+       worked again in 32192 which was a nothreads nodebugging build without
+       relocatable inc. nothing obvious, of course.
+
+       I made a autobundle for 32085. And 32108. The diffs are huge.
+
+       /home/sand/.cpan/Bundle/Snapshot_2007_10_26_0[01].pm
+
+       Nono, that's something entirely different. The test server cannot be
+       started and nothing's there that would tell me an error message. I have
+       already cited the error message below but I repeat
+
+/home/src/www/apache/apache/apache_1.3.37/src/httpd -f `pwd`/t/conf/httpd.conf -X -d `pwd`/t &
+httpd listening on port 8529
+will write error_log to: t/logs/error_log
+letting apache warm up...\c
+[Sat Oct 27 13:24:44 2007] [error] Can't locate lib.pm in @INC (@INC contains: /home/src/www/apache/apache/apache_1.3.37/lib/5.10.0/i686-linux-thread-multi-64int /home/src/www/apache/apache/apache_1.3.37/lib/5.10.0 /home/src/www/apache/apache/apache_1.3.37/lib/site_perl/5.10.0/i686-linux-thread-multi-64int /home/src/www/apache/apache/apache_1.3.37/lib/site_perl/5.10.0 /home/sand/.cpan/build/mod_perl-1.30-zALo0v/t/ /home/sand/.cpan/build/mod_perl-1.30-zALo0v/t/lib/perl) at /home/sand/.cpan/build/mod_perl-1.30-zALo0v/t//docs/startup.pl line 8.\nBEGIN failed--compilation aborted at /home/sand/.cpan/build/mod_perl-1.30-zALo0v/t//docs/startup.pl line 8.\nCompilation failed in require at (eval 2) line 1.\n
+Syntax error on line 62 of /home/sand/.cpan/build/mod_perl-1.30-zALo0v/t/conf/httpd.conf:
+Can't locate lib.pm in @INC (@INC contains: /home/src/www/apache/apache/apache_1.3.37/lib/5.10.0/i686-linux-thread-multi-64int /home/src/www/apache/apache/apache_1.3.37/lib/5.10.0 /home/src/www/apache/apache/apache_1.3.37/lib/site_perl/5.10.0/i686-linux-thread-multi-64int /home/src/www/apache/apache/apache_1.3.37/lib/site_perl/5.10.0 /home/sand/.cpan/build/mod_perl-1.30-zALo0v/t/ /home/sand/.cpan/build/mod_perl-1.30-zALo0v/t/lib/perl) at /home/sand/.cpan/build/mod_perl-1.30-zALo0v/t//docs/startup.pl line 8.
+BEGIN failed--compilation aborted at /home/sand/.cpan/build/mod_perl-1.30-zALo0v/t//docs/startup.pl line 8.
+Compilation failed in require at (eval 2) line 1.
+
+done
+
+       I found the lib.pm that should be found at
+       /home/src/perl/repoperls/installed-perls/perl/pFAmPwI/perl-5.8.0@32085/lib/5.10.0/i686-linux-64int
+       and indeed this is missing in the above list.
+
+       Maybe it is because of relocateableinc? Not directly, of course, because
+       we have had it working for 32085 and do not have it working for 32085
+       now. So to compare autobundles we would first need a perl that currently
+       correctly builds and tests mod_perl.
+
+       32059 nowadays has the same problem. 32032 ditto. I untar the apache
+       tarball once again and retry with 32032. Same result. 32009 was built on
+       Oct 3 and I want to see the logs really, really exactly as they were.
+       And what do I find? The same results but at that time CPAN::Reporter
+       reported OK although so many tests were not run. A very interesting
+       discovery. Probably this is just thanks to Test::Harness 2.99 now
+       popping up?
+
+       I'll now skip back in time and visit 31824 (if possible). It was the
+       first perl I built with relocateableinc and it reported OK on mod_perl.
+       Of course it also has the same bug with mod_perl 1.30. CPAN::Reporter
+       reports (and reported on 2007-09-09) UNKNOWN in this case. But it got
+       installed and make install was OK, so I did not discover the bug.
+
+       Next stop in our time travel shall bring us to 31790 (2007-09-05T01:07).
+       It was the last perl without relocateableinc. And all tests run and
+       pass. Cheerio!
+
+       http://rt.cpan.org/Ticket/Display.html?id=30300
+
+       * 32194 came with change profile:
+
+new fails
+    PERIGRIN/JSON-Any-1.12.tar.gz[255], UNOBE/WWW-Facebook-API-v0.4.7.tar.gz[256], MNOONING/Net-Daemon/Net-Daemon-0.43.tar.gz[465], TBONE/Net-FTP-Common-6.0.tar.gz[756], MNOONING/PlRPC/PlRPC-0.2020.tar.gz[768], RCLAMP/Devel-Caller-0.11.tar.gz[787], RCLAMP/Devel-LexAlias-0.04.tar.gz[788], CLKAO/Data-Bind-0.28.tar.gz[789], CTHOM/Net-Twitter-1.06.tar.gz[808], MWS/ResourcePool-1.0104.tar.gz[856], RICKM/Net-Jaiku-0.0501.tgz[1089], CLKAO/Sub-Multi-0.003.tar.gz[1100], FGLOCK/v6-0.020.tar.gz[1102], RCAPUTO/Lexical-Persistence-0.97.tar.gz[1124], VPIT/Variable-Magic-0.04.tar.gz[1165], NUFFIN/Tie-RefHash-Weak-0.07.tar.gz[1168], NUFFIN/Devel-Events-Objects-0.03.tar.gz[1169], MSCHILLI/CPAN-Unwind-0.05.tar.gz[1207]
+gone
+    LARSLUND/PDF-Reuse-Barcode-0.05.tar.gz, RONAN/SVG-Template-Graph-0.13.tar.gz, WRW/Barcode-Code128-2.01.tar.gz
+
+       * possible todos:
+
+       - list all perlconfigs for the few succeeding Date-Simple
+
+       - pick any of the others in the contingency table summary and make a
+       filtered binary search into the past.
+
+2007-10-25  Andreas J. Koenig  <andreas.koenig.7os6VVqR@franz.ak.mind.de>
+
+       * Todo: NOG/AFS-2.4.0 look how the indexer fails DONE
+
+       * Summary of recent builds only watching 8 pieces:
+       VKON/Tcl-0.95.tar.gz
+       MLEHMANN/Coro-4.{11,13}.tar.gz
+       MNOONING/Net-Daemon/Net-Daemon-0.43.tar.gz
+       RCLAMP/Devel-Caller-0.11.tar.gz
+       
+     useithreads                no threads
+       +--------------------------+--------------------------+
+       |  bleadperl@32186,32195   |  bleadperl@32181,32198