1
0
mirror of https://github.com/php/php-src.git synced 2026-04-22 15:38:49 +02:00
Commit Graph

687 Commits

Author SHA1 Message Date
Sergey Panteleev 482ca6c19c Update versions for PHP 8.2.21 2024-07-02 15:51:54 +03:00
Pierrick Charron c69c84a5f6 PHP-8.2 is now for PHP 8.2.21-dev 2024-05-21 14:32:07 -04:00
Sergey Panteleev 3b5321dffe PHP-8.2 is now for PHP 8.2.20-dev 2024-04-23 17:22:54 +03:00
Pierrick Charron 7942268899 PHP-8.2 is now for PHP 8.2.19-dev 2024-03-26 08:49:44 -04:00
Sergey Panteleev e1a8ebd61b PHP-8.2 is now for PHP 8.2.18-dev 2024-02-27 17:26:44 +03:00
Niels Dossche 2f605820a4 Workaround ZTS persistent resource crashes (PHP 8.3 and lower)
For master (8.4-dev) I merged GH-13381. But that PR changes public API
of TSRM, so cannot be used on lower branches.

This patch is a safe workaround for the issue, in combination with a
pre-existing fix using `ifdef ZTS + if (module_started)` inside pgsql
and odbc. The idea is to delay unloading modules until the persistent
resources are destroyed. This will keep the destructor code accessible
in memory.

This is not a proper fix on its own, because we still need the
workaround of not accessing globals after module destruction.
The proper fix is in master.

