It's been a while...
Blog:
http://blogs.perl.org/users/sawyer_x/2018/01/perl-5-porters-mailing-list-summary-december-11th---january-1st.html
Twitter: https://twitter.com/perl5summaries/status/948157119932530689
December 11th - January 1st
Happy holidays!
News and Updates
Perl 5.27.7 is [1]released!
The new smart match broke a considerable amount of CPAN modules and will
therefore be reverted.
Andreas Koenig [2]provided a patch to update [3]CPAN.pm to 2.20-TRIAL.
Dave Mitchell [4]suggested making PERL_OP_PARENT compulsory in 5.28.0.
This has since been done.
Karl Williamson [5]provided a new version of his implementation of script
runs.
Is it time to declare string- and number-specific bitwise ops fully
stable
and enable it in use v5.28? Check [6]Perl #123707.
Pip Cet [7]provided an explanation of how he uses the SpiderMonkey GC to
find memory leaks in Perl.
[8]podlators 4.10 is [9]out.
Grant Reports
* Dave Mitchell TPF Grant 10 [10]report 2.
* Dave Mitchell TPF Grant 10 [11]report 3.
* Zefram TPF Grant 2017 Week 50 [12]report.
* Zefram TPF Grant 2017 Week 51 [13]report.
* Zefram TPF Grant 2017 Week 52 [14]report.
* Zefram TPF Grant 2017 December [15]report.
Issues
New Issues
* [16]Perl #131990: Heap-buffer-over-flow in [17]Storable::retrieve
that
could lead to RCE.
* [18]Perl #131999: Heap-buffer-over-flow in Storable.xs: retrieve_hook
that could lead to RCE.
* [19]Perl #132544: heap-buffer-overflow in Perl_pp_reverse.
* [20]Perl #132545: Double macro argument evaluation in
S_init_main_stash.
* [21]Perl #132560: perl-5.24.3, wrong Configure test for IPC_STAT.
* [22]Perl #132561: miniperl segfault on blead (duplocale /
S_my_nl_langinfo).
* [23]Perl #132576: deprecate h2ph.
* [24]Perl #132577: BBC [25]Module::Install broken by
0301e899536a22752f40481d8a1d141b7a7dda82.
* [26]Perl #132578: BBC [27]List::MoreUtils::XS broken by
16ada235c332e017667585e1a5a00ce43a31c529.
* [28]Perl #132579: bogus "at EOF" in syntax error location.
* [29]Perl #132583: Assertion failure in perl_yylex.
* [30]Perl #132584: in-place sort retains blessedness.
* [31]Perl #132586: in-place sort retains tiedness.
* [32]Perl #132588: In-place sort does not kill weak refs.
* [33]Perl #132589: experimental bitwise feature breaks PDL's &
operator.
* [34]Perl #132590: in-place sort retains readonlyness.
* [35]Perl #132594: BBC smartmatch
da4e040f42421764ef069371d77c008e6b801f45.
* [36]Perl #132595: multiconcat reading and fetching wrong order.
* [37]Perl #132598: index() confused by tie side effects.
* [38]Perl #132607: Chained comparison.
* [39]Perl #132628: Feature: get "name" of lvalue expression.
* [40]Perl #132630: Assertion failure in Perl_fbm_instr.
* [41]Perl #132631: keys %SIG contains SIGUNUSED.
* [42]Perl #132633: [Win32] 5.27.7 fails all tests.
* [43]Perl #132626: perl5 sprintf: wrong output on format %a.
* [44]Perl #132634: Strange bug in the new given/whereis/whereso
construct (perl-5.27.7).
* [45]Perl #132638: I've discovered a segfault.
* [46]Perl #132644: The each function documentation is missing some
information.
* [47]Perl #132645: Array names starting with Inf can be poorly
behaved.
* [48]Perl #132646: Bleadperl v5.27.6-120-gbcc30fd027 breaks
GARU/Data-Printer-0.40.tar.gz.
* [49]Perl #132647: $1 not localized when calling sub.
* [50]Perl #132648: [51]Cwd: different return values between pure perl
and XS variants.
* [52]Perl #132649: Definition of % operator may be wrong for negative
divisors.
* [53]Perl #132651: commit d2e38af7 exhausts swap space on FreeBSD.
* [54]Perl #132653: Step-by-step debugging do not work for if elsif
elsif.
* [55]Perl #132663: t/io/fs.t failures on NetBSD with noatime mounts.
* [56]Perl #132665: Always use STOP_AT_PARTIAL in [57]PerlIO::encoding.
* [58]Perl #132671: Bleadperl v5.27.6-206-g16ada235c3 breaks
JGAMBLE/Algorithm-QuineMcCluskey-0.16.tar.gz.
Resolved Issues
* [59]Perl #4574: readpipe() broken: 2 bugs.
* [60]Perl #6997: "Useless use of concatenation" warning not triggered
by multiple concatenations.
* [61]Perl #74764: -E given( goto f ) { f: } => crash.
* [62]Perl #90888: Using each @array as while iterator exits on first
(0th) index.
* [63]Perl #92264: Freeing $a or $b during sort causes a double free.
* [64]Perl #104116: dump.c cannot dump Unicode stash names.
* [65]Perl #105930: eval 'UNITCHECK{die} crashes inside FETCH.
* [66]Perl #110056: installhtml uses absolute paths in links.
* [67]Perl #110520: pod2html 1.12 & 1.13 broken.
* [68]Perl #112104: die($object) in thread reblesses $object into main
and breaks stringification.
* [69]Perl #112732: Subs ending in { @a } return list, not hashref; can
Perl defend against this trap?
* [70]Perl #113090: [71]Data::Dumper -- undef not recognized as "false"
in config booleans.
* [72]Perl #114316: --splithead option to installhtml fails to clean up
after itself.
* [73]Perl #114318: --splithead option to installhtml creates incorrect
links.
* [74]Perl #114798: Configure: add support of qemu.
* [75]Perl #115252: Inconsistent treatment of nulls and newlines in
....
* [76]Perl #115754: sub refs returned from @INC hooks receive wrong
parameters.
* [77]Perl #116080: Doc issues for system, exec, qx.
* [78]Perl #117449: GDBM tied hash weirdness; deletion ends each loop.
* [79]Perl #119367: Another 32-bit residual in 64-bit perl 5.18.
* [80]Perl #119623: GDBM_FILE: gdbm_open requires a blocksize to be a
power of two.
* [81]Perl #120982: [82]IO::Select->select() returns empty list even if
there were no errors.
* [83]Perl #121105: During a system(), unquoted Perl vars are evaluated
after the fork() call.
* [84]Perl #121372: warn broken when operand is overloaded.
* [85]Perl #121761: Update [86]perlobj because DESTROY no longer
clobbers $@.
* [87]Perl #122670: [88]Module::CoreList version problems.
* [89]Perl #122753: Docs on destructors are inaccurate.
* [90]Perl #123707: [EXPERIMENT] String- and number-specific bitwise
ops.
* [91]Perl #126085: Not expected arguments for $SIG{__WARN__} handler.
* [92]Perl #128316: CORE::socket() mangles EMFILE and turns it into
EBADF.
* [93]Perl #128765: Custom warnings categories are disabled by any
preceding no warnings 'category'.
* [94]Perl #129888: null ptr deref, segfault in Perl_do_aexec5.
* [95]Perl #130550: Out of bounds read when calling perl from C.
* [96]Perl #130726: semicolons on *_DIAG_{IGNORE,RESTORE}.
* [97]Perl #130818: [PATCH] Remove EPOC and MacOS Classic support from
PathTools.
* [98]Perl #130851: [PATCH] socket SOCK_CLOEXEC.
* [99]Perl #131296: Combination of File::Spec->catdir() and do FILE
problematic.
* [100]Perl #131312: [101]CPAN.pm still buggy in RC1.
* [102]Perl #131518: [PATCH] -mpragma (eg strict) fail silent
blindsiding.
* [103]Perl #131664: Interpolation of @{^CAPTURE} and its friends
doesn't work.
* [104]Perl #132247: [105]XSLoader and [106]DynaLoader documentation
bugs.
* [107]Perl #132468: warnings.pm provides no way to specify the call
frame.
* [108]Perl #132481: Minor doc bug in pod/perlop.pod.
* [109]Perl #132544: heap-buffer-overflow in Perl_pp_reverse.
* [110]Perl #132545: Double macro argument evaluation in
S_init_main_stash.
* [111]Perl #132626: perl5 sprintf: wrong output on format %a.
* [112]Perl #132633: [Win32] 5.27.7 fails all tests.
* [113]Perl #132634: Strange bug in the new given/whereis/whereso
construct (perl-5.27.7).
* [114]Perl #132644: The each function documentation is missing some
information.
* [115]Perl #132645: Array names starting with Inf can be poorly
behaved.
* [116]Perl #132646: Bleadperl v5.27.6-120-gbcc30fd027 breaks
GARU/Data-Printer-0.40.tar.gz.
* [117]Perl #132648: [118]Cwd: different return values between pure
perl
and XS variants.
* [119]Perl #132651: commit d2e38af7 exhausts swap space on FreeBSD.
Rejected Issues
* [120]Perl #77510: when() as a statement modifier outside a
topicalizer
both works and fails.
* [121]Perl #77690: warnings::enabled, ::warnif etc. provide no way to
specify the number of call frames.
* [122]Perl #77974: [PATCH] Record method calls in the context stack.
* [123]Perl #90134: s2p doesn't understand sed anymore.
* [124]Perl #90240: keys(@array) gives too many indices.
* [125]Perl #96538: Closures returned from threads don't wrap
around the
right lexicals.
* [126]Perl #105278: Add warning for exists($a[0]) and delete($a[0]).
* [127]Perl #109204: UTF-8 bug in [128]Test::More and/or
[129]Test::Builder.
* [130]Perl #113898: File::Spec::Unix->catfile("./a") ne
File::Spec::Unix->catfile(".", "a").
* [131]Perl #114786: EXISTS and SCALAR return values are treated
differently.
* [132]Perl #115834: Successfull match $_[0] =~ /foo(.+)/ overrides
$_[0] if function called as foo($1).
* [133]Perl #116020: toggle operator missing reset: proposal.
* [134]Perl #119127: RFE: file handle duping in the Bourne shell
tradition.
* [135]Perl #119315: [EXPERIMENT] the lexical topic, my $_.
* [136]Perl #119863: bug in [137]Math::BigInt with undef.
* [138]Perl #121023: CPAN misinterprets 404 status as 407.
* [139]Perl #121646: while each %$ref clobbers @_ in some
circumstances.
* [140]Perl #122905: pod2html crash on Linux.
* [141]Perl #123292: hash dereference of undefined value.
* [142]Perl #123698: 5.20 threaded regression: boolean.pm -truth option
breaks string literals in closures.
* [143]Perl #123881: compiler warnings when building perl 5.20.1 with
glibc 2.20/gcc 4.9.1 (Hardened Gentoo).
* [144]Perl #127640: RFE: qqw( $var/x $var/y word3 $var4=word4 ).
* [145]Perl #128349: [146]Benchmark module doesn't use documented
format
for times.
* [147]Perl #130038: Builtin variable for loop index in foreach.
* [148]Perl #130818: [PATCH] Remove EPOC and MacOS Classic support from
PathTools.
Suggested Patches
Marco Fontani provided another patch (which was merged) to resolve
[149]Perl #116080 (Doc issues for system, exec, qx).
Karl Williamson [150]wonders (regrepeat()) whether we should introduce an
optimization for repeating characters on a pattern like (foo)+.
Discussions
Leon [151]raised the need for a language design process.
Zefram [152]raised (smartmatch/switch deprecation for 5.28) the topic of
smart match again with regards to what to deprecate in smart match.
Karl Williamson [153]suggested two deprecations: literal \v in patterns
except under /x and /[#]/xx.
References
1. http://nntp.perl.org/group/perl.perl5.porters/248274
2. http://nntp.perl.org/group/perl.perl5.porters/247938
3. http://metacpan.org/pod/CPAN
4. http://nntp.perl.org/group/perl.perl5.porters/248072
5. http://nntp.perl.org/group/perl.perl5.porters/248095
6. http://rt.perl.org/Ticket/Display.html?id=123707
7. http://nntp.perl.org/group/perl.perl5.porters/247925
8. https://metacpan.org/release/podlators
9. http://nntp.perl.org/group/perl.perl5.porters/248401
10. http://nntp.perl.org/group/perl.perl5.porters/248042
11. http://nntp.perl.org/group/perl.perl5.porters/248045
12. http://nntp.perl.org/group/perl.perl5.porters/248167
13. http://nntp.perl.org/group/perl.perl5.porters/248383
14. http://nntp.perl.org/group/perl.perl5.porters/248579
15. http://nntp.perl.org/group/perl.perl5.porters/248580
16. http://rt.perl.org/Ticket/Display.html?id=131990
17. http://metacpan.org/pod/Storable
18. http://rt.perl.org/Ticket/Display.html?id=131999
19. http://rt.perl.org/Ticket/Display.html?id=132544
20. http://rt.perl.org/Ticket/Display.html?id=132545
21. http://rt.perl.org/Ticket/Display.html?id=132560
22. http://rt.perl.org/Ticket/Display.html?id=132561
23. http://rt.perl.org/Ticket/Display.html?id=132576
24. http://rt.perl.org/Ticket/Display.html?id=132577
25. http://metacpan.org/pod/Module::Install
26. http://rt.perl.org/Ticket/Display.html?id=132578
27. http://metacpan.org/pod/List::MoreUtils::XS
28. http://rt.perl.org/Ticket/Display.html?id=132579
29. http://rt.perl.org/Ticket/Display.html?id=132583
30. http://rt.perl.org/Ticket/Display.html?id=132584
31. http://rt.perl.org/Ticket/Display.html?id=132586
32. http://rt.perl.org/Ticket/Display.html?id=132588
33. http://rt.perl.org/Ticket/Display.html?id=132589
34. http://rt.perl.org/Ticket/Display.html?id=132590
35. http://rt.perl.org/Ticket/Display.html?id=132594
36. http://rt.perl.org/Ticket/Display.html?id=132595
37. http://rt.perl.org/Ticket/Display.html?id=132598
38. http://rt.perl.org/Ticket/Display.html?id=132607
39. http://rt.perl.org/Ticket/Display.html?id=132628
40. http://rt.perl.org/Ticket/Display.html?id=132630
41. http://rt.perl.org/Ticket/Display.html?id=132631
42. http://rt.perl.org/Ticket/Display.html?id=132633
43. http://rt.perl.org/Ticket/Display.html?id=132626
44. http://rt.perl.org/Ticket/Display.html?id=132634
45. http://rt.perl.org/Ticket/Display.html?id=132638
46. http://rt.perl.org/Ticket/Display.html?id=132644
47. http://rt.perl.org/Ticket/Display.html?id=132645
48. http://rt.perl.org/Ticket/Display.html?id=132646
49. http://rt.perl.org/Ticket/Display.html?id=132647
50. http://rt.perl.org/Ticket/Display.html?id=132648
51. http://metacpan.org/pod/Cwd
52. http://rt.perl.org/Ticket/Display.html?id=132649
53. http://rt.perl.org/Ticket/Display.html?id=132651
54. http://rt.perl.org/Ticket/Display.html?id=132653
55. http://rt.perl.org/Ticket/Display.html?id=132663
56. http://rt.perl.org/Ticket/Display.html?id=132665
57. http://metacpan.org/pod/PerlIO::encoding
58. http://rt.perl.org/Ticket/Display.html?id=132671
59. http://rt.perl.org/Ticket/Display.html?id=4574
60. http://rt.perl.org/Ticket/Display.html?id=6997
61. http://rt.perl.org/Ticket/Display.html?id=74764
62. http://rt.perl.org/Ticket/Display.html?id=90888
63. http://rt.perl.org/Ticket/Display.html?id=92264
64. http://rt.perl.org/Ticket/Display.html?id=104116
65. http://rt.perl.org/Ticket/Display.html?id=105930
66. http://rt.perl.org/Ticket/Display.html?id=110056
67. http://rt.perl.org/Ticket/Display.html?id=110520
68. http://rt.perl.org/Ticket/Display.html?id=112104
69. http://rt.perl.org/Ticket/Display.html?id=112732
70. http://rt.perl.org/Ticket/Display.html?id=113090
71. http://metacpan.org/pod/Data::Dumper
72. http://rt.perl.org/Ticket/Display.html?id=114316
73. http://rt.perl.org/Ticket/Display.html?id=114318
74. http://rt.perl.org/Ticket/Display.html?id=114798
75. http://rt.perl.org/Ticket/Display.html?id=115252
76. http://rt.perl.org/Ticket/Display.html?id=115754
77. http://rt.perl.org/Ticket/Display.html?id=116080
78. http://rt.perl.org/Ticket/Display.html?id=117449
79. http://rt.perl.org/Ticket/Display.html?id=119367
80. http://rt.perl.org/Ticket/Display.html?id=119623
81. http://rt.perl.org/Ticket/Display.html?id=120982
82. http://metacpan.org/pod/IO::Select
83. http://rt.perl.org/Ticket/Display.html?id=121105
84. http://rt.perl.org/Ticket/Display.html?id=121372
85. http://rt.perl.org/Ticket/Display.html?id=121761
86. http://metacpan.org/pod/perlobj
87. http://rt.perl.org/Ticket/Display.html?id=122670
88. http://metacpan.org/pod/Module::CoreList
89. http://rt.perl.org/Ticket/Display.html?id=122753
90. http://rt.perl.org/Ticket/Display.html?id=123707
91. http://rt.perl.org/Ticket/Display.html?id=126085
92. http://rt.perl.org/Ticket/Display.html?id=128316
93. http://rt.perl.org/Ticket/Display.html?id=128765
94. http://rt.perl.org/Ticket/Display.html?id=129888
95. http://rt.perl.org/Ticket/Display.html?id=130550
96. http://rt.perl.org/Ticket/Display.html?id=130726
97. http://rt.perl.org/Ticket/Display.html?id=130818
98. http://rt.perl.org/Ticket/Display.html?id=130851
99. http://rt.perl.org/Ticket/Display.html?id=131296
100. http://rt.perl.org/Ticket/Display.html?id=131312
101. http://metacpan.org/pod/CPAN
102. http://rt.perl.org/Ticket/Display.html?id=131518
103. http://rt.perl.org/Ticket/Display.html?id=131664
104. http://rt.perl.org/Ticket/Display.html?id=132247
105. http://metacpan.org/pod/XSLoader
106. http://metacpan.org/pod/DynaLoader
107. http://rt.perl.org/Ticket/Display.html?id=132468
108. http://rt.perl.org/Ticket/Display.html?id=132481
109. http://rt.perl.org/Ticket/Display.html?id=132544
110. http://rt.perl.org/Ticket/Display.html?id=132545
111. http://rt.perl.org/Ticket/Display.html?id=132626
112. http://rt.perl.org/Ticket/Display.html?id=132633
113. http://rt.perl.org/Ticket/Display.html?id=132634
114. http://rt.perl.org/Ticket/Display.html?id=132644
115. http://rt.perl.org/Ticket/Display.html?id=132645
116. http://rt.perl.org/Ticket/Display.html?id=132646
117. http://rt.perl.org/Ticket/Display.html?id=132648
118. http://metacpan.org/pod/Cwd
119. http://rt.perl.org/Ticket/Display.html?id=132651
120. http://rt.perl.org/Ticket/Display.html?id=77510
121. http://rt.perl.org/Ticket/Display.html?id=77690
122. http://rt.perl.org/Ticket/Display.html?id=77974
123. http://rt.perl.org/Ticket/Display.html?id=90134
124. http://rt.perl.org/Ticket/Display.html?id=90240
125. http://rt.perl.org/Ticket/Display.html?id=96538
126. http://rt.perl.org/Ticket/Display.html?id=105278
127. http://rt.perl.org/Ticket/Display.html?id=109204
128. http://metacpan.org/pod/Test::More
129. http://metacpan.org/pod/Test::Builder
130. http://rt.perl.org/Ticket/Display.html?id=113898
131. http://rt.perl.org/Ticket/Display.html?id=114786
132. http://rt.perl.org/Ticket/Display.html?id=115834
133. http://rt.perl.org/Ticket/Display.html?id=116020
134. http://rt.perl.org/Ticket/Display.html?id=119127
135. http://rt.perl.org/Ticket/Display.html?id=119315
136. http://rt.perl.org/Ticket/Display.html?id=119863
137. http://metacpan.org/pod/Math::BigInt
138. http://rt.perl.org/Ticket/Display.html?id=121023
139. http://rt.perl.org/Ticket/Display.html?id=121646
140. http://rt.perl.org/Ticket/Display.html?id=122905
141. http://rt.perl.org/Ticket/Display.html?id=123292
142. http://rt.perl.org/Ticket/Display.html?id=123698
143. http://rt.perl.org/Ticket/Display.html?id=123881
144. http://rt.perl.org/Ticket/Display.html?id=127640
145. http://rt.perl.org/Ticket/Display.html?id=128349
146. http://metacpan.org/pod/Benchmark
147. http://rt.perl.org/Ticket/Display.html?id=130038
148. http://rt.perl.org/Ticket/Display.html?id=130818
149. http://rt.perl.org/Ticket/Display.html?id=116080
150. http://nntp.perl.org/group/perl.perl5.porters/248570
151. http://nntp.perl.org/group/perl.perl5.porters/248481
152. http://nntp.perl.org/group/perl.perl5.porters/248507
153. http://nntp.perl.org/group/perl.perl5.porters/248568