1
0
mirror of https://github.com/php/php-src.git synced 2026-04-10 09:33:06 +02:00
Commit Graph

5729 Commits

Author SHA1 Message Date
Christoph M. Becker
3c102469de Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  Don't skip test on Windows due to missing ext/posix
2022-11-07 15:07:53 +01:00
Christoph M. Becker
31cdda2440 Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  Don't skip test on Windows due to missing ext/posix
2022-11-07 15:07:09 +01:00
Christoph M. Becker
4c35d6440b Don't skip test on Windows due to missing ext/posix
ext/posix is not available on Windows, but there is no need to check
for root (i.e. elevated privileges) on this platform, either.

Closes GH-9886.
2022-11-07 15:01:25 +01:00
Ilija Tovilo
f45c8bd34e Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  Really fix test this time
2022-11-03 16:34:03 +01:00
Ilija Tovilo
35167af771 Really fix test this time 2022-11-03 16:33:07 +01:00
Ilija Tovilo
46d693b82f Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  Fix ext section
2022-11-03 15:20:22 +01:00
Ilija Tovilo
bca1e1f557 Fix ext section
Ugh, sorry.
2022-11-03 15:19:44 +01:00
Ilija Tovilo
4382c092c2 Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  Fix duplicate SKIPIF section
2022-11-03 15:18:44 +01:00
Ilija Tovilo
d2c663441d Fix duplicate SKIPIF section 2022-11-03 15:18:13 +01:00
Ilija Tovilo
b08901b63f Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  Migrate i386 to GitHub actions
2022-11-03 14:37:59 +01:00
Ilija Tovilo
ed1e703716 Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  Migrate i386 to GitHub actions
2022-11-03 14:37:17 +01:00
Ilija Tovilo
75970077b0 Migrate i386 to GitHub actions
Closes GH-9856
2022-11-03 14:34:54 +01:00
Jakub Zelenka
b732d80329 Fix bug GH-9779: stream_copy_to_stream fail when dest in append mode 2022-10-23 12:40:22 +01:00
Ilija Tovilo
182d297891 Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  [skip ci] Mark frequently failing hrtime test as XFAIL
2022-10-20 11:00:33 +02:00
Ilija Tovilo
2f225b3008 Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  [skip ci] Mark frequently failing hrtime test as XFAIL
2022-10-20 11:00:21 +02:00
Ilija Tovilo
4071e18620 [skip ci] Mark frequently failing hrtime test as XFAIL 2022-10-20 10:59:07 +02:00
Christoph M. Becker
6e0505bf27 Fix GH-9589: dl() segfaults when module is already loaded
As of PHP 8.2.0, `zend_module_entry` structures are no longer copied,
so when a module is permanently loaded, and users try to dynamically
load that module again, the structure is corrupted[1], causing a
segfault on shutdown.

We catch that by checking whether any dynamically loaded module is
already loaded, and bailing out in that case without modifying the
`zend_module_entry` structure.

[1] <https://github.com/php/php-src/issues/9589#issuecomment-1263718701>

