Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
7706 commits
Select commit Hold shift + click to select a range
4e7a041
Merge branch 'PHP-8.4' into PHP-8.5
alexandre-daubois Oct 12, 2026
3d3315d
Merge branch 'PHP-8.5' into PHP-8.6
alexandre-daubois Oct 12, 2026
53122ad
Merge branch 'PHP-8.6'
alexandre-daubois Oct 12, 2026
ae27423
ext/session: Close save handler when session encoding fails
iliaal Sep 30, 2026
80d2b99
Merge branch 'PHP-8.6'
iliaal Oct 12, 2026
cd383dc
pcre: only use FCC for preg_replace_callback functions (#24152)
Girgias Oct 12, 2026
8cc6af8
Merge branch 'PHP-8.4' into PHP-8.5
kamil-tekiela Oct 12, 2026
f9cf4fb
Merge branch 'PHP-8.5' into PHP-8.6
kamil-tekiela Oct 12, 2026
04c2058
Merge branch 'PHP-8.6'
kamil-tekiela Oct 12, 2026
0f0e663
Merge branch 'PHP-8.4' into PHP-8.5
arnaud-lb Oct 12, 2026
c5fcb96
Merge branch 'PHP-8.5' into PHP-8.6
arnaud-lb Oct 12, 2026
d96bf5d
Merge branch 'PHP-8.6'
arnaud-lb Oct 12, 2026
86cee66
Merge branch 'PHP-8.4' into PHP-8.5
LamentXU123 Oct 12, 2026
696ac1a
Merge branch 'PHP-8.5' into PHP-8.6
LamentXU123 Oct 12, 2026
897d209
Merge branch 'PHP-8.6'
LamentXU123 Oct 12, 2026
6529800
Merge branch 'PHP-8.4' into PHP-8.5
ndossche Oct 12, 2026
aac7c07
Merge branch 'PHP-8.5' into PHP-8.6
ndossche Oct 12, 2026
bd6c637
Merge branch 'PHP-8.6'
ndossche Oct 12, 2026
bbfdd69
Merge branch 'PHP-8.4' into PHP-8.5
devnexen Oct 12, 2026
f9b0def
Merge branch 'PHP-8.5' into PHP-8.6
devnexen Oct 12, 2026
10ad3d3
Merge branch 'PHP-8.6'
devnexen Oct 12, 2026
574ba5b
Zend: remove ZEND_LOG_XOR
Girgias Oct 12, 2026
8db886e
Zend: remove ZEND_TRUTH
Girgias Oct 12, 2026
59b790a
ext/session: remove dead !O_NOFOLLOW fallback (#24291)
jorgsowa Oct 13, 2026
7f0dd14
ext/intl: Remove dead code (#24292)
LamentXU123 Oct 13, 2026
06c95e7
Merge branch 'PHP-8.4' into PHP-8.5
ndossche Oct 13, 2026
9b7efbc
Merge branch 'PHP-8.5' into PHP-8.6
ndossche Oct 13, 2026
41256a0
Merge branch 'PHP-8.6'
ndossche Oct 13, 2026
4c3d446
Fix GH-24270: JIT loses called scope of self::/parent:: in closures
RV7PR Oct 13, 2026
7ad0a5e
Merge branch 'PHP-8.5' into PHP-8.6
ndossche Oct 13, 2026
539723e
Merge branch 'PHP-8.6'
ndossche Oct 13, 2026
b04cd86
Merge branch 'PHP-8.4' into PHP-8.5
LamentXU123 Oct 13, 2026
bd53a71
Merge branch 'PHP-8.5' into PHP-8.6
LamentXU123 Oct 13, 2026
3331b9d
Merge branch 'PHP-8.6'
LamentXU123 Oct 13, 2026
f1b9b1a
Fix: SIGN_EXTENSION (#24258)
ushevchenko Oct 13, 2026
f2a7cb8
Merge branch 'PHP-8.4' into PHP-8.5
iliaal Oct 13, 2026
5ede5b1
Merge branch 'PHP-8.5' into PHP-8.6
iliaal Oct 13, 2026
be2ece9
Merge branch 'PHP-8.6'
iliaal Oct 13, 2026
c65321c
session: close the save handler before session_reset() reopens it (#2…
iliaal Oct 13, 2026
b9a0228
ext/session: reject cookie separators in cookie_path and cookie_domai…
iliaal Oct 14, 2026
9e0e606
std: loop through parent entries prior to setting the return value (#…
Girgias Oct 14, 2026
97a5812
ext/sqlite3: user zend_string* instead of char* for extension global …
Girgias Oct 14, 2026
8070591
Merge branch 'PHP-8.4' into PHP-8.5
shivammathur Oct 14, 2026
8d1b544
Merge branch 'PHP-8.5' into PHP-8.6
shivammathur Oct 14, 2026
62ba9e6
Merge branch 'PHP-8.6'
shivammathur Oct 14, 2026
039ba5a
Merge branch 'PHP-8.4' into PHP-8.5
shivammathur Oct 14, 2026
6b8948f
Merge branch 'PHP-8.5' into PHP-8.6
shivammathur Oct 14, 2026
8612ae2
Merge branch 'PHP-8.6'
shivammathur Oct 14, 2026
9dc727a
Merge branch 'PHP-8.4' into PHP-8.5
shivammathur Oct 14, 2026
fa077a2
Merge branch 'PHP-8.5' into PHP-8.6
shivammathur Oct 14, 2026
8100adb
Merge branch 'PHP-8.6'
shivammathur Oct 14, 2026
d8d55b7
ext/pdo: Report $options as the argument for constructor option errors
iliaal Oct 13, 2026
ea6fb37
Merge branch 'PHP-8.5' into PHP-8.6
iliaal Oct 14, 2026
41ea9d3
Merge branch 'PHP-8.6'
iliaal Oct 14, 2026
cb491da
ext/session: remove test made unreachable by cookie attribute validat…
jorgsowa Oct 14, 2026
3952ee0
ext/readline: Remove unreachable branches and useless includes (#24318)
LamentXU123 Oct 14, 2026
d11cbf8
Fix array_map() optimization not resolving the class name of a static…
claudiodekker Oct 14, 2026
036c7cc
Merge branch 'PHP-8.6'
arnaud-lb Oct 14, 2026
e58c191
ext/standard: Check for UTF-8 first when resolving the charset of htm…
nicolas-grekas Oct 14, 2026
5b765f4
ext/standard: Return the input of htmlspecialchars() when nothing nee…
nicolas-grekas Oct 14, 2026
2544d0b
ext/curl: post multiple similarly-named files (#22740)
Sjord Oct 14, 2026
23bb1c9
Fix stream_select() failing unpredictably with many or large descript…
frodeborli Oct 14, 2026
b1a3a4e
Merge branch 'PHP-8.4' into PHP-8.5
Girgias Oct 14, 2026
3e458e5
Merge branch 'PHP-8.5' into PHP-8.6
Girgias Oct 14, 2026
c43f5a6
Merge branch 'PHP-8.6'
Girgias Oct 14, 2026
89561c8
ext/session: simplify temp directory handling in tests (#24312)
jorgsowa Oct 14, 2026
0310851
[skip ci] Fix typos in PHP internal documentation (#24334)
Rafiaminhaj Oct 14, 2026
b2163be
Clear the libxml last error in libxml_use_internal_errors(false)
lacatoire Oct 13, 2026
1439349
tree: use zend_string API when possible (#24330)
Girgias Oct 14, 2026
4072179
Zend: move type tests to common folder and add some more
Girgias Sep 19, 2026
f99f5c4
Zend: improve error message when using array or callable as types wit…
Girgias Sep 19, 2026
02f9b96
Zend: merge reserved_class_name and builtin_type_info structs
Girgias Sep 19, 2026
6e7d706
Merge branch 'PHP-8.4' into PHP-8.5
Girgias Oct 15, 2026
1c4c10d
Merge branch 'PHP-8.5' into PHP-8.6
Girgias Oct 15, 2026
eec8328
Merge branch 'PHP-8.6'
Girgias Oct 15, 2026
0b98263
Merge branch 'PHP-8.4' into PHP-8.5
devnexen Oct 15, 2026
7706c57
Merge branch 'PHP-8.5' into PHP-8.6
devnexen Oct 15, 2026
4f346fc
Merge branch 'PHP-8.6'
devnexen Oct 15, 2026
6549fbe
Merge branch 'PHP-8.4' into PHP-8.5
shivammathur Oct 15, 2026
3abcf4b
Merge branch 'PHP-8.5' into PHP-8.6
shivammathur Oct 15, 2026
688d0fe
Merge branch 'PHP-8.6'
shivammathur Oct 15, 2026
22b98e1
Merge branch 'PHP-8.4' into PHP-8.5
shivammathur Oct 15, 2026
bb9b4a4
Merge branch 'PHP-8.5' into PHP-8.6
shivammathur Oct 15, 2026
1cc5591
Merge branch 'PHP-8.6'
shivammathur Oct 15, 2026
fabae63
Verify bundled sources using CI - xxHash (#24243)
mvorisek Oct 15, 2026
fe8fff8
Verify bundled sources using CI - XSSE (#24070)
mvorisek Oct 15, 2026
e3ff9f1
Fix memory leak in array_map optimization (#24138)
adapik Oct 15, 2026
da054f4
Merge branch 'PHP-8.6'
arnaud-lb Oct 15, 2026
3efeb2a
ext/standard: Simplify type alias handling in settype() (#24348)
LamentXU123 Oct 15, 2026
58a3ab5
Merge branch 'PHP-8.4' into PHP-8.5
ndossche Oct 15, 2026
604cbf9
Merge branch 'PHP-8.5' into PHP-8.6
ndossche Oct 15, 2026
eacde32
Merge branch 'PHP-8.6'
ndossche Oct 15, 2026
fabcc91
JIT: Fold IS_UNDEF check into dereference of typed property reads for…
ndossche Oct 15, 2026
57a90a3
JIT: implement empty($cv) fast path in function & tracing JIT (#24239)
ndossche Oct 15, 2026
5828413
Merge branch 'PHP-8.4' into PHP-8.5
arnaud-lb Oct 15, 2026
d4265ca
Merge branch 'PHP-8.5' into PHP-8.6
arnaud-lb Oct 15, 2026
8ba5aa7
Merge branch 'PHP-8.6'
arnaud-lb Oct 15, 2026
0f6efeb
Merge branch 'PHP-8.4' into PHP-8.5
iliaal Oct 15, 2026
1fa14b0
Merge branch 'PHP-8.5' into PHP-8.6
iliaal Oct 15, 2026
9603591
Merge branch 'PHP-8.6'
iliaal Oct 15, 2026
ed15452
Fix -Wtype-limits warnings in ext/zip string source (#24347)
marc-mabe Oct 15, 2026
6ee6f67
Merge branch 'PHP-8.4' into PHP-8.5
ndossche Oct 15, 2026
c51f4e1
Merge branch 'PHP-8.5' into PHP-8.6
ndossche Oct 15, 2026
49087bd
Merge branch 'PHP-8.6'
ndossche Oct 15, 2026
0b4a5a8
Fix GCC 15 -Walloc-size warnings in ext/ffi (#24344)
marc-mabe Oct 15, 2026
cdde0c4
Fix test expectation
ndossche Oct 15, 2026
f466d4f
Merge branch 'PHP-8.5' into PHP-8.6
ndossche Oct 15, 2026
de7ff46
Merge branch 'PHP-8.6'
ndossche Oct 15, 2026
de6f052
Zend: add zend_cannot_instantiate_class() (#24336)
Girgias Oct 15, 2026
da4e0ad
Merge branch 'PHP-8.4' into PHP-8.5
ndossche Oct 16, 2026
710a135
Merge branch 'PHP-8.5' into PHP-8.6
ndossche Oct 16, 2026
6a02262
Merge branch 'PHP-8.6'
ndossche Oct 16, 2026
ab5e4d7
date: Validate nanoseconds range and reject negative zero duration (#…
adapik Oct 16, 2026
90a271f
date: Validate ISO 8601 duration strings for null bytes early (#24357)
adapik Oct 16, 2026
1c9242e
Merge branch 'PHP-8.6'
TimWolla Oct 16, 2026
1ef29ab
Merge branch 'PHP-8.4' into PHP-8.5
LamentXU123 Oct 16, 2026
6cbd3dc
Merge branch 'PHP-8.5' into PHP-8.6
LamentXU123 Oct 16, 2026
3c6e28f
Merge branch 'PHP-8.6'
LamentXU123 Oct 16, 2026
2fc1d48
Merge branch 'PHP-8.4' into PHP-8.5
devnexen Oct 16, 2026
65b4fb4
Merge branch 'PHP-8.5' into PHP-8.6
devnexen Oct 16, 2026
0187ff1
Merge branch 'PHP-8.6'
devnexen Oct 16, 2026
fda3cb0
ext/standard: Use fast ZPP in levenshtein() (#24369)
LamentXU123 Oct 16, 2026
03c5ad7
JIT: Fix TLS access with SHM reattachment (#24355)
arnaud-lb Oct 16, 2026
6a663a5
Merge branch 'PHP-8.5' into PHP-8.6
arnaud-lb Oct 16, 2026
0793cf5
Merge branch 'PHP-8.6'
arnaud-lb Oct 16, 2026
b94db20
Merge branch 'PHP-8.4' into PHP-8.5
jorgsowa Oct 16, 2026
c667118
Merge branch 'PHP-8.5' into PHP-8.6
jorgsowa Oct 16, 2026
1c4a8ad
Merge branch 'PHP-8.6'
jorgsowa Oct 16, 2026
6e4082b
ext/session: Open session files with O_CLOEXEC (#24376)
jorgsowa Oct 16, 2026
070ce2f
Zend: move zend_empty_array to BEGIN_EXTERN_C section
Girgias Oct 16, 2026
5ccc56b
ext/pdo_pgsql: Speed up the SQL scanner
brainexe Oct 17, 2026
37c4f13
Merge branch 'PHP-8.4' into PHP-8.5
jorgsowa Oct 17, 2026
bcd98e0
Merge branch 'PHP-8.5' into PHP-8.6
jorgsowa Oct 17, 2026
6e8aad5
Merge branch 'PHP-8.6'
jorgsowa Oct 17, 2026
d4e0d68
Merge branch 'PHP-8.4' into PHP-8.5
iluuu1994 Oct 18, 2026
8c17f1e
Merge branch 'PHP-8.5' into PHP-8.6
iluuu1994 Oct 18, 2026
17b6575
Merge branch 'PHP-8.6'
iluuu1994 Oct 18, 2026
9874dcc
Merge branch 'PHP-8.4' into PHP-8.5
ndossche Oct 18, 2026
f516162
Merge branch 'PHP-8.5' into PHP-8.6
ndossche Oct 18, 2026
b5740f9
Merge branch 'PHP-8.6'
ndossche Oct 18, 2026
a92837c
Merge branch 'PHP-8.4' into PHP-8.5
ndossche Oct 18, 2026
3e6f8ac
Merge branch 'PHP-8.5' into PHP-8.6
ndossche Oct 18, 2026
a42c06e
Merge branch 'PHP-8.6'
ndossche Oct 18, 2026
8450def
Merge branch 'PHP-8.4' into PHP-8.5
ndossche Oct 18, 2026
3f9f09e
Merge branch 'PHP-8.5' into PHP-8.6
ndossche Oct 18, 2026
a8bbfb8
Merge branch 'PHP-8.6'
ndossche Oct 18, 2026
f40a84c
Optimize str_repeat (#23128)
divinity76 Oct 18, 2026
6044aee
Merge branch 'PHP-8.4' into PHP-8.5
devnexen Oct 18, 2026
e0a2924
Merge branch 'PHP-8.5' into PHP-8.6
devnexen Oct 18, 2026
529a11e
Merge branch 'PHP-8.6'
devnexen Oct 18, 2026
f0e88c7
ext/intl: Add Transliterator::toRules() (#24384)
LamentXU123 Oct 18, 2026
cd58334
ext/curl: speed up tests (#23228)
Sjord Oct 18, 2026
758abd5
Zend: fix find_frameless_function_offset() walking past the handler a…
devnexen Oct 18, 2026
e20094b
readline: add some trampoline tests
Girgias Oct 16, 2026
2dee71f
readline: store callbacks as FCCs
Girgias Oct 14, 2026
37e3789
Merge branch 'PHP-8.4' into PHP-8.5
shivammathur Oct 18, 2026
7d29eb0
Merge branch 'PHP-8.5' into PHP-8.6
shivammathur Oct 18, 2026
eaafc82
Merge branch 'PHP-8.6'
shivammathur Oct 18, 2026
c24f7ec
Merge branch 'PHP-8.4' into PHP-8.5
Girgias Oct 18, 2026
37c5559
Merge branch 'PHP-8.5' into PHP-8.6
Girgias Oct 18, 2026
9253b03
Merge branch 'PHP-8.6'
Girgias Oct 18, 2026
fc5cafd
ext/standard/basic_functions.c: return bool instead of int for ignore…
Girgias Nov 29, 2025
8639e75
ext/standard/basic_functions.c: return bool instead of int for connec…
Girgias Nov 29, 2025
fd8da80
ext/standard/basic_functions.c: handle time_nanosleep() inputs ahead …
Girgias Nov 29, 2025
381cdd7
ext/standard/basic_functions.c: perform basic input checks for ip2long()
Girgias Nov 29, 2025
da9d79a
ci: fix MSAN/PowerPC nightly CI
Girgias Oct 18, 2026
73d069e
Merge branch 'PHP-8.6'
Girgias Oct 18, 2026
85d60b6
Revert 37c5559858f359de409786afb8e54775f719d705
Girgias Oct 18, 2026
4229232
Merge branch 'PHP-8.6'
Girgias Oct 18, 2026
602ba3a
Fix posix_setrlimit() rejecting POSIX_RLIMIT_INFINITY on Solaris
jorgsowa Oct 16, 2026
065b826
Merge branch 'PHP-8.5' into PHP-8.6
jorgsowa Oct 18, 2026
0ae187d
Merge branch 'PHP-8.6'
jorgsowa Oct 18, 2026
6ccd133
Also remove zend_test as a required extension???
Girgias Oct 18, 2026
08fecf6
Merge branch 'PHP-8.6'
Girgias Oct 18, 2026
dbeb8a7
Merge branch 'PHP-8.4' into PHP-8.5
iliaal Oct 18, 2026
8d8029e
Merge branch 'PHP-8.6'
iliaal Oct 18, 2026
73d2da7
Merge branch 'PHP-8.5' into PHP-8.6
iliaal Oct 18, 2026
b7256ee
Improve posix_setrlimit() limit error message (#24417)
jorgsowa Oct 18, 2026
4bb88e0
Fix -Wint-to-pointer-cast warnings in the CALL VM on 32-bit (#24360)
marc-mabe Oct 19, 2026
5089b1c
Merge branch 'PHP-8.5' into PHP-8.6
arnaud-lb Oct 19, 2026
090c7c1
Merge branch 'PHP-8.6'
arnaud-lb Oct 19, 2026
6277778
Zend: Compile a list assignment from an array literal without the arr…
ArtUkrainskiy Oct 19, 2026
a2d7bd6
Merge branch 'PHP-8.4' into PHP-8.5
jorgsowa Oct 19, 2026
286bc3c
Merge branch 'PHP-8.5' into PHP-8.6
jorgsowa Oct 19, 2026
6885c8e
Merge branch 'PHP-8.6' into master
jorgsowa Oct 19, 2026
a0d15e5
fix GH-24262: default apache build to global-dynamic TLS (#24301)
henderkes Oct 19, 2026
0c4b6bd
Merge branch 'PHP-8.6'
arnaud-lb Oct 19, 2026
0694e58
Merge branch 'PHP-8.4' into PHP-8.5
jorgsowa Oct 19, 2026
7606267
Merge branch 'PHP-8.5' into PHP-8.6
jorgsowa Oct 19, 2026
d4166c3
Merge branch 'PHP-8.6'
jorgsowa Oct 19, 2026
d017f94
Zend ini small refactor (#24324)
jorgsowa Oct 19, 2026
5bdc5d6
Zend: pack _zend_ini_scanner_globals struct
Girgias Sep 24, 2026
62db5bc
Zend: pack _zend_php_scanner_globals struct
Girgias Sep 24, 2026
8e6a5f9
Zend: define a zend_ini_scanner_mode enum
Girgias Sep 24, 2026
f7c1a38
Zend: redefine scanner_mode type to be zend_ini_scanner_mode
Girgias Sep 24, 2026
3d84b8f
Zend: voidify init_ini_scanner()
Girgias Sep 24, 2026
8db89af
ext/intl: Remove redundant SKIPIF checks from intl tests (#24416)
LamentXU123 Oct 19, 2026
c5093f7
CI: Fix gh20532.phpt on FreeBSD (#24424)
LamentXU123 Oct 19, 2026
a4b3811
Re-apply 2998188948138035bfc8619d56d2cf34d3dd35dc
Girgias Oct 19, 2026
0918297
Merge branch 'PHP-8.6'
Girgias Oct 19, 2026
ddc5a62
Merge branch 'PHP-8.4' into PHP-8.5
ndossche Oct 19, 2026
91281f8
Merge branch 'PHP-8.5' into PHP-8.6
ndossche Oct 19, 2026
6391979
Merge branch 'PHP-8.6'
ndossche Oct 19, 2026
a14b9f3
ext/intl: Add IntlNumberFormatter skeleton based formatter.
devnexen Oct 19, 2026
6773993
openssl: add trampoline test for reneg_limit_callback option
Girgias Oct 18, 2026
1f29f47
openssl: check if reneg_limit_callback is callable prior to calling
Girgias Oct 18, 2026
7aa5a01
Merge branch 'PHP-8.4' into PHP-8.5
iliaal Oct 19, 2026
f0798b5
Merge branch 'PHP-8.5' into PHP-8.6
iliaal Oct 19, 2026
97ba5d8
Merge branch 'PHP-8.6'
iliaal Oct 19, 2026
df30187
`php_ftp_fopen_connect()`: Confirm no extra commands are smuggled in …
DanielEScherzer Oct 19, 2026
3115bd9
Merge branch 'PHP-8.6'
DanielEScherzer Oct 19, 2026
59b1db2
Merge branch 'PHP-8.4' into PHP-8.5
ndossche Oct 19, 2026
aad2a2d
Merge branch 'PHP-8.5' into PHP-8.6
ndossche Oct 19, 2026
54ac0b9
Merge branch 'PHP-8.6'
ndossche Oct 19, 2026
c9c76d6
Merge branch 'PHP-8.4' into PHP-8.5
ndossche Oct 19, 2026
ee37469
Merge branch 'PHP-8.5' into PHP-8.6
ndossche Oct 19, 2026
d4bef72
Merge branch 'PHP-8.6'
ndossche Oct 19, 2026
4c6bf5f
LiteSpeed: document security considerations for INI overrides (#23806)
DanielEScherzer Oct 19, 2026
2cd89eb
Merge branch 'PHP-8.6'
DanielEScherzer Oct 19, 2026
bbed764
Merge branch 'PHP-8.4' into PHP-8.5
ndossche Oct 19, 2026
9db9405
Merge branch 'PHP-8.5' into PHP-8.6
ndossche Oct 19, 2026
9471a18
Merge branch 'PHP-8.6'
ndossche Oct 19, 2026
857ac7f
ext/phar: add upper-bound check on LongLink entry size (#24423)
crystarm Oct 19, 2026
1e8e679
GH-23686: Add regression tests for sensitive headers
DanielEScherzer Sep 16, 2026
c187341
`sdl_set_uri_credentials()`: use early returns to improve readability
DanielEScherzer Sep 16, 2026
1b6e96c
ext/soap: redact more sensitive headers
DanielEScherzer Sep 16, 2026
68aa337
SoapClient: add new `keep_headers` option
DanielEScherzer Sep 16, 2026
1979890
Merge branch 'PHP-8.6'
DanielEScherzer Oct 19, 2026
7017e83
Backport CI: Fix gh20532.phpt on FreeBSD (#24424)
LamentXU123 Oct 20, 2026
a17dcad
Merge branch 'PHP-8.6'
LamentXU123 Oct 20, 2026
ccd446f
ext/uri: Refactors builder error handling (#23834)
NickSdot Oct 20, 2026
4526719
Merge branch 'PHP-8.6'
kocsismate Oct 20, 2026
6947fe1
Merge branch 'PHP-8.4' into PHP-8.5
iliaal Oct 20, 2026
c122224
Merge branch 'PHP-8.5' into PHP-8.6
iliaal Oct 20, 2026
e8ecd20
Merge branch 'PHP-8.6'
iliaal Oct 20, 2026
95ed6c1
ext/uri: Fixes url delimiters (#23815)
NickSdot Oct 20, 2026
3a3f50a
Merge branch 'PHP-8.6'
kocsismate Oct 20, 2026
a82d55c
Merge branch 'PHP-8.4' into PHP-8.5
ndossche Oct 20, 2026
6a95dbc
Merge branch 'PHP-8.5' into PHP-8.6
ndossche Oct 20, 2026
1f78899
Merge branch 'PHP-8.6'
ndossche Oct 20, 2026
cab84f8
ext/gd: Fix imagewebp() return value for palette images
arshidkv12 Oct 20, 2026
62c3ea2
Merge branch 'PHP-8.4' into PHP-8.5
arnaud-lb Oct 20, 2026
a558c9b
Merge branch 'PHP-8.5' into PHP-8.6
arnaud-lb Oct 20, 2026
6312c10
Merge branch 'PHP-8.6'
arnaud-lb Oct 20, 2026
45766b7
std: throw ValueError on invalid INI scanner mode (#24429)
Girgias Oct 20, 2026
2f7b01b
Zend: always populate error pointer on failure of zend_is_callable() …
Girgias Oct 20, 2026
73e2bad
Fix glob() not negating bracket expressions that start with "^" (#24422)
nicolas-grekas Oct 20, 2026
c204803
Merge branch 'PHP-8.5' into PHP-8.6
LamentXU123 Oct 20, 2026
b9ea38e
Merge branch 'PHP-8.6'
LamentXU123 Oct 20, 2026
487b1ab
Merge branch 'master' into gd-gdImageTrueColor
arshidkv12 Oct 20, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
8 changes: 3 additions & 5 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ jobs:
arm:
resource_class: arm.medium
docker:
- image: cimg/base:current-22.04
- image: cimg/base:current-24.04
- image: mysql:8.4
environment:
MYSQL_ALLOW_EMPTY_PASSWORD: true
Expand Down Expand Up @@ -60,7 +60,7 @@ jobs:
libreadline-dev \
libldap2-dev \
libsodium-dev \
libargon2-0-dev \
libargon2-dev \
libmm-dev \
libsnmp-dev \
snmpd \
Expand All @@ -78,7 +78,7 @@ jobs:
libqdbm-dev \
libjpeg-dev \
libpng-dev \
libfreetype6-dev
libfreetype-dev
- run:
name: ./configure
command: |
Expand All @@ -90,7 +90,6 @@ jobs:
--prefix=/usr \
--enable-phpdbg \
--enable-fpm \
--enable-opcache \
--with-pdo-mysql=mysqlnd \
--with-mysqli=mysqlnd \
--with-pgsql \
Expand Down Expand Up @@ -169,7 +168,6 @@ jobs:
command: |
export RUN_RESOURCE_HEAVY_TESTS=1
sapi/cli/php run-tests.php \
-d zend_extension=opcache.so \
-d opcache.enable_cli=1 \
-d opcache.jit_buffer_size=64M \
-d opcache.jit=tracing \
Expand Down
4 changes: 4 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -32,3 +32,7 @@ max_line_length = 80

[*.patch]
trim_trailing_whitespace = false

[*.rst]
indent_style = space
max_line_length = 100
6 changes: 4 additions & 2 deletions .gitattributes
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,8 @@

# Collapse generated files within git and pull request diff.
**/*_arginfo.h linguist-generated -diff
/main/gdb_inlined_script.c linguist-generated -diff
**/*_decl.h linguist-generated -diff
/main/debug_gdb_scripts.c linguist-generated -diff
/Zend/zend_vm_execute.h linguist-generated -diff
/Zend/zend_vm_handlers.h linguist-generated -diff
/Zend/zend_vm_opcodes.[ch] linguist-generated -diff
Expand All @@ -30,4 +31,5 @@
/ext/date/tests/ossfuzz*.txt binary

# Vendored libraries
/ext/dom/lexbor/lexbor linguist-vendored
/ext/lexbor/lexbor linguist-vendored
/ext/uri/uriparser linguist-vendored
4 changes: 3 additions & 1 deletion .github/CODEOWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@

/.github @TimWolla
/build/gen_stub.php @kocsismate
/ext/bcmath @Girgias @SakiTakamachi
/ext/bcmath @SakiTakamachi
/ext/curl @adoy
/ext/date @derickr
/ext/dba @Girgias
Expand All @@ -28,6 +28,7 @@
/ext/intl @devnexen @LamentXU123
/ext/libxml @devnexen
/ext/json @bukka
/ext/lexbor @kocsismate
/ext/mbstring @alexdowad @youkidearitai
/ext/mysqli @bukka @kamil-tekiela
/ext/mysqlnd @bukka @kamil-tekiela @SakiTakamachi
Expand All @@ -53,6 +54,7 @@
/ext/sockets @devnexen
/ext/spl @Girgias
/ext/standard @bukka
/ext/uri @kocsismate @TimWolla
/ext/xml @devnexen
/ext/xmlreader @devnexen
/ext/xmlwriter @devnexen
Expand Down
17 changes: 13 additions & 4 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,15 +22,24 @@ body:
```
validations:
required: true
- type: input
- type: textarea
attributes:
label: PHP Version
description: "The used PHP version. Make sure it is [supported](https://www.php.net/supported-versions.php)."
placeholder: "PHP 8.0.12"
description: |
Please run PHP with the `-v` flag (e.g. `php -v`, `php8.5 -v`, `php-fpm -v` or similar) and provide the full output of that command. If executing that command is not possible, please provide the full version number as given in PHPInfo.

Please make sure that the used PHP version [is a supported version](https://www.php.net/supported-versions.php).
placeholder: |
PHP 8.5.2 (cli) (built: Jan 21 2026 17:35:28) (NTS)
Copyright © The PHP Group and Contributors
Built by Ubuntu
Zend Engine v4.5.2, Copyright © Zend by Perforce
with Zend OPcache v8.5.2, Copyright ©, Zend by Perforce
render: plain
validations:
required: true
- type: input
attributes:
label: Operating System
description: "The used operating system, if relevant."
placeholder: "Ubuntu 20.04"
placeholder: "Ubuntu 24.04"
4 changes: 1 addition & 3 deletions .github/actions/apt-x32/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,13 +35,11 @@ runs:
libsodium-dev:i386 \
libsqlite3-dev:i386 \
libssl-dev:i386 \
libtidy-dev:i386 \
libwebp-dev:i386 \
libxml2-dev:i386 \
libxml2-dev:i386 \
libxpm-dev:i386 \
libxslt1-dev:i386 \
libzip-dev:i386 \
firebird-dev:i386 \
locales \
make \
pkg-config:i386 \
Expand Down
6 changes: 4 additions & 2 deletions .github/actions/brew/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,8 @@ runs:
tidy-html5 \
libzip \
libsodium \
icu4c
icu4c \
curl
brew install -v \
bison \
re2c
Expand All @@ -35,4 +36,5 @@ runs:
libxml2 \
libjpeg \
libxslt \
openssl@3
openssl@4
brew link --force --overwrite openssl@4
2 changes: 1 addition & 1 deletion .github/actions/configure-macos/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ runs:
set -x
BREW_OPT="$(brew --prefix)"/opt
export PATH="$BREW_OPT/bison/bin:$PATH"
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:$BREW_OPT/openssl@3/lib/pkgconfig"
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:$BREW_OPT/openssl@4/lib/pkgconfig"
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:$BREW_OPT/curl/lib/pkgconfig"
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:$BREW_OPT/libffi/lib/pkgconfig"
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:$BREW_OPT/libxml2/lib/pkgconfig"
Expand Down
10 changes: 10 additions & 0 deletions .github/actions/configure-unit-tests/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
name: ./configure (unit tests)
description: Configure PHP with minimal settings for unit testing
runs:
using: composite
steps:
- shell: bash
run: |
set -x
./buildconf --force
./configure --disable-all --enable-embed=static
4 changes: 2 additions & 2 deletions .github/actions/configure-x32/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ runs:
run: |
set -x

export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:/usr/lib/i386-linux-gnu/pkgconfig"
./buildconf --force
export CFLAGS="-m32 -msse2"
export CXXFLAGS="-m32 -msse2"
Expand All @@ -26,19 +27,18 @@ runs:
--with-pgsql \
--with-pdo-pgsql \
--with-pdo-sqlite \
--with-pdo-firebird \
--without-pear \
--enable-gd \
--with-jpeg \
--with-webp \
--with-freetype \
--with-xpm \
--enable-exif \
--with-zip \
--with-zlib \
--enable-soap \
--enable-xmlreader \
--with-xsl \
--with-tidy \
--enable-sysvsem \
--enable-sysvshm \
--enable-shmop \
Expand Down
9 changes: 3 additions & 6 deletions .github/actions/freebsd/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ runs:
pkgconf \
webp \
libavif \
`#sqlite3` \
sqlite3 \
curl \
$OPCACHE_TLS_TESTS_DEPS

Expand All @@ -57,9 +57,7 @@ runs:
--enable-debug \
--enable-option-checking=fatal \
--enable-fpm \
`#--with-pdo-sqlite` \
--without-sqlite3 \
--without-pdo-sqlite \
--with-pdo-sqlite \
--without-pear \
--with-bz2 \
--with-avif \
Expand Down Expand Up @@ -115,8 +113,7 @@ runs:
--offline \
--show-diff \
--show-slow 1000 \
--set-timeout 120 \
-d zend_extension=opcache.so
--set-timeout 120

if test "${{ inputs.runExtraTests }}" = "true"; then
sapi/cli/php run-extra-tests.php
Expand Down
2 changes: 1 addition & 1 deletion .github/actions/setup-mssql/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,4 @@ runs:
-p 1433:1433 \
--name sql1 \
-h sql1 \
-d mcr.microsoft.com/mssql/server:2022-CU14-ubuntu-22.04
-d mcr.microsoft.com/mssql/server:2025-latest
2 changes: 1 addition & 1 deletion .github/actions/test-alpine/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ runs:
export SKIP_IO_CAPTURE_TESTS=1
export STACK_LIMIT_DEFAULTS_CHECK=1
sapi/cli/php run-tests.php -P -q ${{ inputs.runTestsParameters }} \
${{ inputs.enableOpcache == 'true' && '-d zend_extension=opcache.so -d opcache.enable_cli=1' || '' }} \
${{ inputs.enableOpcache == 'true' && '-d opcache.enable_cli=1' || '' }} \
-d opcache.jit=${{ inputs.jitType }} \
-d opcache.jit_buffer_size=64M \
-j$(nproc) \
Expand Down
6 changes: 4 additions & 2 deletions .github/actions/test-linux/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,9 @@ runs:
export PDO_PGSQL_TEST_DSN="pgsql:host=localhost port=5432 dbname=test user=postgres password=postgres"
fi
export PDO_FIREBIRD_TEST_DATABASE=test.fdb
export PDO_FIREBIRD_TEST_DSN=firebird:dbname=localhost:test.fdb
if [[ -z "$PDO_FIREBIRD_TEST_DSN" ]]; then
export PDO_FIREBIRD_TEST_DSN=firebird:dbname=localhost:test.fdb
fi
export PDO_FIREBIRD_TEST_PASS=test
export PDO_FIREBIRD_TEST_USER=test
export ODBC_TEST_USER="odbc_test"
Expand All @@ -44,7 +46,7 @@ runs:
export STACK_LIMIT_DEFAULTS_CHECK=1
export RUN_RESOURCE_HEAVY_TESTS=1
sapi/cli/php run-tests.php -P -q ${{ inputs.runTestsParameters }} \
${{ inputs.enableOpcache == 'true' && '-d zend_extension=opcache.so -d opcache.enable_cli=1' || '' }} \
${{ inputs.enableOpcache == 'true' && '-d opcache.enable_cli=1' || '' }} \
-d opcache.jit=${{ inputs.jitType }} \
-d opcache.protect_memory=1 \
-d opcache.jit_buffer_size=64M \
Expand Down
2 changes: 1 addition & 1 deletion .github/actions/test-macos/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ runs:
export STACK_LIMIT_DEFAULTS_CHECK=1
export RUN_RESOURCE_HEAVY_TESTS=1
sapi/cli/php run-tests.php -P -q ${{ inputs.runTestsParameters }} \
${{ inputs.enableOpcache == 'true' && '-d zend_extension=opcache.so -d opcache.enable_cli=1' || '' }} \
${{ inputs.enableOpcache == 'true' && '-d opcache.enable_cli=1' || '' }} \
-d opcache.jit=${{ inputs.jitType }} \
-d opcache.protect_memory=1 \
-d opcache.jit_buffer_size=64M \
Expand Down
4 changes: 2 additions & 2 deletions .github/actions/verify-generated-files/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@ runs:
Zend/zend_vm_gen.php
ext/tokenizer/tokenizer_data_gen.php
build/gen_stub.php -f --generate-optimizer-info --verify
# Use the -a flag for a bug in git 2.46.0, which doesn't consider changed -diff files.
git add . -N && git diff -a --exit-code
ext/phar/makestub.php
.github/scripts/test-directory-unchanged.sh .
19 changes: 18 additions & 1 deletion .github/labeler.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,18 @@
- scripts/**/*
- win32/build/**/*

"Category: CI":
- changed-files:
- any-glob-to-any-file:
- .circleci/*
- .github/actions/**/*
- .github/scripts/**/*
- .github/workflows/*
- .github/CODEOWNERS
- .github/labeler.yml
- .github/setup_hmailserver.php
- .github/matrix.php

"Extension: bcmath":
- changed-files:
- any-glob-to-any-file:
Expand Down Expand Up @@ -320,6 +332,11 @@
- any-glob-to-any-file:
- ext/tokenizer/**/*

"Extension: uri":
- changed-files:
- any-glob-to-any-file:
- ext/uri/**/*

"Extension: xml":
- changed-files:
- any-glob-to-any-file:
Expand Down Expand Up @@ -464,7 +481,6 @@
- 'ext/pdo/php_pdo.h'
- 'ext/pdo/php_pdo_driver.h'
- 'ext/pdo/php_pdo_error.h'
- 'ext/phar/php_phar.h'
- 'ext/random/php_random.h'
- 'ext/random/php_random_csprng.h'
- 'ext/random/php_random_uint128.h'
Expand All @@ -488,6 +504,7 @@
- 'ext/spl/spl_iterators.h'
- 'ext/spl/spl_observer.h'
- 'ext/standard/*.h'
- 'ext/uri/*.h'
- 'ext/xml/expat_compat.h'
- 'ext/xml/php_xml.h'
- 'main/*.h'
Expand Down
1 change: 1 addition & 0 deletions .github/lsan-suppressions.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
leak:acommon::DictInfoList::elements
leak:timer_create
leak:netsnmp_init_mib_internals
leak:isc_attach_database
1 change: 1 addition & 0 deletions .github/scripts/download-bundled/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
!*.patch
43 changes: 43 additions & 0 deletions .github/scripts/download-bundled/boost-context.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
#!/bin/sh
set -ex
cd "$(dirname "$0")/../../.."

tmp_dir=/tmp/php-src-download-bundled/boost-context
rm -rf "$tmp_dir"

revision=refs/tags/boost-1.91.0

git clone --depth 1 --revision="$revision" https://github.com/boostorg/context.git "$tmp_dir"

rm -rf Zend/asm
cp -R "$tmp_dir"/src/asm Zend/asm

cd Zend/asm

# remove unneeded files
rm jump_arm_aapcs_pe_armasm.asm
rm jump_arm64_aapcs_pe_armclang.S
rm jump_i386_ms_pe_clang_gas.S
rm jump_i386_ms_pe_gas.asm
rm jump_i386_x86_64_sysv_macho_gas.S
rm jump_ppc32_ppc64_sysv_macho_gas.S
rm jump_x86_64_ms_pe_clang_gas.S
rm make_arm_aapcs_pe_armasm.asm
rm make_arm64_aapcs_pe_armclang.S
rm make_i386_ms_pe_clang_gas.S
rm make_i386_ms_pe_gas.asm
rm make_i386_x86_64_sysv_macho_gas.S
rm make_ppc32_ppc64_sysv_macho_gas.S
rm make_x86_64_ms_pe_clang_gas.S
rm ontop_*.S
rm ontop_*.asm
rm tail_ontop_ppc32_sysv.cpp

# move renamed files
# GH-13896 introduced these 2 files named as .S but since https://github.com/boostorg/context/pull/265 they are named as .asm
mv jump_x86_64_ms_pe_gas.asm jump_x86_64_ms_pe_gas.S
mv make_x86_64_ms_pe_gas.asm make_x86_64_ms_pe_gas.S

# add extra files
git restore LICENSE
git restore save_xmm_x86_64_ms_masm.asm # added in GH-18352, not an upstream boost.context file
Loading
Loading