Skip Menu |

This queue is for tickets about the Digest-SHA CPAN distribution.

Report information
The Basics
Id: 123628
Status: rejected
Priority: 0/
Queue: Digest-SHA

People
Owner: Nobody in particular
Requestors: atoomic [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: (no value)



Subject: Switch Digest::SHA to XSLoader
p5p has recently switched all CORE modules to XSLoader for performance reasons during the 5.27 development cycle. This case is about switching Digest::SHA CPAN module. Note, XSLoader is a problem for Perl versions earlier than 5.6, which at this point can get alternate support, as mentioned in the upstream case. Upstream-Case: RT #132080 Upstream-URL: https://rt.perl.org/SelfService/Display.html?id=132080
Subject: 0001-Switch-Digest-SHA-to-XSLoader.patch
From f8893032a631cdbe8192acb4120d6a98534ea94f Mon Sep 17 00:00:00 2001 From: Nicolas Rochelemagne <rochelemagne@cpanel.net> Date: Tue, 14 Nov 2017 09:58:48 -0600 Subject: [PATCH] Switch Digest::SHA to XSLoader p5p has recently switched all CORE modules to XSLoader for performance reasons during the 5.27 development cycle. This case is about switching Digest::SHA CPAN module. Note, XSLoader is a problem for Perl versions earlier than 5.6, which at this point can get alternate support, as mentioned in the upstream case. Upstream-Case: RT #132080 Upstream-URL: https://rt.perl.org/SelfService/Display.html?id=132080 --- lib/Digest/SHA.pm | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/lib/Digest/SHA.pm b/lib/Digest/SHA.pm index 6a60926..432a42a 100644 --- a/lib/Digest/SHA.pm +++ b/lib/Digest/SHA.pm @@ -11,8 +11,10 @@ use integer; $VERSION = '5.98'; require Exporter; -require DynaLoader; -@ISA = qw(Exporter DynaLoader); + +use XSLoader (); + +@ISA = qw(Exporter); @EXPORT_OK = qw( hmac_sha1 hmac_sha1_base64 hmac_sha1_hex hmac_sha224 hmac_sha224_base64 hmac_sha224_hex @@ -236,7 +238,7 @@ sub load { $class->putstate($str); } -Digest::SHA->bootstrap($VERSION); +XSLoader::load( 'Digest::SHA', $VERSION ); 1; __END__ -- 2.13.6 (Apple Git-96)
A LARGE number--though not the majority--of Digest::SHA users run the module on legacy platforms. I refuse to orphan them for no compelling reason. Any person who claims that pre-5.6 Perl is irrelevant may indeed lead a charmed and glamorous life, but it's a sheltered one. Programmers forced to work on legacy platforms do so largely from necessity, not by choice. If the Perl microcosm thinks that these programmers no longer matter, then I suggest we're in the throes of groupthink. Of course the people WE know don't use antiquated Perls. But let's keep the limitations of our collective experience and cognitive reach in mind before conducting ourselves with such unseemly haste. Regards, Mark
From: atoomic [...] cpan.org
I understand your point of view. Just to be sure that you are aware that we are talking here about Perl version earlier than 5.6.... FYI the toolchain tools consider 5.8.1 as being the minimal supported Perl version. Customer using Perl 4 to 5.4, still have the possibility to use a previous version of Digest::SHA and backpan is designed for them. sincerely nicolas On Tue Nov 14 14:31:14 2017, MSHELOR wrote: Show quoted text
> A LARGE number--though not the majority--of Digest::SHA users run the > module on legacy platforms. I refuse to orphan them for no compelling > reason. > > Any person who claims that pre-5.6 Perl is irrelevant may indeed lead > a charmed and glamorous life, but it's a sheltered one. Programmers > forced to work on legacy platforms do so largely from necessity, not > by choice. If the Perl microcosm thinks that these programmers no > longer matter, then I suggest we're in the throes of groupthink. > > Of course the people WE know don't use antiquated Perls. But let's > keep the limitations of our collective experience and cognitive reach > in mind before conducting ourselves with such unseemly haste. > > Regards, Mark
On Tue Nov 14 14:55:54 2017, atoomic@cpan.org wrote: Show quoted text
> I understand your point of view. > > Just to be sure that you are aware that we are talking here about Perl > version earlier than 5.6.... FYI the toolchain tools consider 5.8.1 > as being the minimal supported Perl version. > > Customer using Perl 4 to 5.4, still have the possibility to use a > previous version of Digest::SHA and backpan is designed for them. > > sincerely > nicolas
Digest::SHA has a broad community of users, each with their own disparate interests and concerns. A group of Perl 5.3 programmers, in particular, has been remarkably helpful over the years with thoughtful, practical observations and recommendations. They are largely responsible for--and the beneficiaries of--some of the latest improvements to the module. Consequently I do not relegate these users to old versions of the module, resident in some backwater. Rather they have guaranteed access to the freshest ideas available, a choice not normally open to users on legacy platforms. This helps to bring back a lot of the thrill and sense of accomplishment with open source development. Nonetheless I'm sensitive to the important improvements made to Perl over the years. For example I "use warnings" explicitly in all modules, and then have MakeMaker.PL amend them appropriately for Perls earlier than 5.6. Usually it's a bit easier than that to accommodate "improvements" while not breaking support for earlier versions. The goal is to run everywhere, correctly, and efficiently. Mark
From: atoomic [...] cpan.org
Thanks for your clear answer on this topic, let's close this ticket. nicolas On Tue Nov 14 15:58:26 2017, MSHELOR wrote: Show quoted text
> On Tue Nov 14 14:55:54 2017, atoomic@cpan.org wrote:
> > I understand your point of view. > > > > Just to be sure that you are aware that we are talking here about > > Perl > > version earlier than 5.6.... FYI the toolchain tools consider 5.8.1 > > as being the minimal supported Perl version. > > > > Customer using Perl 4 to 5.4, still have the possibility to use a > > previous version of Digest::SHA and backpan is designed for them. > > > > sincerely > > nicolas
> > Digest::SHA has a broad community of users, each with their own > disparate interests and concerns. A group of Perl 5.3 programmers, in > particular, has been remarkably helpful over the years with > thoughtful, practical observations and recommendations. They are > largely responsible for--and the beneficiaries of--some of the latest > improvements to the module. > > Consequently I do not relegate these users to old versions of the > module, resident in some backwater. Rather they have guaranteed > access to the freshest ideas available, a choice not normally open to > users on legacy platforms. This helps to bring back a lot of the > thrill and sense of accomplishment with open source development. > > Nonetheless I'm sensitive to the important improvements made to Perl > over the years. For example I "use warnings" explicitly in all > modules, and then have MakeMaker.PL amend them appropriately for Perls > earlier than 5.6. Usually it's a bit easier than that to accommodate > "improvements" while not breaking support for earlier versions. > > The goal is to run everywhere, correctly, and efficiently. > > Mark
Per your suggestion. Mark