Version 6.09 of Perl library Devel-NYTProf 
<https://metacpan.org/pod/Devel::NYTProf> was released to CPAN on May 2 
2021.

This release follows on the heels of two other recent releases, 6.07 (April 
6) and 6.08 (April 27) -- but 6.09 is the version you should prefer.

The impetus for these new releases was a one-line change 
<https://github.com/Perl/perl5/commit/dd07b88184b> in the development 
branch ("blead") in the Perl 5 core distribution in October 2020. The 
Exporter library was modified to run with use strict;. Devel::NYTProf uses 
Exporter, of course. It appears that the call to use strict; alters the 
number of statements which NYTProf executes. This in turn means that the 
results of running it on a given perl program change ever so slightly -- 
and not really to any practical level of significance.

But what if the "given perl program" is a file in Devel-NYTProf's own test 
suite? Suddenly NYTProf's test suite starts to experience failures when run 
against versions of perl at or above 5.33.3 -- which includes production 
version 5.34.0 to be released (hopefully) later this month. From the point 
of view of the maintainers of the Perl 5 core distribution ("Perl 5 
Porters"), this becomes a "Blead Breaks CPAN" (BBC) blocker 
<https://github.com/Perl/perl5/issues/18215> to that production release. 
This problem was subsequently reported to Devel-NYTProf's bug queue as 
https://github.com/timbunce/devel-nytprof/issues/143.

One role that I play for Perl 5 Porters is to keep track of the status of 
BBC tickets, so I became interested in seeing whether NYTProf could be 
repaired. Those repairs were reflected in the 6.07 release where, to 
over-simplify, one file in the test suite was cloned and the data used in 
the clone was then modified to reflect the expectation of those use strict; 
calls within Exporter. Once the test suite was PASSing on a combination of 
Linux (Travis configurations and my own machines), Windows (an AppVeyor 
configuration), FreeBSD and OpenBSD, I got the okay from Tim Bunce to 
become a Devel-NYTProf maintainer and do the release to CPAN.

The subsequent 6.08 release attempted to increase the coverage which 
NYTProf's test suite provides to the codebase in lib/. Those increases were 
achieved, but there were quite a few FAILs among CPANtesters reports. Most 
of those failures came from testing rigs where perl was compiled with 
-Duselongdouble or where certain features of zlib were not found.

The most recent release, 6.09, works around those problems, but (as Tim 
Bunce has acknowledged 
<https://github.com/timbunce/devel-nytprof/issues/143#issuecomment-705732000>) 
NYTProf's test suite is hypersensitive to changes in perl as well as 
variations in the vast number of perl configurations out there in the wild. 
Changes in the environment in which NYTProf runs tend to produce *false 
negatives* in its test suite in abundance.

Going forward, we'll have to figure out a way to reduce this testing 
hypersensitivity, but we should do that in the context of figuring out how 
to maintain and improve Devel-NYTProf over the long run. We can use this 
mailing list as a venue to discuss those developments.

Thank you very much. 
Jim Keenan

-- 
-- 
You've received this message because you are subscribed to
the Devel::NYTProf Development User group.

Group hosted at:  http://groups.google.com/group/develnytprof-dev
Project hosted at:  http://perl-devel-nytprof.googlecode.com
CPAN distribution:  http://search.cpan.org/dist/Devel-NYTProf

To post, email:  [email protected]
To unsubscribe, email:  [email protected]
--- 
You received this message because you are subscribed to the Google Groups 
"Devel::NYTProf Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/develnytprof-dev/d3445766-bc20-4c83-91d7-dc997ff76a98n%40googlegroups.com.

Reply via email to