#
6ab50381 |
| 14-Jan-2023 |
Niels <7771979+nielsdos@users.noreply.github.com> |
Make array_pad's $length warning less confusing (#10149) Remove array_pad's arbitrary length restriction The error message was wrong; it *is* possible to use a larger length. Fu
Make array_pad's $length warning less confusing (#10149) Remove array_pad's arbitrary length restriction The error message was wrong; it *is* possible to use a larger length. Furthermore, there is an arbitrary restriction on the new array's length. Fix both by checking the length against HT_MAX_SIZE.
show more ...
|
#
308fd311 |
| 04-Jan-2023 |
Max Kellermann |
ext/{standard,json,random,...}: add missing includes
|
#
d9651a94 |
| 10-Oct-2022 |
Dmitry Stogov |
Fix GH-9697: array_walk($ffiInstance, function () {}) crashes due to expecting mutable array
|
Revision tags: php-8.2.0RC1, php-8.1.10 |
|
#
18621521 |
| 30-Aug-2022 |
Ben Ramsey |
Revert "Fix GH-9296: `ksort` behaves incorrectly on arrays with mixed keys" This reverts commit cd1aed8eddd2dccbb55fb1bc3d67b23a8455248c, as discussed on internals (<https://externals.io
Revert "Fix GH-9296: `ksort` behaves incorrectly on arrays with mixed keys" This reverts commit cd1aed8eddd2dccbb55fb1bc3d67b23a8455248c, as discussed on internals (<https://externals.io/message/118483>).
show more ...
|
Revision tags: php-8.0.23 |
|
#
725cb4e8 |
| 29-Aug-2022 |
Christoph M. Becker |
Revert "Fix GH-9296: `ksort` behaves incorrectly on arrays with mixed keys" This reverts commit cd1aed8eddd2dccbb55fb1bc3d67b23a8455248c, as discussed on internals (<https://externals.io
Revert "Fix GH-9296: `ksort` behaves incorrectly on arrays with mixed keys" This reverts commit cd1aed8eddd2dccbb55fb1bc3d67b23a8455248c, as discussed on internals (<https://externals.io/message/118483>).
show more ...
|
#
bc4c0126 |
| 24-Aug-2022 |
Máté Kocsis |
Declare ext/standard constants in stubs - part 1 (#9404)
|
Revision tags: php-8.0.23RC1, php-8.1.10RC1, php-8.2.0beta3 |
|
#
cd1aed8e |
| 11-Aug-2022 |
Denis Vaksman |
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 rul
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.
show more ...
|
#
ad04345e |
| 04-Aug-2022 |
Christoph M. Becker |
Fix GH-9244: Segfault with array_multisort + array_shift After restructuring non-packed arrays, we either need to pack them if possible, or to rehash them. Closes GH-9247.
|
#
55f8c142 |
| 04-Aug-2022 |
Christoph M. Becker |
Avoid unnecessary comparison The first element of the `arrays` serves as base for the comparison, so there is no need to compare it to itself. Closes GH-9246.
|
Revision tags: php-8.2.0beta2, php-8.1.9, php-8.0.22 |
|
#
5c693c77 |
| 26-Jul-2022 |
Tim Düsterhus |
Remove `->last_unsafe` from php_random_status (#9132) Whenever ->last_unsafe is set to `true` an exception has been thrown. Thus we can replace the check for `->last_unsafe` with a check
Remove `->last_unsafe` from php_random_status (#9132) Whenever ->last_unsafe is set to `true` an exception has been thrown. Thus we can replace the check for `->last_unsafe` with a check for `EG(exception)` which is a much more natural way to ommunicate an error up the chain.
show more ...
|
Revision tags: php-8.1.9RC1, php-8.2.0beta1, php-8.0.22RC1 |
|
#
4d8dd8d2 |
| 19-Jul-2022 |
Go Kudo |
Implement Random Extension https://wiki.php.net/rfc/rng_extension https://wiki.php.net/rfc/random_extension_improvement
|
#
75a9a5f3 |
| 11-Jul-2022 |
Tim Düsterhus |
Add `zend_array_to_list()` (#8976) * Add zend_array_to_list() * Use `zend_array_to_list()` in `PHP_FUNCTION(array_values)`
|
Revision tags: php-8.0.21, php-8.1.8, php-8.2.0alpha3, php-8.1.8RC1, php-8.2.0alpha2 |
|
#
1a3d836f |
| 21-Jun-2022 |
Christoph M. Becker |
Fix CS (missing space)
|
Revision tags: php-8.0.21RC1 |
|
#
a1b05a3a |
| 20-Jun-2022 |
Christoph M. Becker |
Tweak $count range check of array_fill() We fix the `UNEXPECTED(EXPECTED(…))`, which does not make sense, and replace the magic number with the respective macro. We also add a test
Tweak $count range check of array_fill() We fix the `UNEXPECTED(EXPECTED(…))`, which does not make sense, and replace the magic number with the respective macro. We also add a test case to verify the expected behavior for an `array_fill()` edge case. Closes GH-8804.
show more ...
|
Revision tags: php-8.0.20, php-8.1.7, php-8.2.0alpha1, php-7.4.30, php-8.1.7RC1, php-8.0.20RC1, php-8.1.6, php-8.0.19, php-8.1.6RC1, php-8.0.19RC1, php-8.0.18, php-8.1.5, php-7.4.29, php-8.1.5RC1, php-8.0.18RC1 |
|
#
e948d3c9 |
| 23-Mar-2022 |
George Peter Banyard |
Use zend_string_to(upper|lower)() API directly
|
Revision tags: php-8.1.4, php-8.0.17, php-8.1.4RC1, php-8.0.17RC1, php-8.1.3, php-8.0.16, php-7.4.28, php-8.1.3RC1, php-8.0.16RC1, php-8.1.2, php-8.0.15, php-8.1.2RC1, php-8.0.15RC1 |
|
#
5d6bc250 |
| 22-Dec-2021 |
Dmitry Stogov |
Reset Bucket->key of deleted HastTable elemets to NULL. This allows elimination of some Z_ISUNDEF(Bucket->val) checks.
|
Revision tags: php-8.0.14, php-8.1.1, php-7.4.27, php-8.1.1RC1, php-8.0.14RC1, php-7.4.27RC1 |
|
#
fbdded1f |
| 28-Nov-2021 |
Tyson Andre |
Use interned string for calling count() in Zend VM Similar to f0dd79a7e415d8b1d4a3868a27975d6578c87961 Copied from GH-7695
|
Revision tags: php-8.1.0, php-8.0.13, php-7.4.26, php-7.3.33 |
|
#
18a0d46a |
| 16-Nov-2021 |
Nikita Popov |
Safely reassign array in usort() Make sure to destroy the old value only after assigning the new one. Otherwise we may try to double free, e.g. if GC runs during this dtor.
Safely reassign array in usort() Make sure to destroy the old value only after assigning the new one. Otherwise we may try to double free, e.g. if GC runs during this dtor. This caused an assertion failure in phpro/grumphp and is likely the cause for bug #81603 as well. (cherry picked from commit 6f38acfaf906482a70dfb528ba0e427efbd8e2db) (I applied this to the wrong base branch at first...)
show more ...
|
#
6f38acfa |
| 16-Nov-2021 |
Nikita Popov |
Safely reassign array in usort() Make sure to destroy the old value only after assigning the new one. Otherwise we may try to double free, e.g. if GC runs during this dtor.
Safely reassign array in usort() Make sure to destroy the old value only after assigning the new one. Otherwise we may try to double free, e.g. if GC runs during this dtor. This caused an assertion failure in phpro/grumphp and is likely the cause for bug #81603 as well.
show more ...
|
Revision tags: php-8.1.0RC6 |
|
#
90b7bde6 |
| 03-Nov-2021 |
Dmitry Stogov |
Use more compact representation for packed arrays. - for packed arrays we store just an array of zvals without keys. - the elements of packed array are accessible throuf as ht->arPacked[
Use more compact representation for packed arrays. - for packed arrays we store just an array of zvals without keys. - the elements of packed array are accessible throuf as ht->arPacked[i] instead of ht->arData[i] - in addition to general ZEND_HASH_FOREACH_* macros, we introduced similar familied for packed (ZEND_HASH_PACKED_FORECH_*) and real hashes (ZEND_HASH_MAP_FOREACH_*) - introduced an additional family of macros to access elements of array (packed or real hashes) ZEND_ARRAY_ELEMET_SIZE, ZEND_ARRAY_ELEMET_EX, ZEND_ARRAY_ELEMET, ZEND_ARRAY_NEXT_ELEMENT, ZEND_ARRAY_PREV_ELEMENT - zend_hash_minmax() prototype was changed to compare only values Because of smaller data set, this patch may show performance improvement on some apps and benchmarks that use packed arrays. (~1% on PHP-Parser) TODO: - sapi/phpdbg needs special support for packed arrays (WATCH_ON_BUCKET). - zend_hash_sort_ex() may require converting packed arrays to hash.
show more ...
|
Revision tags: php-7.4.26RC1, php-8.0.13RC1, php-8.1.0RC5, php-7.3.32, php-7.4.25, php-8.0.12, php-8.1.0RC4, php-8.0.12RC1, php-7.4.25RC1, php-8.1.0RC3, php-8.0.11, php-7.4.24, php-7.3.31, php-8.1.0RC2, php-7.4.24RC1, php-8.0.11RC1, php-8.1.0RC1 |
|
#
a13730c5 |
| 01-Sep-2021 |
twosee |
Simplify zend_forbid_dynamic_call() (#7443) The special cases (parse_str/mb_parse_str with a single argument) have been removed completely, we can simplify it now.
|
#
5b2ddf5a |
| 31-Aug-2021 |
Nikita Popov |
Export zend_use_resource_as_offset() Use a common implementation to generate this error message, as we do so in quite a few places dealing with array keys.
|
Revision tags: php-7.4.23, php-8.0.10, php-7.3.30, php-8.1.0beta3, php-8.0.10RC1, php-7.4.23RC1, php-8.1.0beta2, php-8.0.9, php-7.4.22 |
|
#
6d505d44 |
| 22-Jul-2021 |
Nikita Popov |
Add RETURN/RETVAL_COPY_DEREF() macros These were missing from the set... I think quite a few of these usages don't actually need the DEREF, but I've just kept things as is for n
Add RETURN/RETVAL_COPY_DEREF() macros These were missing from the set... I think quite a few of these usages don't actually need the DEREF, but I've just kept things as is for now.
show more ...
|
#
ae8647d9 |
| 20-Jul-2021 |
Levi Morrison |
Remove leading underscore for _zend_hash_find_known_hash (#7260) Convert zend_hash_find_ex(..., 1) to zend_hash_find_known_hash(...) Convert zend_hash_find_ex(..., 0) to zend_hash_find(.
Remove leading underscore for _zend_hash_find_known_hash (#7260) Convert zend_hash_find_ex(..., 1) to zend_hash_find_known_hash(...) Convert zend_hash_find_ex(..., 0) to zend_hash_find(...) Also add serializable changes to UPGRADING.INTERNALS summary
show more ...
|
Revision tags: php-8.1.0beta1, php-7.4.22RC1, php-8.0.9RC1 |
|
#
dcc8463a |
| 08-Jul-2021 |
Nikita Popov |
Deprecate IAP functions on objects Deprecate use of key(), current(), next(), prev(), reset() and end() on objects. Cast the object to array first. Part of https://wiki.php.net/
Deprecate IAP functions on objects Deprecate use of key(), current(), next(), prev(), reset() and end() on objects. Cast the object to array first. Part of https://wiki.php.net/rfc/deprecations_php_8_1.
show more ...
|