Skip to content

[pull] master from php:master - #1165

Merged
pull[bot] merged 14 commits into
turkdevops:masterfrom
php:master
Aug 7, 2026
Merged

[pull] master from php:master#1165
pull[bot] merged 14 commits into
turkdevops:masterfrom
php:master

Conversation

@pull

@pull pull Bot commented Aug 7, 2026

Copy link
Copy Markdown

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

TimWolla and others added 14 commits August 7, 2026 12:04
* date: Add `Time\Duration`

RFC: https://wiki.php.net/rfc/duration_class

* date: Cache the most recently `Time\Duration` object created with `from*()`

This is useful for patterns like the following:

    for (;;) {
        $watchers = $poll->wait(Time\Duration::fromSeconds(1));
        // …
    }

which is repeatedly creating identical duration objects for every loop
iteration.

* date: Add `Z_PARAM_ULONG()` helper to `time_duration.c`

* date: Make `tests/time/duration/helper.inc` compatible with PHP < 8.6

This will allow polyfills to more easily consume the upstream tests.

* NEWS / UPGRADING

Co-authored-by: Tim Düsterhus <tim@bastelstu.be>
… empty default at runtime (#23096)

By using OnUpdateStr INI handler rather than OnUpdateStrNotEmpty
The `Z_PARAM_*()` macros rely on `break;` to jump to
`ZEND_PARSE_PARAMETERS_END()`, thus we must not wrap their code into a
`do { } while(0)` loop, but instead must use a regular block.
…22974)

sapi_deactivate_module() releases both without resetting the pointer,
unlike the auth_user, auth_password and auth_digest fields next to them.
Nothing reads them between the release and the next sapi_activate()
today, so this is consistency rather than a live bug.

Closes GH-22974
Co-authored-by: Nora Dossche <7771979+ndossche@users.noreply.github.com>
The test suite derives the path to php-fpm from TEST_PHP_EXECUTABLE.
This fails on custom build directory layouts, leading to skipping all
php-fpm related tests.

Users can provide TEST_PHP_FPM_EXECUTABLE for a custom binary path; if
this is unset, we'll fall back to TEST_PHP_EXECUTABLE instead.
…ARAM_*()` (#23100)

Instead of using a fixed variable name for the temporary, it is now derived
from the name of the target variable.
* PHP-8.4:
  JIT: Preserve parent regs in zend_jit_deoptimizer_start() (#22916)
* PHP-8.5:
  JIT: Preserve parent regs in zend_jit_deoptimizer_start() (#22916)
@pull pull Bot locked and limited conversation to collaborators Aug 7, 2026
@pull pull Bot added the ⤵️ pull label Aug 7, 2026
@pull
pull Bot merged commit 4b4fb49 into turkdevops:master Aug 7, 2026
1 of 3 checks passed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants