-
Notifications
You must be signed in to change notification settings - Fork 7.7k
/
NEWS
716 lines (584 loc) · 26.5 KB
/
NEWS
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
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
PHP NEWS
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
09 Nov 2023, PHP 8.3.0RC6
- Core:
. Fixed segfault caused by weak references to FFI objects. (sj-i)
. Fixed max_execution_time: don't delete an unitialized timer. (Kévin Dunglas)
. Fixed bug GH-12558 (Arginfo soft-breaks with namespaced class return type
if the class name starts with N). (kocsismate)
. Fixed oss-fuzz #63802 (OP1 leak in error path of post inc/dec). (ilutov)
- DOM:
. Add missing NULL pointer error check. (icy17)
. Fixed bug #47531 (No way of removing redundant xmlns: declarations).
(nielsdos)
. Fix validation logic of php:function() callbacks. (nielsdos)
- FPM:
. Fixed bug GH-9921 (Loading ext in FPM config does not register module
handlers). (Jakub Zelenka)
. Fixed bug #76922 (FastCGI terminates conn after FCGI_GET_VALUES).
(Jakub Zelenka)
- Intl:
. Removed the BC break on IntlDateFormatter::construct which threw an
exception with an invalid locale. (David Carlier)
- Opcache:
. Fixed COPY_TMP type inference for references. (ilutov)
- PCRE:
. Fixed bug GH-11374 (Backport upstream fix, Different preg_match result
with -d pcre.jit=0). (mvorisek)
- SOAP:
. Fix potential crash with an edge case of persistent encoders. (nielsdos)
. Fixed bug #75306 (Memleak in SoapClient). (nielsdos)
- XMLReader:
. Add missing NULL pointer error check. (icy17)
- XMLWriter:
. Add missing NULL pointer error check. (icy17)
- XSL:
. Fix validation logic of php:function() callbacks. (nielsdos)
26 Oct 2023, PHP 8.3.0RC5
- Core:
. Fixed double-free of non-interned enum case name. (ilutov)
. Fixed bug GH-12457 (Incorrect result of stripos with single character
needle). (SakiTakamachi)
. Fixed bug GH-12468 (Double-free of doc_comment when overriding static
property via trait). (ilutov)
- DOM:
. Fix registerNodeClass with abstract class crashing. (nielsdos)
. Fix compile error when php_libxml.h header is included in C++.
(Remi, nielsdos)
- Fiber:
. Fixed bug GH-11121 (ReflectionFiber segfault). (danog, trowski, bwoebi)
- FPM:
. Fixed bug GH-12232 (FPM: segfault dynamically loading extension without
opcache). (Jakub Zelenka)
- Opcache:
. Added warning when JIT cannot be enabled. (danog)
. Fixed bug GH-8143 (Crashes in zend_accel_inheritance_cache_find since
upgrading to 8.1.3 due to corrupt on-disk file cache). (turchanov)
- OpenSSL:
. Fixed bug GH-12489 (Missing sigbio creation checking in openssl_cms_verify).
(Jakub Zelenka)
- Random:
. Fix Randomizer::getFloat() returning incorrect results under
certain circumstances. (timwolla)
- SOAP:
. Fixed bug GH-12392 (Segmentation fault on SoapClient::__getTypes).
(nielsdos)
. Fixed bug #66150 (SOAP WSDL cache race condition causes Segmentation
Fault). (nielsdos)
. Fixed bug #67617 (SOAP leaves incomplete cache file on ENOSPC). (nielsdos)
. Fix incorrect uri check in SOAP caching. (nielsdos)
. Fix segfault and assertion failure with refcounted props and arrays.
(nielsdos)
- Streams:
. Fixed bug #75708 (getimagesize with "&$imageinfo" fails on StreamWrappers).
(Jakub Zelenka)
- XSL:
. Add missing module dependency. (nielsdos)
12 Oct 2023, PHP 8.3.0RC4
- Core:
. Fixed bug #80092 (ZTS + preload = segfault on shutdown). (nielsdos)
. Fixed buffer underflow when compiling memoized expression. (ilutov)
- CLI:
. Ensure a single Date header is present. (coppolafab)
- CType:
. Fixed bug GH-11997 (ctype_alnum 5 times slower in PHP 8.1 or greater).
(nielsdos)
- DOM:
. Restore old namespace reconciliation behaviour. (nielsdos)
. Fix broken cache invalidation with deallocated and reallocated document
node. (nielsdos)
. Fixed bug GH-8996 (DOMNode serialization on PHP ^8.1). (nielsdos)
- Fileinfo:
. Fixed bug GH-11891 (fileinfo returns text/xml for some svg files). (usarise)
- LibXML:
. Fix compile error with -Werror=incompatible-function-pointer-types and
old libxml2. (nielsdos)
- MySQLnd:
. Fixed bug GH-12297 (PHP Startup: Invalid library (maybe not a PHP library)
'mysqlnd.so' in Unknown on line). (nielsdos)
- Opcache:
. Fixed opcache_invalidate() on deleted file. (mikhainin)
. Fixed bug GH-12380 (JIT+private array property access inside closure
accesses private property in child class). (nielsdos)
- SimpleXML:
. Apply iterator fixes only on master. (nielsdos)
- Standard:
. Fixed str_decrement() on "1". (ilutov)
- XSL:
. Fix type error on XSLTProcessor::transformToDoc return value with
SimpleXML. (nielsdos)
28 Sep 2023, PHP 8.3.0RC3
- Core:
. Fixed bug GH-12189 (#[Override] attribute in trait does not check for
parent class implementations). (timwolla)
. Fixed OSS Fuzz #62294 (Unsetting variable after ++/-- on string variable
warning). (Girgias)
. Fixed bug GH-12215 (Module entry being overwritten causes type errors in
ext/dom). (nielsdos)
. Fixed bug GH-12207 (memory leak when class using trait with doc block).
(rioderelfte)
. Fixed bug GH-12273 (__builtin_cpu_init check). (Freaky)
- Filter:
. Fix explicit FILTER_REQUIRE_SCALAR with FILTER_CALLBACK (ilutov)
- Hash:
. Fixed bug GH-12186 (segfault copying/cloning a finalized HashContext).
(MaxSem)
- Intl:
. Fixed bug GH-12243 (segfault on IntlDateFormatter::construct).
(David Carlier)
. Fixed bug GH-12282 (IntlDateFormatter::construct should throw an exception
on an invalid locale). (David Carlier)
- SimpleXML:
. Fixed bug GH-12170 (Can't use xpath with comments in SimpleXML). (nielsdos)
. Fixed bug GH-12192 (SimpleXML infinite loop when getName() is called
within foreach). (nielsdos)
. Fixed bug GH-12223 (Entity reference produces infinite loop in
var_dump/print_r). (nielsdos)
. Fixed bug GH-12208 (SimpleXML infinite loop when a cast is used inside a
foreach). (nielsdos)
. Fixed bug #55098 (SimpleXML iteration produces infinite loop). (nielsdos)
. Fixed bug GH-12167 (Unable to get processing instruction contents in
SimpleXML). (nielsdos)
. Fixed bug GH-12169 (Unable to get comment contents in SimpleXML).
(nielsdos)
- Streams:
. Fixed bug GH-12190 (binding ipv4 address with both address and port at 0).
(David Carlier)
- XML:
. Fix return type of stub of xml_parse_into_struct(). (nielsdos)
. Fix memory leak when calling xml_parse_into_struct() twice. (nielsdos)
14 Sep 2023, PHP 8.3.0RC2
- Core:
. Fixed GH-11847 (DTrace enabled build is broken). (Filip Zrůst)
. Fixed bug GH-11876: ini_parse_quantity() accepts invalid quantities.
(Girgias)
. Fixed bug GH-12073 (Segfault when freeing incompletely initialized
closures). (ilutov)
. Fixed bug GH-12060 (Internal iterator rewind handler is called twice).
(ju1ius)
. Fixed OSS Fuzz #61865 (Undef variable in ++/-- for declared property
that is unset in error handler). (Girgias)
. Fixed bug GH-12102 (Incorrect compile error when using array access on TMP
value in function call). (ilutov)
. Fixed warning emitted when checking if a user stream is castable. (Girgias)
. Fixed bug GH-12123 (Compile error on MacOS with C++ extension when using
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX). (kocsismate)
- FPM:
. Fixed GH-12077 (PHP 8.3.0RC1 borked socket-close-on-exec.phpt).
(Jakub Zelenka)
- Intl:
. Fixed bug GH-12020 (intl_get_error_message() broken after
MessageFormatter::formatMessage() fails). (Girgias)
- ODBC:
. Fixed memory leak with failed SQLPrepare. (NattyNarwhal)
. Fixed persistent procedural ODBC connections not getting closed.
(NattyNarwhal)
- PCRE:
. Update bundled libpcre2 to 10.42. (nielsdos)
- SimpleXML:
. Fixed bug #52751 (XPath processing-instruction() function is not
supported). (nielsdos)
- SPL:
. Fixed bug GH-11972 (RecursiveCallbackFilterIterator regression in 8.1.18).
(nielsdos)
- Standard:
. Fixed bug GH-12151 (str_getcsv ending with escape zero segfualt).
(Jakub Zelenka)
- SQLite3:
. Fixed bug GH-11878 (SQLite3 callback functions cause a memory leak with
a callable array). (nielsdos, arnaud-lb)
31 Aug 2023, PHP 8.3.0RC1
- Core:
. Fixed bug GH-11937 (Constant ASTs containing objects). (ilutov)
. Introduced Zend guard recursion protection to fix __debugInfo issue.
(Jakub Zelenka)
. Fixed bug GH-11790 (On riscv64 require libatomic if actually needed).
(Jeremie Courreges-Anglas)
. Fixed oss-fuzz #61712 (assertion failure with error handler during binary
op). (nielsdos)
- DOM:
. Fixed GH-11952 (Confusing warning when blocking entity loading via
libxml_set_external_entity_loader). (nielsdos)
- FFI:
. Implement GH-11934 (Allow to pass CData into struct and/or union fields).
(nielsdos, KapitanOczywisty)
- FPM:
. Fixed bug #76067 (system() function call leaks php-fpm listening sockets).
(Mikhail Galanin, Jakub Zelenka)
- Standard:
. Added $before_needle argument to strrchr(). (HypeMC)
. Fixed GH-11982 (str_getcsv returns null byte for unterminated enclosure).
(Jakub Zelenka)
- Streams:
. Fixed bug #52335 (fseek() on memory stream behavior different than file).
(Jakub Zelenka)
. Fixed bug #76857 (Can read "non-existant" files). (Jakub Zelenka)
17 Aug 2023, PHP 8.3.0beta3
- Core:
. Fixed strerror_r detection at configuration time. (Kévin Dunglas)
. Fixed segfault during freeing of some incompletely initialized objects due
to OOM error (PDO, SPL, XSL). (ilutov)
. Fixed trait typed properties using a DNF type not being correctly bound.
(Girgias)
. Fixed trait property types not being arena allocated if copied from
an internal trait. (Girgias)
. Fixed deep copy of property DNF type during lazy class load.
(Girgias, ilutov)
. Fixed memory freeing of DNF types for non arena allocated types.
(Girgias, ju1ius)
- DOM:
. adoptNode now respects the strict error checking property. (nielsdos)
. Align DOMChildNode parent checks with spec. (nielsdos)
. Fixed bug #80927 (Removing documentElement after creating attribute node:
possible use-after-free). (nielsdos)
. Fix various namespace prefix conflict resolution bugs. (nielsdos)
. Fix calling createAttributeNS() without prefix causing the default
namespace of the element to change. (nielsdos)
- Opcache:
. Avoid resetting JIT counter handlers from multiple processes/threads.
(ilutov)
- Standard:
. Fixed bug GH-11870 (Fix off-by-one bug when truncating tempnam prefix)
(athos-ribeiro)
03 Aug 2023, PHP 8.3.0beta2
- Bcmath
. Fixed GH-11761 (removing trailing zeros from numbers) (jorgsowa)
- Core:
. Fixed oss-fuzz #60741 (Leak in open_basedir). (ilutov)
- DOM:
. Fixed bug GH-11792 (LIBXML_NOXMLDECL is not implemented or broken).
(nielsdos)
- FFI:
. Fix leaking definitions when using FFI::cdef()->new(...). (ilutov)
- Libxml:
. Fixed bug GHSA-3qrf-m4j2-pcrr (Security issue with external entity loading
in XML without enabling it). (CVE-2023-3823) (nielsdos, ilutov)
- MBString:
. Fix use-after-free of mb_list_encodings() return value. (ilutov)
- Opcache:
. Avoid adding an unnecessary read-lock when loading script from shm if
restart is in progress. (mikhainin)
- Phar:
. Fixed bug GHSA-jqcx-ccgc-xwhv (Buffer mismanagement in phar_dir_read()).
(CVE-2023-3824) (nielsdos)
- Streams:
. Fixed bug GH-11735 (Use-after-free when unregistering user stream wrapper
from itself). (ilutov)
20 Jul 2023, PHP 8.3.0beta1
- CLI:
. Implement GH-10024 (support linting multiple files at once using php -l).
(nielsdos)
- Core:
. Fixed line number of JMP instruction over else block. (ilutov)
. Fixed use-of-uninitialized-value with ??= on assert. (ilutov)
. Fixed bug GH-11601 (Incorrect handling of unwind and graceful exit
exceptions). (ilutov)
. Added zend_call_stack_get implementation for OpenBSD. (David Carlier)
. Fixed oss-fuzz #60411 (Fix double-compilation of arrow-functions). (ilutov)
. Fixed build for FreeBSD before the 11.0 releases. (David Carlier)
. Add stack limit check in zend_eval_const_expr(). (Arnaud)
. Expose time spent collecting cycles in gc_status(). (Arnaud)
. Remove WeakMap entries whose key is only reachable through the entry value.
(Arnaud)
. Resolve open_basedir paths on INI update. (ilutov)
- Curl:
. Added Curl options and constants up to (including) version 7.87.
(nielsdos, adoy)
- DOM:
. Added DOMNode::contains() and DOMNameSpaceNode::contains(). (nielsdos)
. Added DOMElement::getAttributeNames(). (nielsdos)
. Added DOMNode::getRootNode(). (nielsdos)
. Added DOMElement::className and DOMElement::id. (nielsdos)
. Added DOMParentNode::replaceChildren(). (nielsdos)
. Added DOMNode::isConnected and DOMNameSpaceNode::isConnected. (nielsdos)
. Added DOMNode::parentElement and DOMNameSpaceNode::parentElement.
(nielsdos)
. Added DOMNode::isEqualNode(). (nielsdos)
. Added DOMElement::insertAdjacentElement() and
DOMElement::insertAdjacentText(). (nielsdos)
. Added DOMElement::toggleAttribute(). (nielsdos)
- FPM:
. Added warning to log when fpm socket was not registered on the expected
path. (Joshua Behrens, Jakub Zelenka)
- Hash:
. Fix use-of-uninitialized-value in hash_pbkdf2(), fix missing $options
parameter in signature. (ilutov)
- Intl:
. Fix memory leak in MessageFormatter::format() on failure. (Girgias)
- LDAP:
. Deprecate calling ldap_connect() with separate hostname and port.
(heiglandreas)
- OpenSSL:
. Added support for additional EC parameters in openssl_pkey_new. (Eno-CN)
- PDO:
. Fix GH-11587 (After php8.1, when PDO::ATTR_EMULATE_PREPARES is true
and PDO::ATTR_STRINGIFY_FETCHES is true, decimal zeros are no longer
filled). (SakiTakamachi)
- Random:
. Deprecate MT_RAND_PHP. (timwolla)
- SPL:
. Fixed GH-11573 (RecursiveDirectoryIterator::hasChildren is slow).
(nielsdos)
- Standard:
. Added support for rounding negative places in number_format().
(Marc Bennewitz)
. Prevent precision loss on formatting decimal integers in number_format().
(Marc Bennewitz)
. Added usage of posix_spawn for proc_open when supported by OS.
(Cristian Rodriguez)
- Streams:
. Implemented GH-11242 (_php_stream_copy_to_mem: Allow specifying a maximum
length without allocating a buffer of that size). (Jakub Zelenka)
06 Jul 2023, PHP 8.3.0alpha3
- Core:
. Fixed bug GH-11507 (String concatenation performance regression in 8.3).
(nielsdos)
. Fixed oss-fuzz #60011 (Mis-compilation of by-reference nullsafe operator).
(ilutov)
. Fixed GH-11488 (Missing "Optional parameter before required" deprecation on
union null type). (ilutov)
. Implement the #[\Override] attribute RFC. (timwolla)
- DOM:
. Fixed bug GH-11500 (Namespace reuse in createElementNS() generates wrong
output). (nielsdos)
. Implemented DOMDocument::adoptNode(). Previously this always threw a
"not yet implemented" exception. (nielsdos)
. Fixed bug GH-9628 (Implicitly removing nodes from \DOMDocument breaks
existing references). (nielsdos)
- Fileinfo:
. Fix GH-11408 (Unable to build PHP 8.3.0 alpha 1 / fileinfo extension).
(nielsdos)
- MBString:
. Implement mb_str_pad() RFC. (nielsdos)
. Fixed bug GH-11514 (PHP 8.3 build fails with --enable-mbstring enabled).
(nielsdos)
- Session:
. Fixed bug GH-11529 (Crash after dealing with an Apache request). (nielsdos)
- Standard:
. Fix serialization of RC1 objects appearing in object graph twice. (ilutov)
- XMLReader:
. Fix GH-11548 (Argument corruption when calling XMLReader::open or
XMLReader::XML non-statically with observer active). (Bob)
- zip:
. zip extension version 1.22.0 for libzip 1.10.0. (Remi)
. add new error macros (ER_DATA_LENGTH and ER_NOT_ALLOWED). (Remi)
. add new archive global flags (ER_AFL_*). (Remi)
. add ZipArchive::setArchiveFlag and ZipArchive::getArchiveFlag methods.
(Remi)
22 Jun 2023, PHP 8.3.0alpha2
- Core:
. Fix GH-11388 (Allow "final" modifier when importing a method from a trait).
(nielsdos)
. Fixed bug GH-11406 (segfault with unpacking and magic method closure).
(nielsdos)
- DOM:
. Fix #79700 (wrong use of libxml oldNs leads to performance problem).
(nielsdos)
. Fix #77894 (DOMNode::C14N() very slow on generated DOMDocuments even after
normalisation). (nielsdos)
. Revert changes to DOMAttr::$value and DOMAttr::$nodeValue expansion.
(nielsdos)
- GD:
. Removed imagerotate "ignore_transparent" argument since it has no effect.
(David Carlier)
- Streams:
. Implement GH-8641 (STREAM_NOTIFY_COMPLETED over HTTP never emitted).
(nielsdos, Jakub Zelenka)
. Fix bug GH-10406 (fgets on a redis socket connection fails on PHP 8.3).
(Jakub Zelenka)
08 Jun 2023, PHP 8.3.0alpha1
- CLI:
. Added pdeathsig to builtin server to terminate workers when the master
process is killed. (ilutov)
. Fixed bug GH-11104 (STDIN/STDOUT/STDERR is not available for CLI without
a script). (nielsdos)
- Core:
. Fixed bug GH-9388 (Improve unset property and __get type incompatibility
error message). (ilutov)
. SA_ONSTACK is now set for signal handlers to be friendlier to other
in-process code such as Go's cgo. (Kévin Dunglas)
. SA_ONSTACK is now set when signals are disabled. (Kévin Dunglas)
. Fix GH-9649: Signal handlers now do a no-op instead of crashing when
executed on threads not managed by TSRM. (Kévin Dunglas)
. Fixed potential NULL pointer dereference Windows shm*() functions. (cmb)
. Added shadow stack support for fibers. (Chen Hu)
. Fix bug GH-9965 (Fix accidental caching of default arguments with side
effects). (ilutov)
. Implement GH-10217 (Use strlen() for determining the class_name length).
(Dennis Buteyn)
. Fix bug GH-8821 (Improve line numbers for errors in constant expressions).
(ilutov)
. Fix bug GH-10083 (Allow comments between & and parameter). (ilutov)
. Zend Max Execution Timers is now enabled by default for ZTS builds on
Linux. (Kévin Dunglas)
. Fix bug GH-10469 (Disallow .. in open_basedir paths set at runtime).
(ilutov)
. Fix bug GH-10168, GH-10582 (Various segfaults with destructors and VM return
values). (dstogov, nielsdos, ilutov)
. Fix bug GH-10935 (Use of trait doesn't redeclare static property if class
has inherited it from its parent). (ilutov)
. Fix bug GH-11154 (Negative indices on empty array don't affect next chosen
index). (ColinHDev)
. Fix bug GH-8846 (Implement delayed early binding for classes without
parents). (ilutov)
. Fix bug #79836 (Segfault in concat_function). (nielsdos)
. Fix bug #81705 (type confusion/UAF on set_error_handler with concat
operation). (nielsdos)
. Fix GH-11348 (Closure created from magic method does not accept named
arguments). (nielsdos)
- Date:
. Implement More Appropriate Date/Time Exceptions RFC. (Derick)
- DOM:
. Fix bug GH-8388 (DOMAttr unescapes character reference). (Tim Starling)
. Fix bug GH-11308 (getElementsByTagName() is O(N^2)). (nielsdos)
- Exif:
. Removed unneeded codepaths in exif_process_TIFF_in_JPEG(). (nielsdos)
- Fileinfo:
. Upgrade bundled libmagic to 5.43. (Anatol)
- FPM:
. The status.listen shared pool now uses the same php_values (including
expose_php) and php_admin_value as the pool it is shared with. (dwxh)
- GD:
. Fixed bug #81739: OOB read due to insufficient input validation in
imageloadfont(). (CVE-2022-31630) (cmb)
- Hash:
. Fixed bug #81738: buffer overflow in hash_update() on long parameter.
(CVE-2022-37454) (nicky at mouha dot be)
- Intl:
. Added pattern format error infos for numfmt_set_pattern. (David Carlier)
. Added MIXED_NUMBERS and HIDDEN_OVERLAY constants for
the Spoofchecker's class. (David Carlier)
. Updated datefmt_set_timezone/IntlDateformatter::setTimezone returns type.
(David Carlier).
. Updated IntlBreakInterator::setText return type. (David Carlier)
. Updated IntlChar::enumCharNames return type. (David Carlier)
- JSON:
. Added json_validate(). (Juan Morales)
- MBString:
. mb_detect_encoding is better able to identify the correct encoding for
Turkish text. (Alex Dowad)
. mb_detect_encoding's "non-strict" mode now behaves as described in the
documentation. Previously, it would return false if the same byte
(for example, the first byte) of the input string was invalid in all
candidate encodings. More generally, it would eliminate candidate
encodings from consideration when an invalid byte was seen, and if the
same input byte eliminated all remaining encodings still under
consideration, it would return false. On the other hand, if all candidate
encodings but one were eliminated from consideration, it would return the
last remaining one without regard for how many encoding errors might be
encountered later in the string. This is different from the behavior
described in the documentation, which says: "If strict is set to false,
the closest matching encoding will be returned." (Alex Dowad)
. mb_strtolower, mb_strtotitle, and mb_convert_case implement conditional
casing rules for the Greek letter sigma. For mb_convert_case, conditional
casing only applies to MB_CASE_LOWER and MB_CASE_TITLE modes, not to
MB_CASE_LOWER_SIMPLE and MB_CASE_TITLE_SIMPLE. (Alex Dowad)
. mb_detect_encoding is better able to identify UTF-8 and UTF-16 strings
with a byte-order mark. (Alex Dowad)
. mb_decode_mimeheader interprets underscores in QPrint-encoded MIME
encoded words as required by RFC 2047; they are converted to spaces.
Underscores must be encoded as "=5F" in such MIME encoded words.
(Alex Dowad)
. mb_encode_mimeheader no longer drops NUL (zero) bytes when
QPrint-encoding the input string. This previously caused strings in
certain text encodings, especially UTF-16 and UTF-32, to be
corrupted by mb_encode_mimeheader. (Alex Dowad)
- mysqli:
. mysqli_fetch_object raises a ValueError instead of an Exception.
(David Carlier)
- Opcache:
. Added start, restart and force restart time to opcache's
phpinfo section. (Mikhail Galanin)
. Fix GH-9139: Allow FFI in opcache.preload when opcache.preload_user=root.
(Arnaud, Kapitan Oczywisty)
. Made opcache.preload_user always optional in the cli and phpdbg SAPIs.
(Arnaud)
. Allows W/X bits on page creation on FreeBSD despite system settings.
(David Carlier)
. Added memfd api usage, on Linux, for zend_shared_alloc_create_lock()
to create an abstract anonymous file for the opcache's lock. (Max Kellermann)
- OpenSSL:
. Added OPENSSL_CMS_OLDMIMETYPE and PKCS7_NOOLDMIMETYPE contants to switch
between mime content types. (Daniel Kesselberg)
. Fixed GH-11054: Reset OpenSSL errors when using a PEM public key.
(Florian Moser)
- PCNTL:
. SA_ONSTACK is now set for pcntl_signal. (Kévin Dunglas)
. Added SIGINFO constant. (David Carlier)
- PGSQL:
. pg_fetch_object raises a ValueError instead of an Exception.
(David Carlier)
. Added GH-9344, pipeline mode support. (David Carlier)
. pg_cancel use thread safe PQcancel api instead. (David Carlier)
. pg_trace new PGSQL_TRACE_SUPPRESS_TIMESTAMPS/PGSQL_TRACE_REGRESS_MODE
contants support. (David Carlier)
. pg_set_error_verbosity adding PGSQL_ERRORS_STATE constant. (David Carlier)
. pg_convert/pg_insert E_WARNING on type errors had been converted to
ValueError/TypeError exceptions. (David Carlier)
. Added pg_set_error_context_visibility to set the context's visibility
within the error messages. (David Carlier)
- Phar:
. Fix memory leak in phar_rename_archive(). (stkeke)
- Posix:
. Added posix_sysconf. (David Carlier)
. Added posix_pathconf. (David Carlier)
. Added posix_fpathconf. (David Carlier)
. Fixed zend_parse_arg_long's bool pointer argument assignment. (Cristian Rodriguez)
. Added posix_eaccess. (David Carlier)
- Random:
. Added Randomizer::getBytesFromString(). (Joshua Rüsweg)
. Added Randomizer::nextFloat(), ::getFloat(), and IntervalBoundary. (timwolla)
. Fix GH-10292 (Made the default value of the first param of srand() and
mt_srand() nullable). (kocsismate)
. Enable getrandom() for NetBSD (from 10.x). (David Carlier)
- Reflection:
. Fix GH-9470 (ReflectionMethod constructor should not find private parent
method). (ilutov)
. Fix GH-10259 (ReflectionClass::getStaticProperties doesn't need null return
type). (kocsismate)
. Fix Segfault when using ReflectionFiber suspended by an internal function.
(danog)
- SAPI:
. Fixed GH-11141 (Could not open input file: should be sent to stderr).
(nielsdos)
- Sockets:
. Added SO_ATTACH_REUSEPORT_CBPF socket option, to give tighter control
over socket binding for a cpu core. (David Carlier)
. Added SKF_AD_QUEUE for cbpf filters. (David Carlier)
. Added socket_atmark if send/recv needs using MSG_OOB. (David Carlier)
. Added TCP_QUICKACK constant, to give tigher control over
ACK delays. (David Carlier)
. Added DONTFRAGMENT support for path MTU discovery purpose. (David Carlier)
. Added AF_DIVERT for raw socket for divert ports. (David Carlier)
. Added SOL_UPDLITE, UDPLITE_RECV_CSCOV and UDPLITE_SEND_CSCOV for updlite
protocol support. (David Carlier)
. Added SO_RERROR, SO_ZEROIZE and SO_SPLICE netbsd and openbsd constants.
(David Carlier)
. Added TCP_REPAIR for quietly close a connection. (David Carlier)
. Added SO_REUSEPORT_LB freebsd constant. (David Carlier)
. Added IP_BIND_ADDRESS_NO_PORT. (David Carlier)
- Standard:
. E_NOTICEs emitted by unserialize() have been promoted to E_WARNING. (timwolla)
. unserialize() now emits a new E_WARNING if the input contains unconsumed
bytes. (timwolla)
. Make array_pad's $length warning less confusing. (nielsdos)
. E_WARNING emitted by strtok in the caase both arguments are not provided when
starting tokenisation. (David Carlier)
. password_hash() will now chain the original RandomException to the ValueError
on salt generation failure. (timwolla)
. Fix GH-10239 (proc_close after proc_get_status always returns -1). (nielsdos)
. Improve the warning message for unpack() in case not enough values were
provided. (nielsdos)
. Fix GH-11010 (parse_ini_string() now preserves formatting of unquoted
strings starting with numbers when the INI_SCANNER_TYPED flag is
specified). (ilutov)
. Fix GH-10742 (http_response_code emits no error when headers were already
sent). (NattyNarwhal)
- Streams:
. Fixed bug #51056: blocking fread() will block even if data is available.
(Jakub Zelenka)
. Added storing of the original path used to open xport stream.
(Luc Vieillescazes)
- XSLTProcessor:
. Fixed bug #69168 (DomNode::getNodePath() returns invalid path). (nielsdos)
<<< NOTE: Insert NEWS from last stable release here prior to actual release! >>>