morelenmir has asked for the wisdom of the Perl Monks concerning the following question:

I recently got well rid of the closed source ActiveState release of perl for the reassuringly open StrawberryPerl version. One of the things I prefer is the excellent CLI CPAN client to download/upgrade any modules you are interested in. In my opinion this is hugely superior to the GUI thing in the ActiveState distribution - not least because it gives access to every module on CPAN.

However, I have been running in to some issues when I try to upgrade the modules I have already installed. After starting the CPAN client, I type for instance:

upgrade

and all seems to go well at first. Several modules are downloaded, compiled and replace their earlier versions. However, in my specific case errors start to appear when the automatic 'make test' is run on Compress::BZip2. The actual returns are too copious to reproduce here in entirety, but the following line is typical:

Malformed UTF-8 character (unexpected end of string) in read at t/026-compfile.t line 32.

and the overall summary:

Files=31, Tests=569, 13 wallclock secs (0.20 usr + 0.06 sys = 0.27 CPU)
Result: FAIL
Failed 11/31 test programs. 13/569 subtests failed.

This is only one of several modules that fail in the same way.

Going from the data I guess there is a unicode/1252 translation issue and something to do with a module that was written for a UNIX environment not enjoying the Windows world. The specifics do not matter - I am more than willing for a few modules to prove incompatible in return for access to the whole CPAN archive. However, what IS annoying is that any single module that fails to compile stops the whole upgrade progress. Is there any way around this happening?

"Aure Entuluva!" - Hurin Thalion at the Nirnaeth Arnoediad.

Replies are listed 'Best First'.
Re: CPAN client upgrade issues ( keep upgrading if some modules fail tests, cpan-outdated -p | cpanm )( cpan[1]> force notest upgrade )
by Anonymous Monk on Jan 10, 2014 at 01:10 UTC

    Going from the data I guess there is a unicode/1252 translation issue and something to do with a module that was written for a UNIX environment not enjoying the Windows world.

    Nope, not a chance

    The specifics do not matter - I am more than willing for a few modules to prove incompatible in return for access to the whole CPAN archive.

    Cool, lets not speak of them again :)

    However, what IS annoying is that any single module that fails to compile stops the whole upgrade progress. Is there any way around this happening?

    Sure,

    cpan-outdated | xargs cpan -i

    cpan-outdated | cpanm

    cpan-outdated -p | cpanm

    You can also skip tests and force installs, works for install Module , so would probably work for upgrade (not gonna try it)

    cpan[2]> force notest upgrade

      I can't upvote you anonymous_monk - but I would if I could! WERE we to speak of it again, what do you think is causing the UTF issue?
      "Aure Entuluva!" - Hurin Thalion at the Nirnaeth Arnoediad.

        WERE we to speak of it again, what do you think is causing the UTF issue?

        Funky defaults/envvars which like LANG and LC_ALL and perl specific ones like PERLIO , PERL5OPT which would be shown by perl -V