Blog:
http://blogs.perl.org/users/sawyer_x/2016/01/perl-5-porters-mailing-list-summary-december-28th---january-3rd.html
Twitter: https://twitter.com/perl5summaries/status/686602777108299776
January 4th-10th
Corrections
Last week's summary accidentally noted discouraging the use of
*glob{FORMAT]. It was actually the use of *glob{FILEHANDLE}. Thanks to
H.Merijn Brand for the correction and my apology for the mistake.
News and updates
The biggest news of the week were the reworked context stack system Dave
Mitchell had been working on. Read more under Discussion.
Tony Cook provided the [1]8th and [2]9th reports of his sixth running
grant. Over 34 hours in total with 22 tickets reviewed or worked on,
and 4
patches applied.
Tony also provides a more detailed [3]report of his grant work - a great
read.
Dave Mitchell provided [4]more [5]reports on his grant work.
Karl Williamson [6]updates the list on feedback request from the Unicode
Technical Committee on pending additions to the draft repertoire of
characters.
Karl Williamson [7]applied his proposed text for [8]utf8.
Karl Williamson [9]provides details on the tailored implementation of
qr/\b{wb}/, now committed.
Karen Etheridge updated [10]podlators in blead to 4.04.
The release of [11]podlators 4.04 accidentally changed the generation of
the scripts shebang line on Windows. Craig A. Berry noticed, notified
Russ
Allbery, and Russ will revert those changes.
Ricardo Signes will [12]delete all RC versions of perl from his CPAN
directory. They will remain available on the BACKPAN mirrors.
Bugs
Reported bugs
* [13]Perl #127149: A local PerlIO::encoding::fallback setting +
encoding causes an infinite loop.
* [14]Perl #127189: [15]B::Deparse doesn't emit /n regex flag.
* [16]Perl #127182: One digit short to correctly stringify a double
* [17]Perl #127183: Non-canonical hexadecimal floats are parsed
prematurely.
* [18]Perl #127231: Bleadperl breaks [19]App::JobLog.
* [20]Perl #127212: ABI incompatibilities with -DDEBUGGING vs. without,
caused by memory_debug_header.
* [21]Perl #127232: Segmentation fault with [22]Storable.
Resolved bugs
* [23]Perl #126845: Perl_newATTRSUB_x: Assertion block failed.
* [24]Perl #127131: In Configure: libswanted=nm suddenly harmful.
* [25]Perl #126847: Use the new fdclose(3) function in FreeBSD.
* [26]Perl #127080: Perldoc for waitpid missing description for
argument
value -1.
* [27]Perl #126877: Improve build performance on Win32 substantially by
using a real getcwd.
* [28]Perl #126042: Segmentation fault in Perl_pp_multiply (and other
functions).
* [29]Perl #126922: crypt uses uninit/unalloced/freed memory as salt.
* [30]Perl #127189: [31]B::Deparse doesn't emit /n regex flag.
* [32]Perl #126240: Panic happening after freeing the env after a fork.
* [33]Perl #126633: Bleadperl breaks [34]ddb.
* [35]Perl #123737: S_no_op assertion failure.
* [36]Perl #123788: Unloading [37]Mouse class crashes Perl on 32-bit
MSWin32.
* [38]Perl #126862: XS [39]File::Spec's canonpath loses taint.
(CVE-2015-8607)
* [40]Perl #126755: OOB access in [41]VDir::MapPathW (Win32-specific).
(CVE-2015-8608)
Proposed patches
Tony Cook provided a patch in [42]Perl #127063 for a warning generated by
setting $[ to zero.
Tony also provided a patch in [43]Perl #127122 for making sure unless
( $a
= 2 ) issues a warning just like if ($a = 2) does.
Yet another patch from Tony in [44]Perl #126991 for integer overflow in
line number tracking reported by caller().
Tony tried a different approach (with a suggestion from Karl Williamson)
to handle a VC 2003 crash in [45]Perl #126045.
Douglas Bell provided a Github [46]Pull Request for [47]Perl #127028.
Tom Hukins provided a (now merged) patch in [48]Perl #127229 for fixing
module paths in INSTALL.
Niko Tyni provided a patch in [49]Perl #127234 to fix a Configure escape
when usecrosscompile is used but there is no targethost.
Discussion
Dave Mitchell has [50]reworked the context stack system to allow some
subroutines to be much faster now. It breaks several CPAN modules
(notably
[51]Scope::Upper) but there seems to be possible fixes in place.
Tony Cook writes in [52]Perl #127054 (Bleadperl breaking
[53]Test::MemoryGrowth) that he is seeing inconsistent behavior if the
test is run using perl or using make test and adds some details on how he
ran checks and what he found. Tony was not able to find the cause yet.
Dan Kogai discovered an interesting problem (and opened [54]Perl #127182)
with having one digit short to correctly stringify a double. Dan then
provided outputs from several languages, showing which also get it wrong
(Rakudo Perl 6, PHP 5, Python 2, and Swift) and which get it right (Go,
Haskell, Node.js, Python 3, and Ruby). Craig A. Berry added that changing
it to 18 fixes a loss of precision he had on FreeBSD, and Zefram linked
this issue to [55]Perl #41202.
Karl Williamson [56]suggested not generating EBCDIC non-1047 tables,
since
there seems to be no user of those. This will save time when regenerating
and the Perl distribution size will decrease. Ze'ev Atlas (maintainer of
PCRE for z/OS) provides different experience.
Steve Hay [57]tried to update [58]Pod::Checker, but since it is now
derived from [59]Pod::Simple instead of [60]Pod::Parser, there is a
failing test that requires additional work. Karl Williamson added that he
will work on the changes necessary when time permits, as it is not urgent
for Perl 5.24.
Bulk88 [61]emailed the list about an idea he has for a new threaded
memory
allocator for Win32 perl.
An [62]email was sent asking about a "secure" version of perl,
without any
FS access.
Ricardo Signes [63]asks for help on making the release of [64]PathTools
simpler, since it carries its own ppport.h file.
References
1. http://www.nntp.perl.org/group/perl.perl5.porters/233644
2. http://www.nntp.perl.org/group/perl.perl5.porters/233653
3. http://www.nntp.perl.org/group/perl.perl5.porters/233687
4. http://www.nntp.perl.org/group/perl.perl5.porters/233674
5. http://www.nntp.perl.org/group/perl.perl5.porters/233675
6. http://www.nntp.perl.org/group/perl.perl5.porters/233649
7. http://www.nntp.perl.org/group/perl.perl5.porters/233684
8. https://metacpan.org/pod/utf8
9. http://www.nntp.perl.org/group/perl.perl5.porters/233699
10. https://metacpan.org/release/podlators
11. https://metacpan.org/release/podlators
12. http://www.nntp.perl.org/group/perl.perl5.porters/233715
13. https://rt.perl.org/Ticket/Display.html?id=127149
14. https://rt.perl.org/Ticket/Display.html?id=127189
15. https://metacpan.org/pod/B::Deparse
16. https://rt.perl.org/Ticket/Display.html?id=127182
17. https://rt.perl.org/Ticket/Display.html?id=127183
18. https://rt.perl.org/Ticket/Display.html?id=127231
19. https://metacpan.org/pod/App::JobLog
20. https://rt.perl.org/Ticket/Display.html?id=127212
21. https://rt.perl.org/Ticket/Display.html?id=127232
22. https://metacpan.org/pod/Storable
23. https://rt.perl.org/Ticket/Display.html?id=126845
24. https://rt.perl.org/Ticket/Display.html?id=127131
25. https://rt.perl.org/Ticket/Display.html?id=126847
26. https://rt.perl.org/Ticket/Display.html?id=127080
27. https://rt.perl.org/Ticket/Display.html?id=126877
28. https://rt.perl.org/Ticket/Display.html?id=126042
29. https://rt.perl.org/Ticket/Display.html?id=126922
30. https://rt.perl.org/Ticket/Display.html?id=127189
31. https://metacpan.org/pod/B::Deparse
32. https://rt.perl.org/Ticket/Display.html?id=126240
33. https://rt.perl.org/Ticket/Display.html?id=126633
34. https://metacpan.org/pod/ddb
35. https://rt.perl.org/Ticket/Display.html?id=123737
36. https://rt.perl.org/Ticket/Display.html?id=123788
37. https://metacpan.org/pod/Mouse
38. https://rt.perl.org/Ticket/Display.html?id=126862
39. https://metacpan.org/pod/File::Spec
40. https://rt.perl.org/Ticket/Display.html?id=126755
41. https://metacpan.org/source/SHAY/perl-5.22.1/win32/vdir.h#L609
42. https://rt.perl.org/Ticket/Display.html?id=127063
43. https://rt.perl.org/Ticket/Display.html?id=127122
44. https://rt.perl.org/Ticket/Display.html?id=126991
45. https://rt.perl.org/Ticket/Display.html?id=126045
46. https://github.com/mrallen1/Pod-Perldoc/pull/22
47. https://rt.perl.org/Ticket/Display.html?id=127028
48. https://rt.perl.org/Ticket/Display.html?id=127229
49. https://rt.perl.org/Ticket/Display.html?id=127234
50. http://www.nntp.perl.org/group/perl.perl5.porters/233631
51. https://metacpan.org/pod/Scope::Upper
52. https://rt.perl.org/Ticket/Display.html?id=127054
53. https://metacpan.org/pod/Test::MemoryGrowth
54. https://rt.perl.org/Ticket/Display.html?id=127182
55. https://rt.perl.org/Ticket/Display.html?id=41202
56. http://www.nntp.perl.org/group/perl.perl5.porters/233663
57. http://www.nntp.perl.org/group/perl.perl5.porters/233695
58. https://metacpan.org/pod/Pod::Checker
59. https://metacpan.org/pod/Pod::Simple
60. https://metacpan.org/pod/Pod::Parser
61. http://www.nntp.perl.org/group/perl.perl5.porters/233685
62. http://www.nntp.perl.org/group/perl.perl5.porters/233726
63. http://www.nntp.perl.org/group/perl.perl5.porters/233737
64. https://metacpan.org/release/PathTools