Skip to content

Commit 268ae6f

Browse files
committed
Merge branch 'master' into uri-construct-leak-modify
2 parents 5ac4d44 + 3e9caf5 commit 268ae6f

File tree

113 files changed

+3624
-761
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

113 files changed

+3624
-761
lines changed

.github/workflows/nightly.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,9 @@ on:
4444
skip_wordpress:
4545
required: true
4646
type: boolean
47+
variation_enable_zend_max_execution_timers:
48+
required: true
49+
type: boolean
4750
permissions:
4851
contents: read
4952
jobs:
@@ -198,6 +201,7 @@ jobs:
198201
zts: true
199202
configuration_parameters: >-
200203
CFLAGS="-DZEND_RC_DEBUG=1 -DPROFITABILITY_CHECKS=0 -DZEND_VERIFY_FUNC_INFO=1 -DZEND_VERIFY_TYPE_INFERENCE"
204+
${{ inputs.variation_enable_zend_max_execution_timers && '--enable-zend-max-execution-timers' || '' }}
201205
run_tests_parameters: -d zend_test.observer.enabled=1 -d zend_test.observer.show_output=0
202206
timeout_minutes: 360
203207
test_function_jit: true

.github/workflows/root.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,4 +64,5 @@ jobs:
6464
skip_laravel: ${{ matrix.branch.version[0] == 8 && matrix.branch.version[1] == 1 }}
6565
skip_symfony: ${{ matrix.branch.version[0] == 8 && matrix.branch.version[1] == 1 }}
6666
skip_wordpress: ${{ matrix.branch.version[0] == 8 && matrix.branch.version[1] == 1 }}
67+
variation_enable_zend_max_execution_timers: ${{ (matrix.branch.version[0] == 8 && matrix.branch.version[1] >= 3) || matrix.branch.version[0] >= 9 }}
6768
secrets: inherit

NEWS

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,23 @@ PHP NEWS
22
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
33
?? ??? ????, PHP 8.5.0RC1
44

5+
- Core:
6+
. Fixed bug GH-19765 (object_properties_load() bypasses readonly property
7+
checks). (timwolla)
8+
. The __sleep() and __wakeup() magic methods have been deprecated. (Girgias)
9+
. Fixed hard_timeout with --enable-zend-max-execution-timers. (Appla)
10+
11+
- Opcache:
12+
. Fixed bug GH-19669 (assertion failure in zend_jit_trace_type_to_info_ex).
13+
(Arnaud)
14+
15+
- URI:
16+
. Fixed bug GH-19780 (InvalidUrlException should check $errors argument).
17+
(nielsdos)
18+
19+
- Windows:
20+
. Fix GH-19722 (_get_osfhandle asserts in debug mode when given a socket).
21+
(dktapps)
522

623
11 Sep 2025, PHP 8.5.0beta3
724

UPGRADING

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -392,6 +392,10 @@ PHP 8.5 UPGRADE NOTES
392392
$_GET or $_SERVER['QUERY_STRING'] to access the information, after verifying
393393
that the usage is safe.
394394
RFC: https://wiki.php.net/rfc/deprecations_php_8_5#deprecate_the_register_argc_argv_ini_directive
395+
. The __sleep() and __wakeup() magic methods have been deprecated. The
396+
__serialize() and __unserialize() magic methods should be used instead,
397+
or at the same time if compatibility with PHP 7 is required.
398+
RFC: https://wiki.php.net/rfc/deprecations_php_8_5#deprecate_the_sleep_and_wakeup_magic_methods
395399

396400
- Curl:
397401
. The curl_close() function has been deprecated, as CurlHandle objects are

Zend/Optimizer/sccp.c

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -838,9 +838,7 @@ static inline zend_result ct_eval_func_call_ex(
838838
zval_ptr_dtor(result);
839839
zend_clear_exception();
840840
retval = FAILURE;
841-
}
842-
843-
if (EG(capture_warnings_during_sccp) > 1) {
841+
} else if (EG(capture_warnings_during_sccp) > 1) {
844842
zval_ptr_dtor(result);
845843
retval = FAILURE;
846844
}

Zend/tests/enum/__sleep.phpt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,6 @@ enum Foo {
1313

1414
?>
1515
--EXPECTF--
16+
Deprecated: The __sleep() serialization magic method has been deprecated. Implement __serialize() instead (or in addition, if support for old PHP versions is necessary) in %s on line %d
17+
1618
Fatal error: Enum Foo cannot include magic method __sleep in %s on line %d

Zend/tests/enum/__wakeup.phpt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,6 @@ enum Foo {
1313

1414
?>
1515
--EXPECTF--
16+
Deprecated: The __wakeup() serialization magic method has been deprecated. Implement __unserialize() instead (or in addition, if support for old PHP versions is necessary) in %s on line %d
17+
1618
Fatal error: Enum Foo cannot include magic method __wakeup in %s on line %d

Zend/tests/lazy_objects/oss_fuzz_71446.phpt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,3 +20,4 @@ $obj = $reflector->newLazyProxy(function() {
2020
serialize($obj);
2121
?>
2222
--EXPECTF--
23+
Deprecated: The __sleep() serialization magic method has been deprecated. Implement __serialize() instead (or in addition, if support for old PHP versions is necessary) in %s on line %d

Zend/tests/lazy_objects/serialize___sleep.phpt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ try {
3636

3737
?>
3838
--EXPECTF--
39+
Deprecated: The __sleep() serialization magic method has been deprecated. Implement __serialize() instead (or in addition, if support for old PHP versions is necessary) in %s on line %d
3940
Init on serialize and successful initialization
4041
string(27) "O:1:"C":1:{s:4:"%0C%0b";i:1;}"
4142
Init on serialize and failed initialization

Zend/tests/lazy_objects/serialize___sleep_initializes.phpt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ $obj = $reflector->newLazyProxy(function ($obj) {
3737
test('Proxy', $obj);
3838

3939
--EXPECTF--
40+
Deprecated: The __sleep() serialization magic method has been deprecated. Implement __serialize() instead (or in addition, if support for old PHP versions is necessary) in %s on line %d
4041
# Ghost:
4142
string(11) "initializer"
4243
string(24) "O:1:"C":1:{s:1:"a";i:1;}"

0 commit comments

Comments
 (0)