1
0
mirror of https://github.com/php/php-src.git synced 2026-03-24 00:02:20 +01:00
Commit Graph

138938 Commits

Author SHA1 Message Date
Dmitry Stogov
f4f6c13841 Update trace type inference and abstract stack to be consistent with #16339 (JIT support for ASSIGN_DIM[_OP] with IS_VAR op1) (#16651) 2024-10-30 17:00:16 +03:00
Ilija Tovilo
3c3a1df730 Merge branch 'PHP-8.4'
* PHP-8.4:
  Remove -Werror for libmysql test on 8.1 only
2024-10-30 14:48:39 +01:00
Ilija Tovilo
c13d6df2fb Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  Remove -Werror for libmysql test on 8.1 only
2024-10-30 14:48:17 +01:00
Ilija Tovilo
33ad045f52 Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  Remove -Werror for libmysql test on 8.1 only
2024-10-30 14:48:07 +01:00
Ilija Tovilo
d2b78a1466 Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  Remove -Werror for libmysql test on 8.1 only
2024-10-30 14:48:00 +01:00
Ilija Tovilo
769947648e Remove -Werror for libmysql test on 8.1 only 2024-10-30 14:47:15 +01:00
Ilija Tovilo
bf5496149b Merge branch 'PHP-8.4'
* PHP-8.4:
  Partial backport of e7462bf
2024-10-30 14:24:26 +01:00
Ilija Tovilo
b60a4ebba9 Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  Partial backport of e7462bf
2024-10-30 14:24:08 +01:00
Ilija Tovilo
9fc913fba6 Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  Partial backport of e7462bf
2024-10-30 14:24:00 +01:00
Ilija Tovilo
58a5fa7224 Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  Partial backport of e7462bf
2024-10-30 14:23:51 +01:00
Ilija Tovilo
ed041c3443 Partial backport of e7462bf
e7462bff19
2024-10-30 14:20:47 +01:00
Ilija Tovilo
584120003a Merge branch 'PHP-8.4'
* PHP-8.4:
  [CI] Backport usage of db service for 8.1
2024-10-30 12:22:50 +01:00
Ilija Tovilo
eba4ce7791 Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  [CI] Backport usage of db service for 8.1
2024-10-30 12:22:34 +01:00
Ilija Tovilo
a247f64c87 Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  [CI] Backport usage of db service for 8.1
2024-10-30 12:22:00 +01:00
Ilija Tovilo
cf4c0182b6 Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  [CI] Backport usage of db service for 8.1
2024-10-30 12:21:34 +01:00
Ilija Tovilo
560a585117 [CI] Backport usage of db service for 8.1
Nightly already uses them. We're running into port clashes otherwise.

Closes GH-16647
2024-10-30 12:20:42 +01:00
Arnaud Le Blanc
43de8ff19f Merge branch 'PHP-8.4'
* PHP-8.4:
  Fix assertion failure in zend_std_read_property
2024-10-30 12:02:59 +01:00
Arnaud Le Blanc
3d3b22ddf2 Fix assertion failure in zend_std_read_property
We asserted that Z_PROP_FLAG_P(retval) was exactly IS_PROP_UNINIT, but this is a
bit field and it may contain irrelevant bits. For instance it may contain
IS_PROP_REINITABLE during clone, or IS_PROP_LAZY if the object is lazy.

Fixes GH-16615
Closes GH-16639
2024-10-30 12:02:52 +01:00
Ilija Tovilo
b564ccd504 Merge branch 'PHP-8.4'
* PHP-8.4:
  Backport nightly.yml and nightly_matrix.php to PHP-8.1
2024-10-29 15:34:26 +01:00
Ilija Tovilo
ef56241483 Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  Backport nightly.yml and nightly_matrix.php to PHP-8.1
2024-10-29 15:34:18 +01:00
Ilija Tovilo
fe93cd4043 Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  Backport nightly.yml and nightly_matrix.php to PHP-8.1
2024-10-29 15:33:51 +01:00
Ilija Tovilo
9ad99bb56d Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  Backport nightly.yml and nightly_matrix.php to PHP-8.1
2024-10-29 15:33:27 +01:00
Ilija Tovilo
27e8860594 Backport nightly.yml and nightly_matrix.php to PHP-8.1
These files are usually only used on master, as the cron trigger runs on master.
However, workflow_dispatch does use the file from the triggered branch.
Furthermore, we're looking into migrating to a workflow_call trigger, which will
also run on the target branch. Backport these files now to make those changes
easier.
2024-10-29 15:30:34 +01:00
David Carlier
cb6212b073 Merge branch 'PHP-8.4' 2024-10-28 21:25:49 +00:00
David Carlier
6a0035b7f4 Merge branch 'PHP-8.3' into PHP-8.4 2024-10-28 21:25:39 +00:00
David Carlier
e039afffaf Merge branch 'PHP-8.2' into PHP-8.3 2024-10-28 21:22:17 +00:00
David Carlier
eeec0939e0 Fix GH-14687 segfault on debugging a freed SplObjectIterator instance.
close GH-14711
2024-10-28 21:21:44 +00:00
Niels Dossche
99cdd670af Merge branch 'PHP-8.4'
* PHP-8.4:
  Fix GH-16595: Another UAF in DOM -> cloneNode
  Fix GH-16593: Assertion failure in DOM->replaceChild
