On Sat, May 19, 2012 at 04:25:23PM -0700, David Oswald wrote: > I had a conscientious user of one of my modules send in a report > which, after investigation, has led me here. > > The module Digest::MD5 was added to the Perl core distribution in Perl > 5.8.0. That means that users committed to pre-5.8.0 versions of Perl > will have to install Digest::MD5 if they need it. However, as of > version 2.51, Digest::MD5 is no longer backward compatible with Perls > earlier than 5.8.1. This isn't such a big deal for a user of 5.8.0, > since it came with an older version of Digest::MD5. But users of Perl > versions earlier than 5.8.0 are forced to explicitly install an old > Digest::MD5 version (2.40 or earlier). > > The various CPAN installers (cpan, cpanm, cpanp) default to pulling in > the most recent version of any module, and in the case of Digest::MD5, > this means that the default behavior is to pull in a version that > won't build on Perl's earlier than 5.8.1. > > My user had an issue when trying to install one of my modules on Perl > 5.6.x. My module has a dependency that itself has a dependency on > Digest::MD5. My module claims to support Perl 5.6.x, which it does > *if* the user explicitly installs an older version of Digest::MD5 > first. Ideally this should be handled automatically... and even > better would be if Digest::MD5 could be brought back to a state of > backward compatibility. > > The user who reported the issue did some investigative work and had > this to say: > "...Digest::MD5 fails testing because it is using utf8::is_utf8 > without checking > the version (this was added in 5.8.1)." > > I noticed that on the RT for the CPAN version of Digest::MD5 there are > two patches that others have submitted that are intended to address > this issue. I haven't reviewed whether these patches would be > effective or practical. > > > In the specific case of my user, the user was trying to install > Math::Prime::FastSieve, which has an Inline::CPP dependency, which has > an Inline dependency, which has a Digest::MD5 dependency. The user > was trying to install on Perl 5.6.1. > > I guess my question is "What has to happen next?" :) >
I discovered this last year and made CPANPLUS (which supports v5.6.x) to use Digest::SHA instead. Changes for 0.90_12 Sun Feb 6 19:48:49 2011 ================================================ * Remove more trailing whitespace spotted by Nicholas Clark with patch to fix, RT #64976 * Added META.json and MYMETA.json support. Requires a more recent Parse::CPAN::Meta * Switch to Digest::SHA and SHA256 checksums instead of Digest::MD5 and MD5, which has dropped v5.6.x support. I did have the luxury that PAUSE produces both MD5 and SHA256 checksums. Cheers, -- Chris Williams aka BinGOs PGP ID 0x4658671F http://www.gumbynet.org.uk ==========================
pgpSyoxmukuMi.pgp
Description: PGP signature