-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathperl5244cdelta.html
637 lines (377 loc) · 28 KB
/
perl5244cdelta.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
<?xml version="1.0" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>perl5244cdelta - what is new for cperl v5.24.4</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<link rev="made" href="mailto:[email protected]" />
</head>
<body>
<ul id="index">
<li><a href="#NAME">NAME</a></li>
<li><a href="#DESCRIPTION">DESCRIPTION</a></li>
<li><a href="#Security">Security</a>
<ul>
<li><a href="#CVE-2018-6797-heap-buffer-overflow-WRITE-of-size-1-in-S_regatom-regcomp.c">[CVE-2018-6797] heap-buffer-overflow (WRITE of size 1) in S_regatom (regcomp.c)</a></li>
<li><a href="#CVE-2018-6798-Heap-buffer-overflow-in-Perl__byte_dump_string-utf8.c">[CVE-2018-6798] Heap-buffer-overflow in Perl__byte_dump_string (utf8.c)</a></li>
<li><a href="#CVE-2018-6913-heap-buffer-overflow-in-S_pack_rec">[CVE-2018-6913] heap-buffer-overflow in S_pack_rec</a></li>
<li><a href="#Assertion-failure-in-Perl__core_swash_init-utf8.c">Assertion failure in Perl__core_swash_init (utf8.c)</a></li>
</ul>
</li>
<li><a href="#Incompatible-Changes">Incompatible Changes</a></li>
<li><a href="#Modules-and-Pragmata">Modules and Pragmata</a>
<ul>
<li><a href="#Updated-Modules-and-Pragmata">Updated Modules and Pragmata</a></li>
</ul>
</li>
<li><a href="#Selected-Bug-Fixes">Selected Bug Fixes</a></li>
<li><a href="#Acknowledgements-cperl-5.24.4-represents-approximately-8-months-of-development-since-cperl-5.24.3c-and-contains-approximately-33-000-lines-of-changes-across-560-files-from-7-authors">Acknowledgements cperl 5.24.4 represents approximately 8 months of development since cperl 5.24.3c and contains approximately 33,000 lines of changes across 560 files from 7 authors.</a></li>
<li><a href="#Reporting-Bugs">Reporting Bugs</a></li>
<li><a href="#SEE-ALSO">SEE ALSO</a></li>
</ul>
<h1 id="NAME">NAME</h1>
<p>perl5244cdelta - what is new for cperl v5.24.4</p>
<h1 id="DESCRIPTION">DESCRIPTION</h1>
<p>This document describes the differences between the cperl 5.24.4c and the cperl 5.24.3c releases.</p>
<p>If you are upgrading from an earlier release such as v5.24.2c, first read the <a href="/cperl/perl5243cdelta.html">perl5243cdelta</a> documentation, which describes differences between v5.24.3c and v5.24.2c.</p>
<h1 id="Security">Security</h1>
<h2 id="CVE-2018-6797-heap-buffer-overflow-WRITE-of-size-1-in-S_regatom-regcomp.c">[CVE-2018-6797] heap-buffer-overflow (WRITE of size 1) in S_regatom (regcomp.c)</h2>
<p>A crafted regular expression could cause a heap buffer write overflow, with control over the bytes written. <a href="https://rt.perl.org/Public/Bug/Display.html?id=132227">[perl #132227]</a></p>
<h2 id="CVE-2018-6798-Heap-buffer-overflow-in-Perl__byte_dump_string-utf8.c">[CVE-2018-6798] Heap-buffer-overflow in Perl__byte_dump_string (utf8.c)</h2>
<p>Matching a crafted locale dependent regular expression could cause a heap buffer read overflow and potentially information disclosure. <a href="https://rt.perl.org/Public/Bug/Display.html?id=132063">[perl #132063]</a></p>
<h2 id="CVE-2018-6913-heap-buffer-overflow-in-S_pack_rec">[CVE-2018-6913] heap-buffer-overflow in S_pack_rec</h2>
<p><code>pack()</code> could cause a heap buffer write overflow with a large item count. <a href="https://rt.perl.org/Public/Bug/Display.html?id=131844">[perl #131844]</a></p>
<h2 id="Assertion-failure-in-Perl__core_swash_init-utf8.c">Assertion failure in Perl__core_swash_init (utf8.c)</h2>
<p>Control characters in a supposed Unicode property name could cause perl to crash. This has been fixed. <a href="https://rt.perl.org/Public/Bug/Display.html?id=132055">[perl #132055]</a> <a href="https://rt.perl.org/Public/Bug/Display.html?id=132553">[perl #132553]</a> <a href="https://rt.perl.org/Public/Bug/Display.html?id=132658">[perl #132658]</a></p>
<h1 id="Incompatible-Changes">Incompatible Changes</h1>
<p>There are no changes intentionally incompatible with 5.24.3c. If any exist, they are bugs, and we request that you submit a report. See <a href="#Reporting-Bugs">"Reporting Bugs"</a> below.</p>
<h1 id="Modules-and-Pragmata">Modules and Pragmata</h1>
<h2 id="Updated-Modules-and-Pragmata">Updated Modules and Pragmata</h2>
<dl>
<dt id="Archive::Tar-2.30"><a href="/cperl/lib/Archive/Tar.html">Archive::Tar</a> 2.30</dt>
<dd>
<p>'0' is a valid name for an archive, change 'iter' to check definedness. See <a href="https://metacpan.org/changes/distribution/Archive-Tar">https://metacpan.org/changes/distribution/Archive-Tar</a></p>
<p>Fix creating file with trailing whitespace on filename - fixes 103279</p>
<p>Allow archiving with absolute pathnames - fixes 97748</p>
<p>Small POD fix</p>
<p>Speed up extract when archive contains lots of files</p>
<p>CVE-2018-12015 directory traversal vulnerability <a href="https://rt.cpan.org/Ticket/Display.html?id=125523">[cpan #125523]</a></p>
</dd>
<dt id="Attribute::Handlers-1.00_01"><a href="/cperl/lib/Attribute/Handlers.html">Attribute::Handlers</a> 1.00_01</dt>
<dd>
<p>Remove deprecated no-op attributes :unique, :locked</p>
<p>Fix autovivification bug with hash slice args to a function.</p>
</dd>
<dt id="B::Xref-1.07_02"><a href="/cperl/lib/B/Xref.html">B::Xref</a> 1.07_02</dt>
<dd>
<p>Support sub refs, and named anon subs.</p>
</dd>
<dt id="bytes-1.06"><a href="/cperl/lib/bytes.html">bytes</a> 1.06</dt>
<dd>
</dd>
<dt id="Compress::Raw::Bzip2-2.081"><a href="/cperl/lib/Compress/Raw/Bzip2.html">Compress::Raw::Bzip2</a> 2.081</dt>
<dd>
<p>Support pgcc, seperate it from gcc</p>
</dd>
<dt id="Compress::Raw::Zlib-2.081"><a href="/cperl/lib/Compress/Raw/Zlib.html">Compress::Raw::Zlib</a> 2.081</dt>
<dd>
<p>Support pgcc, seperate it from gcc</p>
<p>Updated internal zlib from 1.2.8 to latest, past 1.2.11</p>
<p>Silence gcc compiler warnings when -Wsign-compare is enabled #123688: Compilation warnings with clang</p>
<p>Silence gcc compiler warnings when -Wimplicit-fallthrough is enabled #123358: Compilation warnings with gcc-7.*</p>
<p>Windows uses -lzlib. Linux uses -lz #123699: wrong external zlib name used on Windows</p>
<p>Update zlib-src directory to use zlib 1.2.11 #123245: perl 5.26.1 is vulnerable to CVE-2016-9843, CVE-2016-9841, CVE-2016-9840, CVE-2016-9842</p>
<p>Don't allow offset to be greater than length of buffer in crc32.</p>
<p>Change my_zcalloc to use safecalloc. <a href="https://github.com/madler/zlib/issues/253">https://github.com/madler/zlib/issues/253</a> is the upstream report for the remaining valgrind errors not already dealt with by 1.2.11. Using calloc in Zlib.xs for now as a workaround. #121074: valgrind errors in the test suite</p>
<p>Fixed upstream deflate. See <a href="https://github.com/madler/zlib/pull/327">https://github.com/madler/zlib/pull/327</a> 1.2.11 is not recommended to use.</p>
</dd>
<dt id="CPAN-2.20_01"><a href="/cperl/lib/CPAN.html">CPAN</a> 2.20_01</dt>
<dd>
<p>From 5.28.0c See <a href="https://github.com/andk/cpanpm/pull/109">https://github.com/andk/cpanpm/pull/109</a></p>
</dd>
<dt id="Cpanel::JSON::XS-4.06"><a href="/cperl/lib/Cpanel/JSON/XS.html">Cpanel::JSON::XS</a> 4.06</dt>
<dd>
<p>MSVC 14.0 support and higher, changed nan in the runtime.</p>
<p>Stringify true again as "1".</p>
<p>Disallow duplicate keys by default, only allow them in relaxed mode.</p>
<p>De-fragilize t/96_mojo.t false test to "". It mostly is.</p>
<p>Fix and unify utf8 handling with 5.6.2 and improve many utf8 tests.</p>
<p>Add tests for boolean sv_yes and sv_no.</p>
<p>Check for correct module in %INC.</p>
<p>Relax inf/nan detection for newer msvcrt.dll runtime versions (it's now almost ANSI).</p>
<p>Fixed locale-insensitive numeric conversion on older perls. Fixed compilation under windows.</p>
<p>Simplify <code>allow_singlequote</code> check, coverity cid #165321. Remove logical dead code.</p>
<p>Added Cpanel::JSON::XS::Type as 2nd optional encode argument.</p>
<p>Removed calling get magic hooks twice in encode.</p>
<p>Fix setlocale thread race for older perls.</p>
<p>Fix overloaded eq/ne comparisons (GH #116 by demerphq, GH #117 by Graham Knopp): detect strings, protect from endless recursion. false is now ne "True". clarify eq/ne rules in the docs.</p>
<p>Set decoded type (PR #115 by Pali)</p>
<p>Add json_type_weaken (PR #114 by Pali)</p>
<p>Fix tests for 5.6 (rurban, pali)</p>
<p>Add sereal cpanel_json_xs type (#110 James Rouzier)</p>
<p>Improved bencode/bdecode methods in cpanel_json_xs (#111 Fulvio Scapin)</p>
<p>Add encoder indent_length method (#103 rouzier), previously hard-coded to 3.</p>
<p>Fix centos7 locale crash (#101 McA), fix required for all threaded perl's < 5.22 with glibc.</p>
<p>Fix uselocale() code. Probe for uselocale and xlocale.h with <5.22 threaded.</p>
<p>Avoid setlocale race in threads with non-C locales, where the threads differ in the LC_NUMERIC locale. (#99 pali)</p>
</dd>
<dt id="Data::Dumper-2.170_03"><a href="/cperl/lib/Data/Dumper.html">Data::Dumper</a> 2.170_03</dt>
<dd>
<p>Attempt to work around XS deparse issues on old perls.</p>
<p>XS improvements</p>
<p>Quoting of glob names now obeys the Useqq option <a href="https://rt.perl.org/Ticket/Display.html?id=119831">[perl #119831]</a>.</p>
<p>Attempts to set an option to <code>undef</code> through a combined getter/setter method are no longer mistaken for getter calls <a href="https://rt.perl.org/Ticket/Display.html?id=113090">[perl #113090]</a>.</p>
</dd>
<dt id="Devel::NYTProf-6.06_01"><a href="/cperl/lib/Devel/NYTProf.html">Devel::NYTProf</a> 6.06_01</dt>
<dd>
</dd>
<dt id="Devel::PPPort-3.42_04"><a href="/cperl/lib/Devel/PPPort.html">Devel::PPPort</a> 3.42_04</dt>
<dd>
<p>Add <code>#if { CPERL && VERSION </code> 5.26.0 }> support, support parser enum expectation.</p>
<p>mkppport called PPPort_pm.PL without passing through MAKEFLAGS. Add --quiet support there</p>
<p>Fix WIDEST_UTYPE.</p>
<p>Support strict hashpairs, fix for . in @INC.</p>
<p>Merge with upstream, changed croak/mess/warn_nocontext/..., add NEED_ macros ...</p>
</dd>
<dt id="Digest::SHA-6.02"><a href="/cperl/lib/Digest/SHA.html">Digest::SHA</a> 6.02</dt>
<dd>
<p>Remove deprecated -p option and PurePerl variant.</p>
<p>Replaced DynaLoader with XSLoader.</p>
<p>Silenced compiler warnings from VS2017 RT #124477</p>
<p>Modified addfile to return error when given a directory name, makes behavior consistent with GNU coreutils shaXsum.</p>
</dd>
<dt id="DB_File-1.842"><a href="/cperl/lib/DB_File.html">DB_File</a> 1.842</dt>
<dd>
<p>Document the MacOS build failures & how MacPort can work around the issue. #125238, #125585, RT#133280</p>
<p>Write all test db files into a directory created by File::Temp Protects against any possible races if running a parallel build.</p>
<p>#96357: DB_File destructor is not thread-safe Added CLONE_SKIP to DB_File.pm and included the test db-threads.t from the patch.</p>
<p>#124944 allow ppport.h-less builds in core</p>
</dd>
<dt id="DynaLoader-2.09c"><a href="/cperl/lib/DynaLoader.html">DynaLoader</a> 2.09c</dt>
<dd>
<p>Fix wrong usage of <code>SvREFCNT_inc_simple_NN</code> with a function, fixes a memory leak.</p>
</dd>
<dt id="Encode-2.98"><a href="/cperl/lib/Encode.html">Encode</a> 2.98</dt>
<dd>
<p>no strict hashpairs in encoding. fixed some -Wsign-compare See <a href="https://metacpan.org/changes/distribution/Encode">https://metacpan.org/changes/distribution/Encode</a></p>
<p>Skip the flapping test <i>t/Aliases.t</i> on threaded smokers, with random segfaults. This is a long standing core bug, with PMOP aliases or clone. First observed at <a href="https://github.com/rurban/perl-compiler/issues/73">https://github.com/rurban/perl-compiler/issues/73</a> (since 5.6)</p>
<p>Stop directory tweaking <code>$Encode::Encoding{utf8}</code></p>
<p>Fix gcc warnings for older gcc < 4.0</p>
<p>Where possible do not depend on value of $@, instead use return value of eval</p>
<p>Fix more XS problems in Encode.xs file</p>
<p>Load modules Encode::MIME::Name and Storable normally</p>
<p>Remove no warnings 'redefine'; and correctly loaddependences</p>
<p>Remove PP stubs and reformat predefine_encodings()</p>
<p>Run Encode XS BOOT code at compile time</p>
<p>Use Encode::define_encoding and propagate carp/croak message</p>
<p>cperl fixes: encoding undeprecated, no strict hashpairs</p>
<p>Cleanup code for handling fallback/replacement characters</p>
<p>lib/Encode/MIME/Name.pm t/mime-name.t Pulled: Add "euc-cn" => "EUC-CN" alias to Encode::MIME::Name https://github.com/dankogai/p5-encode/pull/124</p>
<p>lib/Encode/CN/HZ.pm lib/Encode/JP/JIS7.pm lib/Encode/MIME/Header.pm t/decode.t Pulled: Uninitialized value fixes #122 https://github.com/dankogai/p5-encode/pull/122</p>
<p>Makefile.PL Pulled: Fix -Werror=declaration-after-statement for gcc 4.1.2 https://github.com/dankogai/p5-encode/pull/121</p>
<p>Fixed deep recursion in Encode::find_encoding when decoding.</p>
</dd>
<dt id="ExtUtils::Constant-1.25_01"><a href="/cperl/lib/ExtUtils/Constant.html">ExtUtils::Constant</a> 1.25_01</dt>
<dd>
<p>fix failed to extend arg stack</p>
</dd>
<dt id="ExtUtils::MakeMaker-8.35_06"><a href="/cperl/lib/ExtUtils/MakeMaker.html">ExtUtils::MakeMaker</a> 8.35_06</dt>
<dd>
<p>Merge our fixes to upstream 7.35_06 (which has e.g. the dlltool mingw and parallel MSVC fixes). Many fixes were already in, but some new upstream bugs crept in.</p>
<p>Support IO::Scalar handle as $parsefile argument to ExtUtils::MM_Unix::parse_version().</p>
<p>fix Invalid Locale symbol name. Invalid identifier "ENCODING_UTF-8" while "strict names"</p>
<p>fix XSMULTI static with strict linkers, avoid duplicate symbol _boot_XS__Test in: Test.o blib/arch/auto/XS/Test/Test.a(Test.o)</p>
<p>xsstatic: fixup MAKE_APERL_FILE, which was Makefile.aperl.aperl, add xs_static_lib_is_xs</p>
<p>MSVC: seperate dbgoutflag</p>
<p>VMS: add static_lib_pure_cmd</p>
<p>Liblist: support libdirs with spaces</p>
</dd>
<dt id="ExtUtils::Miniperl-1.08"><a href="/cperl/lib/ExtUtils/Miniperl.html">ExtUtils::Miniperl</a> 1.08</dt>
<dd>
<p>Support <b>afl-fuzz</b> with <a href="/cperl/perlhacktips.html#afl-fuzz">afl-clang-fast</a></p>
</dd>
<dt id="ExtUtils::ParseXS-3.39_03"><a href="/cperl/lib/ExtUtils/ParseXS.html">ExtUtils::ParseXS</a> 3.39_03</dt>
<dd>
<p>Skip <code>PUTBACK;return;</code> on XSRETURN in PPCODE</p>
<p>Remove perl5 incompatible <code>__attribute__global__</code> needed for -flto. <code>XS_EXTERNAL</code> has it already.</p>
</dd>
<dt id="File::Copy-2.33"><a href="/cperl/lib/File/Copy.html">File::Copy</a> 2.33</dt>
<dd>
<p>It will now use the sub-second precision variant of <code>utime()</code> supplied by <a href="/cperl/lib/Time/HiRes.html">Time::HiRes</a> where available. <a href="https://rt.perl.org/Ticket/Display.html?id=132401">[perl #132401]</a>.</p>
</dd>
<dt id="File::Glob-1.31"><a href="/cperl/lib/File/Glob.html">File::Glob</a> 1.31</dt>
<dd>
<p>Fixed exponential performance: https://research.swtch.com/glob</p>
<p>Skip a test when File::Glob not used. Avoid undefined behaviour in Copy() [perl #131746]</p>
</dd>
<dt id="PathTools-4.74c">PathTools 4.74c</dt>
<dd>
<p>Backported from 5.28.0c, but keep epoc and MacOS.</p>
<p>Support overlong paths for getdcwd(), using the wide API for overlong paths.</p>
</dd>
<dt id="File::Temp-0.2308"><a href="/cperl/lib/File/Temp.html">File::Temp</a> 0.2308</dt>
<dd>
<p>- remove File::Temp::Dir from the PAUSE index (it is not in its own .pm file, so it is not 'use'able on its own)</p>
<p>- change EXLOCK default from true to false; addresses RT#123959. Note that this option was always a no-op on non-BSD platforms; changing the default to false makes behaviour more predictable and consistent across platforms.</p>
<p>- switch from 'use vars' to 'our'</p>
<p>- documentation updates for what versions contain what features (thanks, Brian Mowrey! RT#101518)</p>
<p>- fix bad use of skip() in tests (RT#95922)</p>
<p>- Fall back to CSIDL_LOCAL_APPDATA under taint on Windows (RT#60340)</p>
<p>- update distribution tooling</p>
</dd>
<dt id="Filter::Util::Call-1.59"><a href="/cperl/lib/Filter/Util/Call.html">Filter::Util::Call</a> 1.59</dt>
<dd>
<p>XSLoader, our. defer Carp.</p>
<p>Add filter_read_exact tests.</p>
<p>Improve tests using FindBin for filter-util.pl [atoomic #9]</p>
<p>Add int casts, assert on 2GB limitation.</p>
</dd>
<dt id="GDBM_File-1.17"><a>GDBM_File</a> 1.17</dt>
<dd>
<p>Its documentation now explains that <code>each</code> and <code>delete</code> don't mix in hashes tied to this module <a href="https://rt.perl.org/Ticket/Display.html?id=117449">[perl #117449]</a>.</p>
<p>It will now retry opening with an acceptable block size if asking gdbm to default the block size failed <a href="https://rt.perl.org/Ticket/Display.html?id=119623">[perl #119623]</a>.</p>
</dd>
<dt id="if-0.0608"><a href="/cperl/lib/if.html">if</a> 0.0608</dt>
<dd>
<p>Doc how to import when you want to <code>use MODULE ()</code></p>
</dd>
<dt id="IO-1.39_01"><a href="/cperl/lib/IO.html">IO</a> 1.39_01</dt>
<dd>
<p>replace use vars with our, run-time load Carp, Bump versions of 3 Socket modules. Remove pre-5.8 support</p>
</dd>
<dt id="IPC::Cmd-1.02"><a href="/cperl/lib/IPC/Cmd.html">IPC::Cmd</a> 1.02</dt>
<dd>
<p>Added <code>wait_loop_callback</code> for <code>run_forked()</code></p>
<p>Only search in curdir in <code>can_run(</code>) when on Win32 <a href="https://rt.cpan.org/Ticket/Display.html?id=105601">RT #105601</a></p>
<p>Fixed can't use IPC::Cmd->run_forked in the first process of a container <a href="https://rt.cpan.org/Ticket/Display.html?id=118424">RT #118424</a></p>
<p>Fixed run_forked("/usr/bin/echo test") captures no output <a href="https://rt.cpan.org/Ticket/Display.html?id=91784">RT #91784</a></p>
<p>HPUX test fixes.</p>
</dd>
<dt id="Net::Ping-2.70"><a href="/cperl/lib/Net/Ping.html">Net::Ping</a> 2.70</dt>
<dd>
<p>Fix ping_udp for a started udp echo server (PR#5 by Stephan Loyd)</p>
<p>Fix t/400_ping_syn.t phases</p>
<p>Try to handle Windows Socket::getnameinfo errors</p>
<p>Improve some tests on missing network connections</p>
<p>Keep v5.002 - v5.6 support</p>
<p>Removed outdated demo/fping from the documentation (<a href="https://rt.cpan.org/Ticket/Display.html?id=123750">RT #123750</a> by Steve Morris)</p>
<p>Added t/420_ping_syn_port.t (#4 by Julio Fraire) with fixes.</p>
<p>Added indices and crosslinks to the documentation</p>
<p>use NIx_NOSERV flag for windows.</p>
<p>better icmpv6 support.</p>
</dd>
<dt id="NEXT-0.67_01"><a href="/cperl/lib/NEXT.html">NEXT</a> 0.67_01</dt>
<dd>
<p>Fix for GLOB stubs. <a href="https://rt.cpan.org/Ticket/Display.html?id=123002">RT #123002</a></p>
</dd>
<dt id="PerlIO::encoding-0.26_01"><a href="/cperl/lib/PerlIO/encoding.html">PerlIO::encoding</a> 0.26_01</dt>
<dd>
</dd>
<dt id="PerlIO::scalar-0.29"><a href="/cperl/lib/PerlIO/scalar.html">PerlIO::scalar</a> 0.29</dt>
<dd>
<p>check invariant at compile time.</p>
<p>return EACCES on writing to a read-only scalar</p>
</dd>
<dt id="PerlIO::via-0.17_01"><a href="/cperl/lib/PerlIO/via.html">PerlIO::via</a> 0.17_01</dt>
<dd>
<p>Protect from NULL arg.</p>
</dd>
<dt id="Pod::Man-4.11"><a href="/cperl/lib/Pod/Man.html">Pod::Man</a> 4.11</dt>
<dd>
<p>Various upstream changes, see <a href="https://metacpan.org/changes/distribution/podlators">https://metacpan.org/changes/distribution/podlators</a></p>
</dd>
<dt id="Scalar-List-Util-1.50_11">Scalar-List-Util 1.50_11</dt>
<dd>
<p>fix <code>find_rundefsvoffset</code> logic.</p>
<p>Fix <i>t/subname.t</i> and <i>t/exotic_names.t</i> for unstrict names. perl5.26 started defining $Config{usecperl} as 'UNKNOWN', hence this check is now unreliable.</p>
<p>Merge with 1.50 upstream: Ensure pairmap extends its stack correctly (davem), Fix name of <code>List::Util::unpairs</code> in its error messages.</p>
<p>added head/tail check PERL_NO_QUOTE_PKGSEPERATOR merged <code>%DB::sub</code> tests, merge with upstream <code>%DB::sub</code> support (main:: or not, utf8)</p>
<p>Fixup the new pairmap spill code.</p>
</dd>
<dt id="Socket-2.027_04"><a href="/cperl/lib/Socket.html">Socket</a> 2.027_04</dt>
<dd>
</dd>
<dt id="Term::ReadKey-2.37_03"><a href="/cperl/lib/Term/ReadKey.html">Term::ReadKey</a> 2.37_03</dt>
<dd>
<p>Protect from fileno returning -1, invalid file arg. Reformatted.</p>
</dd>
<dt id="Term::ReadLine-1.17"><a href="/cperl/lib/Term/ReadLine.html">Term::ReadLine</a> 1.17</dt>
<dd>
<p>fix for empty &STDERR files, <a href="https://rt.cpan.org/Ticket/Display.html?id=132008">RT #132008</a></p>
</dd>
<dt id="Test::Harness-3.42_01"><a href="/cperl/lib/Test/Harness.html">Test::Harness</a> 3.42_01</dt>
<dd>
<p>Enable rulesfile.t to run in core</p>
<p>Return handle for pipes and sockets #58 (Erik Huelsmann) TAP v13 plan allows trailing whitespace (Steffen Schwigon) prove: add a --statefile=<path> option to customize the .prove file (Ævar Arnfjörð Bjarmason) Avoid non-deterministic source handling, make a SourceHandler tie an error. (Michael Schwern, Leon Timmermans) Fix and simplify MSWin32 colorization (Roy Ivy III) Fix file source handler to accept single extensions option (Tomoki Aonuma) Spelling fixes (Brian Wightman)</p>
</dd>
<dt id="Time::HiRes-1.9758_01"><a href="/cperl/lib/Time/HiRes.html">Time::HiRes</a> 1.9758_01</dt>
<dd>
<p>Updated from upstream since 1.9751:</p>
<p>See <a href="https://metacpan.org/changes/distribution/Time-HiRes">https://metacpan.org/changes/distribution/Time-HiRes</a></p>
<p>Fix MSVC by adding a fake struct timezone.</p>
<p>Add more potential clock constants, like CLOCK_MONOTONIC_FAST (available in FreeBSD), and not all potentially found clock constants were properly exported to be available from Perl, see your system's <a>clock_gettime</a> documentation for the available ones</p>
<p>Correct declared minimum Perl version (should be 5.6, was declared as 5.8 since 1.9727_03): blead af94b3ac</p>
<p>Merged with our cperl test fixes, see <a href="https://github.com/rurban/Time-HiRes/commits/cperl">https://github.com/rurban/Time-HiRes/commits/cperl</a></p>
<p>Drop 5.005 support. Replace DynaLoader with XSLoader.</p>
</dd>
<dt id="Time::Local-1.28"><a href="/cperl/lib/Time/Local.html">Time::Local</a> 1.28</dt>
<dd>
<p>Some tests which required support for epoch values larger than 2**32 were not being skipped when the underlying Perl did not support that.</p>
<p>Fixed the tests so they will not break in the year 2020. The tests were passing in 2-digit years on the assumption that a year like "70" would be treated as 1970, but starting in 2020 this would be treated as 2070 instead. Reported by Bernhard M. Wiedemann. <a href="https://rt.cpan.org/Ticket/Display.html?id=124787">RT #124787</a></p>
<p>Added timelocal_modern and timegm_modern variants as optional exports. These versions do not munge years at all. They treat the year value that they are given exactly as-is.</p>
</dd>
<dt id="Time::Piece-1.33"><a href="/cperl/lib/Time/Piece.html">Time::Piece</a> 1.33</dt>
<dd>
<p>Switch to XSLoader.</p>
<p>Fix AIX compile</p>
<p>Fix compile errors on MS</p>
<p>Use macro for buf sizes</p>
<p>Remove some compile warnings</p>
<p>SP off by 1 in <code>_crt_localtime</code></p>
</dd>
<dt id="version-0.9923_02"><a href="/cperl/lib/version.html">version</a> 0.9923_02</dt>
<dd>
<p>Add updates from 0.9918: Add LAX_DECIMAL_VERSION, LAX_DOTTED_DECIMAL_VERSION, STRICT_DECIMAL_VERSION, STRICT_DOTTED_DECIMAL_VERSION regexes. Add updates from 0.9921: pod, safer C locale switching. add vpp support for cperl: scmp, c suffix. use vars => our.</p>
<p>Add <i>t/11_taint.t</i></p>
</dd>
<dt id="XSLoader-1.04c"><a href="/cperl/lib/XSLoader.html">XSLoader</a> 1.04c</dt>
<dd>
<p>Fix wrong usage of <code>SvREFCNT_inc_simple_NN</code> with a function, fixes a memory leak.</p>
<p>Its documentation now shows the use of <code>__PACKAGE__</code>, and direct object syntax for example <code>DynaLoader</code> usage <a href="https://rt.perl.org/Ticket/Display.html?id=132247">[perl #132247]</a>.</p>
</dd>
</dl>
<h1 id="Selected-Bug-Fixes">Selected Bug Fixes</h1>
<ul>
<li><p>Fixed missing compile-time AvSHAPED detection in nested scopes. E.g.:</p>
<pre><code> my @a[1]; sub { $a[0]->[5] = 1 }->(); # mderef_u
my @b[1]; sub { $b[0] = 1 }->(); # aelemfast_lex_u</code></pre>
<p>See <a href="https://github.com/perl11/cperl/issues/354">[cperl #354]</a>.</p>
</li>
<li><p>Harmonize skipped <code>main::</code> prefix in <code>%DB::sub</code>. In cperl the debugger uses no <code>main::</code> prefixes for global functions. This enables entering debugger breakpoints and c without <code>main::</code>, <code>newMYSUB</code> still had <code>main::</code> Backported from 5.28.0c</p>
</li>
<li><p>The <code>readpipe()</code> built-in function now checks at compile time that it has only one parameter expression, and puts it in scalar context, thus ensuring that it doesn't corrupt the stack at runtime. <a href="https://rt.perl.org/Public/Bug/Display.html?id=4574">[perl #4574]</a></p>
</li>
<li><p><code>re_intuit_start()</code> was fixed for non-utf8 targets to ignore the utf8 folding rules.</p>
</li>
</ul>
<h1 id="Acknowledgements-cperl-5.24.4-represents-approximately-8-months-of-development-since-cperl-5.24.3c-and-contains-approximately-33-000-lines-of-changes-across-560-files-from-7-authors">Acknowledgements cperl 5.24.4 represents approximately 8 months of development since cperl 5.24.3c and contains approximately 33,000 lines of changes across 560 files from 7 authors.</h1>
<p>Excluding auto-generated files, documentation and release tools, there were approximately 14,000 lines of changes to 390 .pm, .t, .c and .h files.</p>
<p>The following people are known to have contributed the improvements that became cperl 5.24.4:</p>
<p>Reini Urban, Karl Williamson, Tony Cook, Chris 'BinGOs' Williams, Renee Baecker, Yves Orton, Zefram.</p>
<p>The list above is almost certainly incomplete as it is automatically generated from version control history including the perl and cperl repos. In particular, it does not include the names of the (very much appreciated) contributors who reported issues to the Perl bug tracker and the cperl github issues.</p>
<p>Many of the changes included in this version originated in the CPAN modules included in Perl's core. We're grateful to the entire CPAN community for helping Perl to flourish.</p>
<p>For a more complete list of all of Perl's historical contributors, please see the <i>AUTHORS</i> file in the Perl source distribution.</p>
<p>Generated with:</p>
<pre><code> cperl Porting/acknowledgements.pl cperl-5.24.3..HEAD -c</code></pre>
<h1 id="Reporting-Bugs">Reporting Bugs</h1>
<p>If you find what you think is a bug, you might check the articles recently posted to the comp.lang.perl.misc newsgroup and the perl bug database at <a href="https://rt.perl.org/">https://rt.perl.org/</a> . There may also be information at <a href="http://www.perl.org/">http://www.perl.org/</a> , the Perl Home Page.</p>
<p>If you believe you have an unreported bug, please run the <a>cperlbug</a> program included with your release. Be sure to trim your bug down to a tiny but sufficient test case. Your bug report, along with the output of <code>perl -V</code>, will be sent off to [email protected] to be analysed by the Perl porting team.</p>
<p>If you think it's a cperl specific bug or trust the cperl developers more please file an issue at <a href="https://github.com/perl11/cperl/issues">https://github.com/perl11/cperl/issues</a>.</p>
<p>If the bug you are reporting has security implications which make it inappropriate to send to a publicly archived mailing list, then see <a href="/cperl/perlsec.html#SECURITY-VULNERABILITY-CONTACT-INFORMATION">"SECURITY VULNERABILITY CONTACT INFORMATION" in perlsec</a> For details of how to report the issue.</p>
<h1 id="SEE-ALSO">SEE ALSO</h1>
<p>The <i>Changes</i> file for an explanation of how to view exhaustive details on what changed.</p>
<p>The <i>INSTALL</i> file for how to build Perl.</p>
<p>The <i>README</i> file for general stuff.</p>
<p>The <i>Artistic</i> and <i>Copying</i> files for copyright information.</p>
</body>
</html>