2024-10-28 19:45:27 +01:00
Niels Dossche
6e82ae9990 Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  Fix GH-16595: Another UAF in DOM -> cloneNode
  Fix GH-16593: Assertion failure in DOM->replaceChild
2024-10-28 19:45:22 +01:00
Niels Dossche
ed21ebd8aa Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  Fix GH-16595: Another UAF in DOM -> cloneNode
  Fix GH-16593: Assertion failure in DOM->replaceChild
2024-10-28 19:39:24 +01:00
Niels Dossche
9d8983c061 Fix GH-16595: Another UAF in DOM -> cloneNode
We need to perform all sanity checks before doing any modification.
I don't have a reliable and easy test for this on 8.2, but I have one
for 8.4.

Closes GH-16598.
2024-10-28 19:37:08 +01:00
Niels Dossche
d89dd28d3b Fix GH-16593: Assertion failure in DOM->replaceChild
This is already forbidden by libxml, but this condition isn't properly
checked; so the return value and lack of error makes it seem like it
worked while it actually didn't. Furthermore, this can break assumptions
and assertions later on.

Closes GH-16596.
2024-10-28 19:36:29 +01:00
Niels Dossche
91270aafa5 Merge branch 'PHP-8.4'
* PHP-8.4:
  Fix GH-16594: Assertion failure in DOM -> before
  Fix GH-16572: Incorrect result with reflection in low-trigger JIT
  Fix GH-16577: EG(strtod_state).freelist leaks with opcache.preload
2024-10-28 19:33:24 +01:00
Niels Dossche
947e319b76 Fix GH-16594: Assertion failure in DOM -> before
The invalid parent condition can actually happen because PHP's DOM is
allows to get children of e.g. attributes; something normally not
possible.

Closes GH-16597.
2024-10-28 19:32:20 +01:00
Niels Dossche
38e1b0ac8c Fix GH-16572: Incorrect result with reflection in low-trigger JIT
When a recursive call happens with invalid arguments, the maximum valid
arguments are computed and stored in `num_args`, but the RECV entry
block we jump to is `call_num_args` instead. This can skip argument
validation checks. Fix this by using `num_args` instead.

Closes GH-16575.
2024-10-28 19:31:52 +01:00
Niels Dossche
757781a142 Fix GH-16577: EG(strtod_state).freelist leaks with opcache.preload
This happens because on ZTS we execute `executor_globals_ctor` which reset the
`freelist` and `p5s` pointers, while on NTS we don't.
On NTS we can reuse the caches but on ZTS we can't, the easiest fix is
to call `zend_shutdown_strtod` when preloading is shut down.
This regressed in GH-13974 and therefore only exists in PHP 8.4 and
higher.

Closes GH-16602.
2024-10-28 19:30:52 +01:00
Ilija Tovilo
562677a6dc [skip ci] Run all branches in nightly on Monday (GH-16625)
See GH-16286. The objective is to identify failed builds in security branches
semi-early. Previously, they would only be run when a fix was backported, which
would almost always result in a red build.
2024-10-28 17:18:05 +01:00
Ilija Tovilo
fc1582d2b7 Merge branch 'PHP-8.4'
* PHP-8.4:
  [skip ci] Remove duplicate icu dep on 8.4+
2024-10-28 16:48:40 +01:00
Ilija Tovilo
d6839f77ee [skip ci] Remove duplicate icu dep on 8.4+
I see those were already added there
2024-10-28 16:47:53 +01:00
Ilija Tovilo
33483f9f21 Merge branch 'PHP-8.4'
* PHP-8.4:
  Fix icu dependency for macos build
