Replacing Digest::SHA1 with Digest::SHA and removal of libdigest-sha1-perl package

Why

Most of the functionality (except sha1_transform) of Digest::SHA1 is also provided by Digest::SHA. Switching from Digest::SHA1 to Digest::SHA should be in principle as easy as substituting the use of Digest::SHA1 with Digest::SHA.

Digest::SHA is in Perl core since version 5.9.3 and thus is in Debian's perl since Lenny.

Changing use of Digest::SHA1 to Digest::SHA would thus reduce external dependencies by one.

Packages using Digest::SHA instead of Digest::SHA1 can then drop the (Build-)Depends(-Indep) on libdigest-sha1-perl.

How

  1. Investigate the Debian Perl Group packages, and forward patches to upstream authors.
  2. After patches for the Perl modules are sent upstream announce 594273 on debian-devel for possible MBF and help out where possible to fix the packages (severity wishlist or normal).

  3. Add lintian check for obsolete libdigest-sha1-perl dependency?

Contacting Upstream for Perl modules

You can use something like the following to contact upstream (in this case with patch added):

Hi                                                
                                                                   
Attached patch changes the module to use Digest::SHA instead of
Digest::SHA1. Digest::SHA is part of the standard perl distribution
since perl v5.9.3 so this reduces the number of external
dependencies by one.
         
Please consider applying it for the next release.
                                                                             
Regards,                         

Submitting to Debian BTS

When submitting bugs to the Debian Bugtracker the following user and usertag may be used:

User: debian-perl@lists.debian.org
Usertags: digest-sha-perl-transition 

Status: http://bugs.debian.org/cgi-bin/pkgreport.cgi?users=debian-perl@lists.debian.org;tag=digest-sha-perl-transition

Status

Legend

(./)

Transitioned/OK

<!>

Has issues

{X}

Unfixed / Needs upload

{i}

Reported (bugreport, patch, forwarded...)

(!)

Pending

Package

State Upstream

State Debian

apt-cacher

{i}

{i} 624568

barnowl

{X}

{X}

gnupod-tools

{X}

{X}

ikiwiki-hosting-web

(./)

(./) 623957

interchange

{X}

{X}

kgb-client

{i}

{i}

libapache-htpasswd-perl

{i} RT#60267

{X}

libauthen-passphrase-perl

{i} RT#59917

{X}

libbloom-filter-perl

{i} RT#67716

{X}

libcache-cache-perl

{i} RT#67717

{X}

libcache-perl

{X}

{X}

libcgi-application-plugin-authentication-perl

{X}

{X}

libcrypt-hcesha-perl

{X}

{X}

libcrypt-mysql-perl

{i} RT#59918

{X}

libcrypt-openssl-dsa-perl

{i} RT#60271

{X}

libdata-serializer-perl

{X}

{X}

libdbix-class-cursor-cached-perl

{X}

{X}

libdigest-hmac-perl

{X}

{X}

libimdb-film-perl

{X}

{X}

libmoosex-storage-perl

{X}

{X}

libnet-dns-sec-perl

{i} RT#60269

{X}

libnet-epp-perl

{X}

{X}

libnet-oauth-perl

{X}

{X}

libnet-openid-consumer-perl

{X}

{X}

libnet-openid-server-perl

{X}

{X}

libnet-snmp-perl

{X}

{X}

libnet-xmpp-perl

{X}

{X}

libpar-perl

(./)

(./) r73482

libperl5i-perl

{X}

{X}

libpoe-component-jabber-perl

{X}

{X}

librdf-query-perl

{X}

{X}

librdf-trine-perl

{X}

{X}

libsql-translator-perl

{X}

{X}

libuuid-tiny-perl

{X}

{X}

libxml-atom-perl

{i} RT#60263

{X}

mimedefang

{X}

{X}

postgrey

(!) upcoming release by upstream

{X}

razor

{X}

{X}

smbldap-tools

{X}

{i} 624065

spamassassin

{X}

{X}

sqlfairy

{X}

{X}

syslinux-common

{X}

{X}

vclt-tools

{X}

{X}