Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
641 commits
Select commit Hold shift + click to select a range
44d6417
ext/sockets: GH-20532 socket_addrinfo_lookup() sets EAI error code on…
devnexen Nov 19, 2025
8f55b08
ext/sqlite3: Sqlite3::openBlob() code path simplification. (#20969)
devnexen Jan 20, 2026
724ff60
Add MYSQLI_OPT_COMPRESS (#20987)
kamil-tekiela Jan 20, 2026
1db1c7f
Fix segfault in Tracing JIT with object reference (GH-20818)
khasinski Jan 16, 2026
2352cc1
Merge branch 'PHP-8.4' into PHP-8.5
iluuu1994 Jan 20, 2026
aeb8524
Merge branch 'PHP-8.5'
iluuu1994 Jan 20, 2026
f4728ec
[skip ci] Move opcache.opt_debug_level tests to ext/opcache
iluuu1994 Jan 21, 2026
95f7e30
[skip ci] Fix tmps= count in variation build
iluuu1994 Jan 21, 2026
4367315
[skip ci] Reduce zend.max_allowed_stack_size in gh20840.phpt
iluuu1994 Jan 21, 2026
6c57b4b
Merge branch 'PHP-8.4' into PHP-8.5
iluuu1994 Jan 21, 2026
337cb37
Merge branch 'PHP-8.5'
iluuu1994 Jan 21, 2026
d9cbc31
Fix hooked object properties overflow
ndossche Jan 21, 2026
6d02e51
Merge branch 'PHP-8.4' into PHP-8.5
iluuu1994 Jan 21, 2026
645e62b
Merge branch 'PHP-8.5'
iluuu1994 Jan 21, 2026
65b4073
Include the actual stub name in generated arginfo headers (#20993)
arnaud-lb Jan 21, 2026
7754eaf
Fix memory leaks when sk_X509_new_null() fails
ndossche Jan 17, 2026
7d4e430
Merge branch 'PHP-8.4' into PHP-8.5
ndossche Jan 22, 2026
61845cc
Merge branch 'PHP-8.5'
ndossche Jan 22, 2026
c8c9ff6
Add `ZEND_TYPE_ASSERT` to UPGRADING.INTERNALS (#21014)
TimWolla Jan 23, 2026
c2eadb4
Fix crash when in openssl_x509_parse() when i2s_ASN1_INTEGER() fails
ndossche Jan 22, 2026
62afc7a
Fix crash in openssl_x509_parse() when X509_NAME_oneline() fails
ndossche Jan 22, 2026
2c08d9a
Merge branch 'PHP-8.4' into PHP-8.5
ndossche Jan 23, 2026
fb5d478
Merge branch 'PHP-8.5'
ndossche Jan 23, 2026
3053a03
ext/dba/tests/dba_db4_018.phpt: fix typo (#20938)
orlitzky Jan 24, 2026
964d087
Merge branch 'PHP-8.4' into PHP-8.5
Girgias Jan 24, 2026
b40f38b
Merge branch 'PHP-8.5'
Girgias Jan 24, 2026
5f367b8
Fix artifact URL for scheduled real-time benchmark workflows
kocsismate Jan 24, 2026
9f774e3
chore: improve errror message when passing named parameter for variad…
jorgsowa Jan 25, 2026
6a17feb
zend_compile: Fix array_map() optimization (#21016)
TimWolla Jan 26, 2026
d9ccf78
[8.5] NEWS: add some missing RFC entries (#20693)
DanielEScherzer Jan 26, 2026
8c4c430
Merge branch 'PHP-8.5'
DanielEScherzer Jan 26, 2026
6d95a22
ext/standard: validate mode in array_filter() (#15647)
jorgsowa Jan 26, 2026
56e5a80
Fix GH-21041: Dom\HTMLDocument corrupts closing tags within scripts
lexborisov Jan 26, 2026
d2cd73a
Merge branch 'PHP-8.4' into PHP-8.5
ndossche Jan 26, 2026
a7447c1
Merge branch 'PHP-8.5'
ndossche Jan 26, 2026
74b8fdb
Fix getPartsIterator stub (#21003)
VincentLanglet Jan 26, 2026
2b49403
GitHub actions: drop more 8.1 CI configuration (#20763)
DanielEScherzer Jan 27, 2026
3aef16a
Merge branch 'PHP-8.2' into PHP-8.3
DanielEScherzer Jan 27, 2026
eb10255
Merge branch 'PHP-8.3' into PHP-8.4
DanielEScherzer Jan 27, 2026
9338ac0
Merge branch 'PHP-8.4' into PHP-8.5
DanielEScherzer Jan 27, 2026
1c81973
Merge branch 'PHP-8.5'
DanielEScherzer Jan 27, 2026
32088b7
zend_enum: Assert that the `case_name` is `IS_STRING` (#21045)
TimWolla Jan 27, 2026
e6beffb
PHP-8.4 is now for PHP 8.4.19-dev
SakiTakamachi Jan 27, 2026
20bb53a
Merge branch 'PHP-8.4'
SakiTakamachi Jan 27, 2026
b5d3d86
PHP-8.5 is now for PHP 8.5.4-dev
edorian Jan 27, 2026
cc50c9e
Merge branch 'PHP-8.5'
edorian Jan 27, 2026
6686068
Zend: move class autoloading from SPL to Zend (#21001)
Girgias Jan 28, 2026
efc50db
Merge branch 'PHP-8.4' into PHP-8.5
iluuu1994 Jan 28, 2026
62c94b6
Merge branch 'PHP-8.5'
iluuu1994 Jan 28, 2026
65fd4d8
Remove ext/spl dependency from ext/session (#21060)
petk Jan 28, 2026
93d32ea
Add missing clobbered registers
arnaud-lb Jan 27, 2026
00dd02c
Merge branch 'PHP-8.4' into PHP-8.5
arnaud-lb Jan 28, 2026
c60c49a
Merge branch 'PHP-8.5'
arnaud-lb Jan 28, 2026
3037526
Fix GH-21055: Pdo/Pgsql typo for GSS negotiation connection status at…
lsaos Jan 28, 2026
00466a0
Merge branch 'PHP-8.4' into PHP-8.5
devnexen Jan 28, 2026
b16e534
Merge branch 'PHP-8.5'
devnexen Jan 28, 2026
cd32c59
Fix regression with header removal removing whole prefixes (#21020)
NattyNarwhal Jan 28, 2026
4d5b651
Merge branch 'PHP-8.5'
NattyNarwhal Jan 28, 2026
22c618e
ext/session: use `STANDARD_MODULE_HEADER` for module entry (#21066)
DanielEScherzer Jan 29, 2026
371422b
Zend/zend_call_stack.h: fix missing include on Windows (clang compat)…
dunglas Jan 29, 2026
59433f8
Merge branch 'PHP-8.4' into PHP-8.5
TimWolla Jan 29, 2026
cd1e19a
Merge branch 'PHP-8.5'
TimWolla Jan 29, 2026
23f4b93
gen_stub: Fix compatibility with php 7.4 (in PHP-8.4) (#21076)
thg2k Jan 29, 2026
b2bb31c
Merge branch 'PHP-8.4' into PHP-8.5
TimWolla Jan 29, 2026
5cd759a
Merge branch 'PHP-8.5'
TimWolla Jan 29, 2026
7ec14e3
gen_stub: Fix compatibility with php 7.4 (in PHP-8.5+) (#21075)
thg2k Jan 29, 2026
149d34d
Merge branch 'PHP-8.5'
TimWolla Jan 29, 2026
2f2b421
Fix segfault when preloading constant AST closure
iluuu1994 Jan 28, 2026
db24ca5
Merge branch 'PHP-8.5'
iluuu1994 Jan 29, 2026
e9ae040
Fix crash on (unset) cast in constant expression
arshidkv12 Jan 29, 2026
0dd1bdc
Merge branch 'PHP-8.5'
iluuu1994 Jan 29, 2026
5ce3645
[skip ci] Use STANDARD_MODULE_HEADER for ext-date (GH-21080)
arshidkv12 Jan 29, 2026
ce798af
Fix GH-21058: error_log() crash on null destination argument. (#21064)
devnexen Jan 29, 2026
df1a90e
Update config options for real-time benchmark
kocsismate Jan 29, 2026
9580d47
ext/ftp: Use STANDARD_MODULE_HEADER instead of STANDARD_MODULE_HEADER…
arshidkv12 Jan 30, 2026
5dd9d2a
Zend/zend_autoload.c: fix indentation
Girgias Jan 30, 2026
b156471
Fix GH-21023: CURLOPT_XFERINFOFUNCTION with invalid callback crash.
devnexen Jan 24, 2026
2b89919
Merge branch 'PHP-8.4' into PHP-8.5
devnexen Jan 30, 2026
4876148
Merge branch 'PHP-8.5'
devnexen Jan 30, 2026
3bff1dc
Remove unused arg from zend_property_is_virtual() (GH-21084)
arshidkv12 Jan 30, 2026
7fed075
[skip ci] typo: sucess* to success* (GH-21092)
cuiweixie Jan 30, 2026
4a6e607
Core: fix missing deprecation when accessing null array key with JIT …
alexandre-daubois Jan 30, 2026
e4935cf
Merge branch 'PHP-8.5'
alexandre-daubois Jan 30, 2026
d03d69a
Remove duplicate #include statements (#21085)
khaledalam Jan 30, 2026
d73b2f7
Fix GH-21077: Accessing Dom\Node::baseURI can throw TypeError
ndossche Jan 29, 2026
d54e510
Merge branch 'PHP-8.4' into PHP-8.5
ndossche Jan 30, 2026
0f4f73a
Merge branch 'PHP-8.5'
ndossche Jan 30, 2026
d1c1a9f
[skip ci] Remove unused arg from zend_throw_incdec_ref_error() (GH-21…
arshidkv12 Jan 30, 2026
6a08718
Drop unused priority argument from zend_ast_export_var() (GH-21096)
arshidkv12 Jan 30, 2026
927b9ee
Drop unused error_type argument from zend_check_magic_method_public()…
arshidkv12 Jan 30, 2026
6173a9a
VAR|TMP overhaul (GH-20628)
iluuu1994 Jan 31, 2026
9dab2c9
ext/standard: add `ARRAY_FILTER_USE_VALUE` to `UPGRADING`
Ayesh Jan 31, 2026
6419618
ext/standard: update `array_filter` `$mode` param default value to `A…
Ayesh Jan 31, 2026
a01a8e7
Fix failed assertion for assignment in expression context
iluuu1994 Feb 1, 2026
c774be9
Autotools: Update config.{guess,sub} to 2025-07-10 (#19129)
petk Feb 2, 2026
ad0baf0
[skip ci] Drop end argument from gc_call_destructors_in_fiber() (GH-2…
arshidkv12 Feb 2, 2026
32bd339
Remove unreachable code after zend_error_noreturn calls (GH-20983)
khaledalam Feb 2, 2026
1f57d04
Tweak zend.max_allowed_stack_size for gh20836_stack_limit.phpt
iluuu1994 Feb 2, 2026
9e96c5f
Merge branch 'PHP-8.4' into PHP-8.5
iluuu1994 Feb 2, 2026
cb51737
Merge branch 'PHP-8.5'
iluuu1994 Feb 2, 2026
6d6d013
Mark object non-lazy before deleting info in zend_lazy_object_realize()
arnaud-lb Jan 30, 2026
1e81a9e
Merge branch 'PHP-8.4' into PHP-8.5
arnaud-lb Feb 3, 2026
4810af9
Merge branch 'PHP-8.5'
arnaud-lb Feb 3, 2026
de26827
Real instance of lazy proxy may have less magic methods
arnaud-lb Jan 30, 2026
83056c8
Merge branch 'PHP-8.4' into PHP-8.5
arnaud-lb Feb 3, 2026
39f5ed9
Merge branch 'PHP-8.5'
arnaud-lb Feb 3, 2026
4a1cca7
Revert lazy proxy state after failed initialization
arnaud-lb Oct 15, 2025
d16e6f5
Generate C enums from internal enums, introduce Z_PARAM_ENUM() (#20917)
arnaud-lb Feb 3, 2026
8b47ae8
Make brew verbose, limit to 10 minutes
iluuu1994 Feb 3, 2026
4188c3e
Fix missing deref in zend_fe_fetch_object_helper (GH-21116)
iluuu1994 Feb 3, 2026
47fbaca
Merge branch 'PHP-8.2' into PHP-8.3
iluuu1994 Feb 3, 2026
1dfc802
Merge branch 'PHP-8.3' into PHP-8.4
iluuu1994 Feb 3, 2026
13f0fd9
Merge branch 'PHP-8.4' into PHP-8.5
iluuu1994 Feb 3, 2026
5873627
Merge branch 'PHP-8.5'
iluuu1994 Feb 3, 2026
b8fc6bd
Fix GH-21097: Accessing Dom\Node properties can can throw TypeError(s)
ndossche Feb 1, 2026
52eb174
Merge branch 'PHP-8.4' into PHP-8.5
ndossche Feb 3, 2026
f0f28b7
Merge branch 'PHP-8.5'
ndossche Feb 3, 2026
a5a0ff6
ext/mysqli: raise ValueError for invalid option in mysqli_options() (…
arshidkv12 Feb 3, 2026
b5abd77
[skip ci] Remove unreachable code after zend_error_noreturn calls (GH…
arshidkv12 Feb 3, 2026
27d28ee
Fix mistakenly allowed assignment to assignment through list operator…
iluuu1994 Feb 4, 2026
a15ba76
zend_ini: Make `ZEND_INI_GET_ADDR()` return a `void*` pointer (#21119)
TimWolla Feb 4, 2026
b843e03
Zend: Remove unused parameter from zend_dval_to_lval_cap()
nyrzhun Feb 4, 2026
345bf38
Install missing headers (#21125)
petk Feb 4, 2026
7445b0f
Fix GH-20936: DatePeriod::__set_state() cannot handle null start
ndossche Jan 14, 2026
34a341e
Merge branch 'PHP-8.4' into PHP-8.5
ndossche Feb 4, 2026
b860837
Merge branch 'PHP-8.5'
ndossche Feb 4, 2026
81ef977
Fix typo in writing-tests.rst (GH-21133)
DjimSchaap Feb 4, 2026
06dac62
Remove unused PHP_DL_TEST_EXPORTS and PHP_ZEND_TEST_EXPORTS (#21109)
petk Feb 4, 2026
b68122e
ext/session: use bool type instead of int
Girgias Feb 4, 2026
f4b38fc
ext/session: use true/false rather than 1/0
Girgias Feb 4, 2026
713fbed
ext/session: no need to free a known zend_string
Girgias Feb 4, 2026
b56f068
ext/session: use RETURN_BOOL() when possible
Girgias Feb 4, 2026
68a1062
Fix -Wdefault-const-init-field-unsafe with clang 21 (#21135)
arnaud-lb Feb 5, 2026
3cb85cc
Fix assign-op/inc/dec on untyped hooked property backing value
iluuu1994 Feb 3, 2026
f9df448
Merge branch 'PHP-8.4' into PHP-8.5
iluuu1994 Feb 5, 2026
984f95f
Merge branch 'PHP-8.5'
iluuu1994 Feb 5, 2026
8ebdbb7
Return from filter_has_var() with RETURN_BOOL() (GH-21137)
arshidkv12 Feb 5, 2026
cdae6c3
Return from curl_setopt() with RETURN_BOOL() (GH-21136)
arshidkv12 Feb 5, 2026
542175e
ext/standard: mark ext/random as a required dependency (#21130)
Girgias Feb 5, 2026
dcf5cd9
ext/dom: Returning a boolean value using RETURN_BOOL (#21141)
arshidkv12 Feb 5, 2026
ee26417
Fix timezone offset with seconds losing precision
ndossche Dec 22, 2025
e76044a
Merge branch 'PHP-8.4' into PHP-8.5
ndossche Feb 5, 2026
46e8cb9
Merge branch 'PHP-8.5'
ndossche Feb 5, 2026
d84ad6a
ext/gd: remove _php_image_output unused argument (#21138)
arshidkv12 Feb 5, 2026
10fb64f
ext/readline: readline_read_history/readline_write_history returning …
arshidkv12 Feb 5, 2026
a2c6e6f
ext/session: remove PS_ENCODE_VARS
Girgias Feb 5, 2026
b657def
ext/session: remove unused macros
Girgias Feb 5, 2026
3a142e7
ext/session: remove unused progress parameter in early_find_sid_in()
Girgias Feb 5, 2026
31b0055
ext/session: add const qualifiers
Girgias Feb 5, 2026
fdaa488
ext/posix: validity check for flags argument in posix_access
arshidkv12 Jan 31, 2026
daa3513
ext/pgsql: pg_lo_export/pg_connection_reset returning a boolean value…
arshidkv12 Feb 6, 2026
f0d321e
[mysqli] Simply if -> RETURN_TRUE/FALSE with RETURN_BOOL() (GH-21149)
arshidkv12 Feb 6, 2026
51158bb
[win32] Use RETURN_BOOL() in sapi_windows_set_ctrl_handler() (GH-21148)
arshidkv12 Feb 6, 2026
d3e4703
[standard] Simply if -> RETURN_TRUE/FALSE with RETURN_BOOL() (GH-21147)
arshidkv12 Feb 6, 2026
6bd97e7
ext/posix: validate permissions argument in posix_mkfifo()
arshidkv12 Jan 31, 2026
52e9436
[ci skip] ext/posix: forgotten UPGRADING notes for posix_access()/pos…
devnexen Feb 6, 2026
bbde9c8
Fix OSS-Fuzz #478009707 for JIT
iluuu1994 Feb 6, 2026
ba6df41
Merge branch 'PHP-8.4' into PHP-8.5
iluuu1994 Feb 8, 2026
fcb50e4
Merge branch 'PHP-8.5'
iluuu1994 Feb 8, 2026
0e0f547
[skip ci] Remove PHP-8.1 from push.yml triggers (GH-21157)
jorgsowa Feb 8, 2026
2a3e970
[CI] Use MySQL LTS version
KentarouTakeda Feb 6, 2026
44b0b14
Merge branch 'PHP-8.2' into PHP-8.3
iluuu1994 Feb 8, 2026
2cabea6
Merge branch 'PHP-8.3' into PHP-8.4
iluuu1994 Feb 8, 2026
d992576
Merge branch 'PHP-8.4' into PHP-8.5
iluuu1994 Feb 8, 2026
96be28c
Merge branch 'PHP-8.5'
iluuu1994 Feb 8, 2026
a8bdfa6
ext/session: remove mod_user_class_name global
Girgias Feb 5, 2026
a9496bd
ext/session: refactor session_abort()
Girgias Feb 6, 2026
8926dc0
ext/session: refactor session_reset()
Girgias Feb 6, 2026
a0de1ac
ext/session: refactor session_write_close()
Girgias Feb 6, 2026
1041a47
ext/standard: throw ValueError if argument contains null byte in sess…
Girgias Feb 6, 2026
f6088f5
ext/session: remove session_adapt_url() function
Girgias Feb 6, 2026
ba17532
ext/session: use known 1 char zend_string to update boolean INI setting
Girgias Feb 6, 2026
71096cd
ext/session: use zend_strings for open handler
Girgias Feb 6, 2026
888b393
ext/session: fix typo in comment
Girgias Feb 9, 2026
9026396
ext/session: simplify php_session_reset()
Girgias Feb 9, 2026
ca08e5f
ext/session: reduce scope of variables
Girgias Feb 9, 2026
cc304d1
ext/session: refactor bin_to_readable()
Girgias Feb 9, 2026
8af0562
ext/session: add const qualifiers
Girgias Feb 9, 2026
e1b2f1f
ext/session: move variable initialization out of if condition
Girgias Feb 9, 2026
fcff846
Fix borked FETCH_W+ZEND_FETCH_GLOBAL_LOCK optimization (GH-21121)
iluuu1994 Feb 9, 2026
7c6f089
Improve shared_alloc_shm.c strategy to support OPcache JIT on Solaris
psumbera Dec 16, 2025
81de7b9
Merge branch 'PHP-8.4' into PHP-8.5
iluuu1994 Feb 9, 2026
8bb2312
Merge branch 'PHP-8.5'
iluuu1994 Feb 9, 2026
29cd577
ci: Add fork protection to workflow verify-bundled-files (GH-21171)
jorgsowa Feb 9, 2026
95fb174
[skip ci] Remove dead code in Zend/zend_multiply.h after zend_error_n…
arshidkv12 Feb 9, 2026
19ee3e6
Fix GH-21161: socket_set_option() crash with array 'addr' entry as null.
devnexen Feb 8, 2026
1ff5eb4
Merge branch 'PHP-8.4' into PHP-8.5
devnexen Feb 9, 2026
f037d49
Merge branch 'PHP-8.5'
devnexen Feb 9, 2026
d1ffe6a
Fix extension order in UPGRADING.INTERNALS
TimWolla Feb 9, 2026
ad83353
Fix line wrapping in NEWS/UPGRADING/UPGRADING.INTERNALS
TimWolla Feb 9, 2026
dd9421d
Update IR (#21183)
dstogov Feb 9, 2026
7273aa3
Merge branch 'PHP-8.4' into PHP-8.5
dstogov Feb 9, 2026
90e4f1a
Merge branch 'PHP-8.5'
dstogov Feb 9, 2026
10aadd6
Disable pkg cache for FreeBSD jobs
iluuu1994 Feb 9, 2026
5b227b3
Merge branch 'PHP-8.2' into PHP-8.3
iluuu1994 Feb 10, 2026
901ebd2
Merge branch 'PHP-8.3' into PHP-8.4
iluuu1994 Feb 10, 2026
aae3002
Merge branch 'PHP-8.4' into PHP-8.5
iluuu1994 Feb 10, 2026
a760cf7
Merge branch 'PHP-8.5'
iluuu1994 Feb 10, 2026
4b01cd1
ext/session/mod_mm: implement VALIDATE_SID handler (#21178)
Girgias Feb 10, 2026
26559c5
ext/readline: Returning a boolean value using RETURN_BOOL (#21186)
arshidkv12 Feb 10, 2026
c995a6c
ext/ftp: Returning a boolean value using RETURN_BOOL (#21187)
arshidkv12 Feb 10, 2026
4b72390
Update minimum required PHP version in Autotools build system (#20933)
petk Feb 10, 2026
ba996f7
Add note about updated PHP version
petk Feb 10, 2026
8032d6f
Autotools: Check struct stat.st_blocks with AC_CHECK_MEMBERS (#13562)
petk Feb 10, 2026
defc0be
ext/dom: Returning a boolean value using RETURN_BOOL (#21188)
arshidkv12 Feb 10, 2026
435e67e
Remove HAVE_SQLITE3_{CLOSE_V2,ERRSTR} (#18963)
petk Feb 11, 2026
66d908f
ext/session: fix PS_FUNCS() macro expansion (#21196)
shivammathur Feb 11, 2026
5330e7f
Verify bundled sources using CI - boost.context & uriparser (#20438)
mvorisek Feb 11, 2026
7134e69
zend_globals: Embed `in_autoload` into `zend_executor_globals` (#21202)
TimWolla Feb 11, 2026
4fbe411
Enable all warnings for re2c (#19051)
petk Feb 13, 2026
55ed6b9
Partial application
arnaud-lb Aug 5, 2025
cb3d555
Remove unnecessary change
arnaud-lb Jan 6, 2026
d1ede81
Skip preload test on Windows
arnaud-lb Jan 6, 2026
1eaa604
Comments
arnaud-lb Jan 6, 2026
aa28413
Improve type coherency
arnaud-lb Jan 6, 2026
8ec7ba4
Clarify
arnaud-lb Jan 6, 2026
ed51bff
Useless memset
arnaud-lb Jan 6, 2026
75662c7
Move include
arnaud-lb Jan 7, 2026
d749512
Rename tests
arnaud-lb Jan 7, 2026
8587256
Fix test
arnaud-lb Jan 7, 2026
dd593f9
Better type
arnaud-lb Jan 7, 2026
73ac5a7
Generated file
arnaud-lb Jan 7, 2026
9f48051
Consistency
arnaud-lb Jan 8, 2026
91b8a26
Fix test name
arnaud-lb Jan 8, 2026
d93bbe9
Improve tests
arnaud-lb Jan 8, 2026
fafb938
Improve tests
arnaud-lb Jan 15, 2026
2d9be7c
Improve tests
arnaud-lb Jan 15, 2026
d5434c1
Update comment, add tests
arnaud-lb Jan 15, 2026
31c8d8e
Improve test
arnaud-lb Jan 16, 2026
8080d35
Avoid void cast
arnaud-lb Jan 16, 2026
99d573d
Fix tests
arnaud-lb Jan 16, 2026
6353c1c
constify
arnaud-lb Jan 16, 2026
7c5f0c9
inline
arnaud-lb Jan 16, 2026
b697abd
Useless condition
arnaud-lb Jan 16, 2026
bf6a416
const
arnaud-lb Jan 16, 2026
20f755a
Simplify
arnaud-lb Jan 16, 2026
c09ff68
fix build
arnaud-lb Jan 16, 2026
a833b15
Fix test on x32
arnaud-lb Jan 16, 2026
0a2d4dd
Support PFAs in array_map() optimization
arnaud-lb Jan 19, 2026
b8fdf74
Reuse zp_argument_error()
arnaud-lb Jan 19, 2026
9bfedc6
WS
arnaud-lb Jan 19, 2026
063a2fa
Improve tests
arnaud-lb Jan 20, 2026
35f3df6
Add tests
arnaud-lb Jan 20, 2026
d2eba44
Fix tests
arnaud-lb Jan 21, 2026
7368f41
Fix arg name
arnaud-lb Jan 21, 2026
5e40c40
Add tests
arnaud-lb Feb 14, 2026
5b844c6
Fix tests after rebasing
arnaud-lb Feb 14, 2026
5e10990
Fix tests
arnaud-lb Feb 16, 2026
ca590ae
Improve tests
arnaud-lb Feb 16, 2026
75a13bb
CS
arnaud-lb Feb 16, 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
  •  
  •  
  •  
8 changes: 4 additions & 4 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ jobs:
arm:
resource_class: arm.medium
docker:
- image: cimg/base:current-22.04
- image: mysql:8.3
- image: cimg/base:current-24.04
- image: mysql:8.4
environment:
MYSQL_ALLOW_EMPTY_PASSWORD: true
MYSQL_ROOT_PASSWORD: ''
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 Down
1 change: 1 addition & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@

# Collapse generated files within git and pull request diff.
**/*_arginfo.h 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
Expand Down
13 changes: 10 additions & 3 deletions .github/actions/brew/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,18 @@ runs:

# Some packages exist on x86 but not arm, or vice versa.
# Install them with reinstall to avoid warnings.
brew reinstall autoconf webp tidy-html5 libzip libsodium icu4c curl
brew install \
brew reinstall -v \
autoconf \
webp \
tidy-html5 \
libzip \
libsodium \
icu4c \
curl
brew install -v \
bison \
re2c
brew install \
brew install -v \
bzip2 \
enchant \
libffi \
Expand Down
6 changes: 1 addition & 5 deletions .github/actions/build-libmysqlclient/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,6 @@ inputs:
required: false
libmysql:
required: true
withMysqli:
required: true
runs:
using: composite
steps:
Expand All @@ -21,13 +19,11 @@ runs:
wget -nv $URL
tar -xf $LIBMYSQL --strip-components=1 -C $MYSQL_DIR
PDO_MYSQL=${MYSQL_DIR}
${{ inputs.withMysqli == 'true' && 'MYSQLI=${MYSQL_DIR}/bin/mysql_config' || '' }}
./buildconf --force
./configure ${{ inputs.configurationParameters }} \
--enable-option-checking=fatal \
--disable-all \
--enable-pdo \
--with-pdo-mysql=${PDO_MYSQL} \
${{ inputs.withMysqli == 'true' && '--with-mysqli=${MYSQLI}' || '' }}
--with-pdo-mysql=${PDO_MYSQL}
make clean
make -j$(/usr/bin/nproc) >/dev/null
1 change: 1 addition & 0 deletions .github/actions/freebsd/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ runs:
release: '13.5'
usesh: true
copyback: false
disable-cache: true
# Temporarily disable sqlite, as FreeBSD ships it with disabled double quotes. We'll need to fix our tests.
# https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=269889
prepare: |
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
5 changes: 0 additions & 5 deletions .github/actions/test-libmysqlclient/action.yml
Original file line number Diff line number Diff line change
@@ -1,15 +1,10 @@
name: Test libmysqlclient
inputs:
withMysqli:
required: true
runs:
using: composite
steps:
- shell: bash
run: |
set -x
${{ inputs.withMysqli == 'true' && 'export MYSQL_TEST_USER=root' || '' }}
${{ inputs.withMysqli == 'true' && 'export MYSQL_TEST_PASSWD=root' || '' }}
export PDO_MYSQL_TEST_DSN="mysql:host=127.0.0.1;dbname=test"
export PDO_MYSQL_TEST_HOST=127.0.0.1
export PDO_MYSQL_TEST_USER=root
Expand Down
1 change: 0 additions & 1 deletion .github/nightly_matrix.php
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@
['ref' => 'PHP-8.4', 'version' => [8, 4]],
['ref' => 'PHP-8.3', 'version' => [8, 3]],
['ref' => 'PHP-8.2', 'version' => [8, 2]],
['ref' => 'PHP-8.1', 'version' => [8, 1]],
];

function get_branch_commit_cache_file_path(): string {
Expand Down
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
41 changes: 41 additions & 0 deletions .github/scripts/download-bundled/boost-context.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
#!/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.86.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_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_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
7 changes: 5 additions & 2 deletions .github/scripts/download-bundled/pcre2.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,15 @@
set -ex
cd "$(dirname "$0")/../../.."

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

revision=refs/tags/pcre2-10.44

git clone --depth 1 --recurse-submodules --revision="$revision" https://github.com/PCRE2Project/pcre2.git /tmp/php-src-bundled/pcre2
git clone --depth 1 --recurse-submodules --revision="$revision" https://github.com/PCRE2Project/pcre2.git "$tmp_dir"

rm -rf ext/pcre/pcre2lib
cp -R /tmp/php-src-bundled/pcre2/src ext/pcre/pcre2lib
cp -R "$tmp_dir"/src ext/pcre/pcre2lib

cd ext/pcre/pcre2lib

Expand Down
14 changes: 14 additions & 0 deletions .github/scripts/download-bundled/uriparser.config.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
diff --git a/ext/uri/uriparser/src/UriConfig.h b/ext/uri/uriparser/src/UriConfig.h
index b9a85a8..ab78b96 100644
--- a/ext/uri/uriparser/src/UriConfig.h
+++ b/ext/uri/uriparser/src/UriConfig.h
@@ -41,7 +41,9 @@

# define PACKAGE_VERSION "@PROJECT_VERSION@"

+/*
#cmakedefine HAVE_WPRINTF
#cmakedefine HAVE_REALLOCARRAY
+*/

#endif /* !defined(URI_CONFIG_H) */
24 changes: 24 additions & 0 deletions .github/scripts/download-bundled/uriparser.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
#!/bin/sh
set -ex
cd "$(dirname "$0")/../../.."

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

revision=refs/tags/uriparser-1.0.0

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

rm -rf ext/uri/uriparser
mkdir ext/uri/uriparser
cp -R "$tmp_dir"/src ext/uri/uriparser
cp -R "$tmp_dir"/include ext/uri/uriparser
cp "$tmp_dir"/COPYING.BSD-3-Clause ext/uri/uriparser

cd ext/uri/uriparser

# move renamed files
mv src/UriConfig.h.in src/UriConfig.h

# patch customized files
git apply -v ../../../.github/scripts/download-bundled/uriparser.config.patch
11 changes: 7 additions & 4 deletions .github/scripts/test-directory-unchanged.sh
Original file line number Diff line number Diff line change
@@ -1,13 +1,16 @@
#!/bin/sh
set -ex

cd "$(dirname "$0")/../../$1"
# use the repo root directory as "--git-dir"
cd "$(dirname "$0")/../.."

dir="$1"

# notify git about untracked (except ignored) files
git add -N .
git add -N "$dir"

# display overview of changed files
git status .
git status "$dir"

# display diff of working directory vs HEAD commit and set exit code
git diff -a --exit-code HEAD .
git diff -a --exit-code HEAD "$dir"
4 changes: 2 additions & 2 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,14 +10,14 @@ on:
- docs/**
jobs:
pages:
runs-on: ubuntu-22.04
runs-on: ubuntu-latest
permissions:
pages: write
id-token: write
if: github.repository == 'php/php-src'
steps:
- name: git checkout
uses: actions/checkout@v5
uses: actions/checkout@v6
- name: Install dependencies
run: pip install -r docs/requirements.txt
- name: Check formatting
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/labeler.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,6 @@ jobs:
pull-requests: write
runs-on: ubuntu-latest
steps:
- uses: actions/labeler@v5
- uses: actions/labeler@v6
with:
repo-token: "${{ secrets.GITHUB_TOKEN }}"
Loading
Loading