Closes GH-13388.
2024-02-20 21:24:43 +01:00
Pierrick Charron 0454f4ade4 PHP-8.2 is now for PHP 8.2.17-dev 2024-01-30 12:43:37 -05:00
Sergey Panteleev 5d79c1b74d PHP-8.2 is now for PHP 8.2.16-dev 2024-01-02 16:42:14 +03:00
Pierrick Charron dc3641ea0f PHP-8.2 is now for PHP 8.2.15-dev 2023-12-05 15:01:08 -05:00
Sergey Panteleev 239a26fa90 PHP-8.2 is now for PHP 8.2.14-dev 2023-11-07 17:12:19 +03:00
Pierrick Charron 2642a08697 PHP-8.2 is now for PHP 8.2.13-dev 2023-10-10 11:45:26 -04:00
Sergey Panteleev 5c1f746716 PHP-8.2 is now for PHP 8.2.12-dev 2023-09-12 14:53:56 +03:00
Pierrick Charron 4467f33e89 PHP-8.2 is now for PHP 8.2.11-dev 2023-08-15 16:08:52 -04:00
Sergey Panteleev 796a75f967 PHP-8.2 is now for PHP 8.2.10-dev 2023-07-18 14:02:43 +03:00
Sergey Panteleev 884a53f39a PHP-8.2 is now for PHP 8.2.9-dev 2023-06-20 17:25:30 +03:00
Pierrick Charron d5f68b50fc PHP-8.2 is now for PHP 8.2.8-dev 2023-05-23 16:56:58 -04:00
Sergey Panteleev 8318f4a6b1 PHP-8.2 is now for PHP 8.2.7-dev 2023-04-25 18:33:13 +03:00
Pierrick Charron f7c692a940 PHP-8.2 is now for PHP 8.2.6-dev 2023-03-28 17:27:17 -04:00
Arnaud Le Blanc 37030257b8 Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  [ci skip] NEWS
  fix: support for timeouts with ZTS on Linux (#10141)
2023-03-03 11:45:50 +01:00
Kévin Dunglas ad85e71421 fix: support for timeouts with ZTS on Linux (#10141) 2023-03-03 11:35:06 +01:00
Patrick Allaert 729f006de8 PHP-8.1 is now for PHP 8.1.18-dev 2023-02-28 21:37:52 +01:00
Sergey Panteleev 23ce3423c1 PHP-8.2 is now for PHP 8.2.5-dev 2023-02-28 18:15:20 +03:00
Pierrick Charron dc054488da PHP-8.2 is now for PHP 8.2.4-dev 2023-02-14 10:02:46 -05:00
Ben Ramsey 28d68f5013 PHP-8.1 is now for PHP 8.1.17-dev 2023-02-13 13:16:07 -06:00
Sergey Panteleev eee988e86d PHP-8.2 is now for PHP 8.2.3-dev 2023-01-17 20:55:22 +03:00
Patrick Allaert c47a1a260d PHP-8.1 is now for PHP 8.1.16-dev 2023-01-17 17:24:25 +01:00
Pierrick Charron 002d54db9f PHP-8.2 is now for PHP 8.2.2-dev 2022-12-13 19:29:29 -05:00
Ben Ramsey 696bb385df PHP-8.1 is now for PHP 8.1.15-dev 2022-12-07 11:29:37 -06:00
Pierrick Charron 44d652c00a PHP-8.2 is now for PHP 8.2.1-dev and prepare NEWS for 8.2.0 2022-11-08 13:26:35 -05:00
Patrick Allaert 540488c74e PHP-8.1 is now for PHP 8.1.14-dev 2022-11-08 17:57:34 +01:00
Ben Ramsey 865161af33 PHP-8.1 is now for PHP 8.1.13-dev 2022-10-11 19:47:00 -04:00
Bob Weinand 5a0b68bed7 Revert "Store default object handlers alongside the class entry"
This reverts commit 9e6eab3c13.

Reverted along a01dd9feda.
2022-09-14 11:18:14 +02:00
Patrick Allaert 0f575aa698 PHP-8.1 is now for PHP 8.1.12-dev 2022-09-13 23:09:47 +02:00
Bob Weinand 9e6eab3c13 Store default object handlers alongside the class entry
Object handlers being separate from class entries is a legacy inherited from PHP 5. Today it has little benefit to keep them separate: in fact, accessing object handlers usually requires not-so-safe hacks.
While it is possible to swap handlers in a custom installed create_object handler, this mostly is tedious, as well as it requires allocating the object handlers struct at runtime, possibly caching it etc..

This allows extensions, which intend to observe other classes to install their own class handlers.
The life cycle of internal classes may now be simply observed by swapping the class handlers in post_startup stage.
The life cycle of userland classes may be observed by iterating over the new classes in zend_compile_file and zend_compile_string and then swapping their handlers.

In general, this would also be a first step in directly tying the object handlers to classes. Especially given that I am not aware of any case where the object handlers would be different between various instances of a given class.

Signed-off-by: Bob Weinand <bobwei9@hotmail.com>
2022-08-31 16:45:27 +02:00
Ben Ramsey 7f26661993 PHP-8.1 is now for PHP 8.1.11-dev 2022-08-16 10:45:29 -05:00
twosee ef39adb638 Merge branch 'PHP-8.1'
* PHP-8.1:
  Re-fix GH-8409: SSL handshake timeout persistent connections hanging
  Revert "Fix GH-8409: SSL handshake timeout persistent connections hanging"
2022-08-14 20:15:35 +08:00
Jakub Zelenka 897ca85d33 Revert "Fix GH-8409: SSL handshake timeout persistent connections hanging"
This reverts commit d0527427be.

This patch makes Swoole/Swow can not work anymore, because Coroutine will yield to another one during socket operation, EG(record_errors) assertion will always fail, and zend_begin_record_errors() was only used during compile time before.
Note: zend_emit_recorded_errors() and the typo fix are reserved.
2022-08-14 19:41:06 +08:00
Jakub Zelenka 438f692e92 Merge branch 'PHP-8.1' 2022-08-12 17:12:28 +01:00
Jakub Zelenka d0527427be Fix GH-8409: SSL handshake timeout persistent connections hanging
This is not actually related to SSL handshake but stream socket creation
which does not clean errors if the error handler is set. This fix
prevents emitting errors until the stream is freed.
2022-08-12 17:09:24 +01:00
George Peter Banyard faa83f2f34 Convert some macros to zend_always_inline functions (#8288)
This doesn't have an effect really, but humans and IDEs can struggle to see through the macro soup when they first interact with PHP's source code.

Moreover, this reduces some of the macro expansion hell when they appear in compiler warnings.
2022-08-04 13:24:12 +01:00
Patrick Allaert 9af3327176 PHP-8.1 is now for PHP 8.1.10-dev 2022-07-20 06:48:52 +02:00
Ilija Tovilo 76fcd70c13 Fix enum preloading again (#8859) 2022-06-25 14:55:46 +02:00
Ben Ramsey f3b45e74f5 PHP-8.1 is now for PHP 8.1.9-dev 2022-06-21 11:03:50 -05:00
Patrick Allaert 3b6ee1eb19 Bump for 8.1.8-dev 2022-05-25 00:54:00 +02:00
Ben Ramsey fb819faa4e Prepare for PHP 8.1.7 2022-04-26 19:22:15 -05:00
Patrick Allaert 5a899563cc Bump for 8.1.6-dev 2022-03-31 17:37:41 +02:00
Patrick Allaert 723058c3bf Bump for 8.1.5-dev 2022-03-02 17:38:22 +01:00
Patrick Allaert 8db7fd8a2a Bump for 8.1.4-dev 2022-02-03 02:21:29 +01:00
Patrick Allaert 4ae75623fd Preparing for 8.1.3-dev 2022-01-04 19:29:41 +01:00
Tyson Andre 024d5f4b63 Cache method overrides of ArrayAccess in zend_class_entry
Previously, code such as subclasses of SplFixedArray would check for method
overrides when instantiating the objects.

This optimization was mentioned as a followup to GH-6552
2021-12-04 11:35:38 -05:00