2024-10-28 16:41:31 +01:00
Ilija Tovilo
21165a83ca Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  Fix icu dependency for macos build
2024-10-28 16:41:25 +01:00
Ilija Tovilo
7e5ed4712d Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  Fix icu dependency for macos build
2024-10-28 16:41:16 +01:00
Ilija Tovilo
e3de1a1a21 Fix icu dependency for macos build
Closes GH-16627
2024-10-28 16:40:51 +01:00
Ilija Tovilo
0b4aed09d5 Merge branch 'PHP-8.4'
* PHP-8.4:
  Backport CI fixes to security branches
2024-10-28 16:08:07 +01:00
Ilija Tovilo
fbddf0d6f9 Merge branch 'PHP-8.3' into PHP-8.4
* PHP-8.3:
  Backport CI fixes to security branches
2024-10-28 16:06:08 +01:00
Ilija Tovilo
3aa672dd25 Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2:
  Backport CI fixes to security branches
2024-10-28 15:59:10 +01:00
Ilija Tovilo
8538ac2667 Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  Backport CI fixes to security branches
2024-10-28 15:58:58 +01:00
Ilija Tovilo
25c0993902 Backport CI fixes to security branches
Closes GH-16469

Working towards GH-16286

commit e0db221143b808d97bc3a44e9f0968c6308794b4
Author: Ilija Tovilo <ilija.tovilo@me.com>
Date:   Fri Oct 25 22:48:20 2024 +0200

    Move CFLAGS into ./configure command for consistency

commit 8ad67768250d181cd7fef30e0c866625bbd8ac94
Author: Ilija Tovilo <ilija.tovilo@me.com>
Date:   Fri Oct 25 22:47:03 2024 +0200

    Also upgrade nightly to macOS 13

commit 58a88ccb9f
Author: Ilija Tovilo <ilija.tovilo@me.com>
Date:   Wed Oct 23 19:07:59 2024 +0200

    Fix call to dc[n]gettext in tests with 0 $category

    This causes a segfault on PHP-8.1

commit 611af05c50
Author: Ilija Tovilo <ilija.tovilo@me.com>
Date:   Fri Dec 8 13:36:52 2023 +0100

    [skip ci] Skip intermittently failing curl test on macOS

    The test fails with "CURL ERROR: 56". I will create an issue for it shortly.

commit ec745178bb
Author: Ilija Tovilo <ilija.tovilo@me.com>
Date:   Wed Oct 23 19:05:32 2024 +0200

    Backport parts of 9999a0c for gettext

    See 9999a0cb75

commit 5ce703496f
Author: Niels Dossche <7771979+nielsdos@users.noreply.github.com>
Date:   Sun Jul 28 14:34:26 2024 +0200

    Fix CI failure on macOS after Curl update

commit 714a3e7071
Author: Niels Dossche <7771979+nielsdos@users.noreply.github.com>
Date:   Sat Jul 27 16:09:50 2024 +0200

    Fix CI failure after Curl update (#15124)

commit 4f2eb921b9
Author: Niels Dossche <7771979+nielsdos@users.noreply.github.com>
Date:   Thu May 23 22:20:37 2024 +0200

    Fix GH-14307: Test curl_basic_024 fails with curl 8.8.0

    Curl changed the behaviour, from the changelog:
      - lib: make protocol handlers store scheme name lowercase curl/curl@c294f9c

    From the docs: "The returned scheme might be upper or lowercase. Do
    comparisons case insensitively."

    Closes GH-14312.

commit 251195b41b
Author: Ayesh Karunaratne <ayesh@aye.sh>
Date:   Thu Feb 1 02:03:55 2024 +0700

    ext/curl: Fix failing tests due to string changes in libcurl 8.6.0

    Upstream libcurl 8.6.0 contains a change[^1] that caused a test failure.
    This fixes it by updating the test's `EXPECTF` to use a regex to account for both string patterns.

    [^1]: https://github.com/curl/curl/commit/45cf4755e71f#diff-a8a54563608f8155973318f4ddb61d7328dab512b8ff2b5cc48cc76979d4204cL1683

    Closes GH-13293.

commit fc5d83f2b1
Author: Christoph M. Becker <cmbecker69@gmx.de>
Date:   Wed Oct 16 22:46:20 2024 +0200

    Prepare for necessary move to macOS 13

    GH will remove macOS 12 runner images as of December 3rd, so we prepare
    for that.

    Besides the obvious need to change the runner, we also suppress a
    couple of warnings, because otherwise the build would fail due to
    `-Werror`.
2024-10-28 15:57:16 +01:00
DanielEScherzer
aeb2d5cfa6 ext/[ef]*: fix a bunch of typos (GH-16621) 2024-10-28 11:28:32 +01:00
Gina Peter Banyard
e8a1781c52 ext/standard: Transform tentative return types into proper types for Directory class
This class is now final
2024-10-27 22:41:27 +00:00