Closes GH-9689.
2022-10-10 13:36:57 +02:00
Ilija Tovilo
182c8acf43 Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  Prepare for Windows CI with Github Actions
2022-10-09 18:48:07 +02:00
Ilija Tovilo
296a09549b Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  Prepare for Windows CI with Github Actions
2022-10-09 18:45:29 +02:00
Michael Voříšek
b43e49437c Prepare for Windows CI with Github Actions 2022-10-09 18:44:59 +02:00
Christoph M. Becker
c5f53c4ef4 Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  Use --EXTENSIONS-- section for newly added tests
2022-10-01 14:09:26 +02:00
Christoph M. Becker
47c79a97f5 Use --EXTENSIONS-- section for newly added tests
As of PHP 8.1.0, the `--EXTENSIONS-- section is properly supported, and
CIs may make use of that (our AppVeyor CI does).  Thus it is important
to list required extensions there, since otherwise they may not be
loaded, causing the test to be skipped, or worse, to be borked.
2022-10-01 14:08:59 +02:00
Arnaud Le Blanc
246d13cd99 Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  [ci skip] NEWS
  [ci skip] NEWS
  Return immediately when FD_SETSIZE is exceeded (#9602)
2022-10-01 11:24:23 +02:00
Arnaud Le Blanc
d4b99542d5 Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  [ci skip] NEWS
  Return immediately when FD_SETSIZE is exceeded (#9602)
2022-10-01 11:23:34 +02:00
Arnaud Le Blanc
80232de0e4 Return immediately when FD_SETSIZE is exceeded (#9602) 2022-10-01 11:20:43 +02:00
Christoph M. Becker
3d2d7d1000 Merge branch 'PHP-8.1' into PHP-8.2
* PHP-8.1:
  Revert unintended test expectation change
2022-09-28 12:14:39 +02:00
Christoph M. Becker
9caa71f94f Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  Revert unintended test expectation change
2022-09-28 12:13:39 +02:00
Athos Ribeiro
e6a822d437 Revert unintended test expectation change
Commit fbe3059 included an unintended change to the test which checks if
dns_get_record populates its additional parameter. This patch reverts
such change.

The issue was not detected by the CIs because their tests run in
the --offline mode, and the test in question needs internet connection.

Closes GH-9625.
2022-09-28 12:12:21 +02:00
Derick Rethans
25290cd25c Merge branch 'PHP-8.1' into PHP-8.2 2022-09-27 14:11:40 +01:00
Derick Rethans
cfee252a95 Merge branch 'PHP-8.0' into PHP-8.1 2022-09-27 14:11:31 +01:00
Derick Rethans
def8c8d174 Merge branch 'PHP-7.4' into PHP-8.0 2022-09-27 14:11:14 +01:00
Andy Postnikov
2108d6983f Revert "Fix parse_url(): can not recognize port without scheme"
This reverts commit 72d83709d9.

Closes GH-9569
2022-09-23 19:44:29 +02:00
Derick Rethans
0611be4e82 Fix #81727: Don't mangle HTTP variable names that clash with ones that have a specific semantic meaning. 2022-09-09 17:10:04 +01:00
Christoph M. Becker
65619e868c Fix tests
These changes have been overlooked, when 7908aae30c
had been reverted.
2022-08-30 16:52:33 +02:00
Ben Ramsey
1862152145 Revert "Fix GH-9296: ksort behaves incorrectly on arrays with mixed keys"
This reverts commit cd1aed8edd, as
discussed on internals (<https://externals.io/message/118483>).
2022-08-30 09:13:46 -05:00
Máté Kocsis
adb45a63c0 Fix GH-9186 @strict-properties can be bypassed using unserialization (#9354)
* Emit deprecation warnings when adding dynamic properties to classes during unserialization - this will become an Error in php 9.0.
  (Adding dynamic properties in other contexts was already a deprecation warning - the use case of unserialization was overlooked)
* Throw an error when attempting to add a dynamic property to a `readonly` class when unserializing
* Add new serialization methods `__serialize`/`__unserialize` for SplFixedArray to avoid creating deprecated dynamic
  properties that would then be added to the backing fixed-size array
* Don't add named dynamic/declared properties (e.g. $obj->foo) of SplFixedArray to the backing array when unserializing
* Update tests to declare properties or to expect the deprecation warning
* Add news entry

Co-authored-by: Tyson Andre <tysonandre775@hotmail.com>
2022-08-30 07:46:32 -04:00
Christoph M. Becker
725cb4e8ad Revert "Fix GH-9296: ksort behaves incorrectly on arrays with mixed keys"
This reverts commit cd1aed8edd, as
discussed on internals (<https://externals.io/message/118483>).
2022-08-29 12:41:36 +02:00
Christoph M. Becker
a1f5c8a587 Fix GH-9227: Trailing dots and spaces in filenames are ignored
Given that Windows ignores trailing dots and spaces in filenames, we
catch that ourselves to avoid confusion with the respective filenames
without these characters.

Closes GH-9229.
2022-08-19 14:23:57 +02:00
Christoph M. Becker
45a3f4cab0 Merge branch 'PHP-8.1'
* PHP-8.1:
  Fix GH-9316: $http_response_header is wrong for long status line
2022-08-18 12:31:56 +02:00
Christoph M. Becker
5d196d9e7c Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  Fix GH-9316: $http_response_header is wrong for long status line
2022-08-18 12:30:45 +02:00
Christoph M. Becker
72da418719 Fix GH-9316: $http_response_header is wrong for long status line
While the reason-phrase in a HTTP response status line is usually
short, there is no actual limit specified by the RFCs.  As such, we
must not assume that the line fits into the buffer (which is currently
128 bytes large).

Since there is no real need to present the complete status line, we
simply read and discard the rest of a long line.

Co-authored-by: Tim Düsterhus <timwolla@googlemail.com>

Closes GH-9319.
2022-08-18 12:27:54 +02: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
twosee
14d71957ca Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  Re-fix GH-8409: SSL handshake timeout persistent connections hanging
2022-08-14 20:14:57 +08:00
twosee
b8d07451d4 Re-fix GH-8409: SSL handshake timeout persistent connections hanging
This fix is another solution to replace d0527427be, use zend_try and zend_catch to make sure persistent stream will be released when error occurred.

Closes GH-9332.
2022-08-14 20:13:36 +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
Christoph M. Becker
1094a859ad Merge branch 'PHP-8.1'
* PHP-8.1:
  Fix GH-9296: `ksort` behaves incorrectly on arrays with mixed keys
2022-08-12 11:38:21 +02:00
Christoph M. Becker
7908aae30c Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0:
  Fix GH-9296: `ksort` behaves incorrectly on arrays with mixed keys
2022-08-12 11:36:24 +02:00
Denis Vaksman
cd1aed8edd Fix GH-9296: ksort behaves incorrectly on arrays with mixed keys
The comparator function used at ksort in SORT_REGULAR mode
need to be consistent with basic comparison rules. These rules
were changed in PHP-8.0 for numeric strings, but comparator
used at ksort kept the old behaviour. It leads to inconsistent
situations, when after ksort the first key is GREATER than some
of the next ones by according to the basic comparison operators.

Closes GH-9293.
2022-08-12 11:32:23 +02:00