Revision tags: php-8.0.6, php-7.4.19, php-7.4.18, php-7.3.28, php-8.0.5, php-8.0.5RC1, php-7.4.18RC1, php-8.0.4RC1, php-7.4.17RC1, php-8.0.3, php-7.4.16, php-8.0.3RC1, php-7.4.16RC1, php-8.0.2, php-7.4.15, php-7.3.27, php-8.0.2RC1, php-7.4.15RC2, php-7.4.15RC1, php-8.0.1, php-7.4.14, php-7.3.26, php-7.4.14RC1, php-8.0.1RC1, php-7.3.26RC1, php-8.0.0, php-7.3.25, php-7.4.13, php-8.0.0RC5, php-7.4.13RC1, php-8.0.0RC4, php-7.3.25RC1, php-7.4.12, php-8.0.0RC3, php-7.3.24, php-8.0.0RC2, php-7.4.12RC1, php-7.3.24RC1, php-7.2.34, php-8.0.0rc1, php-7.4.11, php-7.3.23, php-8.0.0beta4, php-7.4.11RC1, php-7.3.23RC1, php-8.0.0beta3, php-7.4.10, php-7.3.22, php-8.0.0beta2, php-7.3.22RC1, php-7.4.10RC1, php-8.0.0beta1, php-7.4.9, php-7.2.33, php-7.3.21, php-8.0.0alpha3, php-7.4.9RC1, php-7.3.21RC1, php-7.4.8, php-7.2.32, php-8.0.0alpha2, php-7.3.20, php-8.0.0alpha1, php-7.4.8RC1, php-7.3.20RC1 |
|
#
269c8dac |
| 10-Jun-2020 |
Ilija Tovilo |
Implement enums RFC: https://wiki.php.net/rfc/enumerations Co-authored-by: Nikita Popov <nikita.ppv@gmail.com> Closes GH-6489. |
#
500b4b49 |
| 03-Mar-2021 |
Nikita Popov |
Explicitly print reference wrappers in debug_zval_dump() Closes GH-6750. |
#
b4fbf1d3 |
| 26-Feb-2021 |
Tyson Andre |
Optimize serializing class names Because of the memcpy, compilers can't infer that ZSTR_LEN (i.e. class_name->len) did not change, so they copy it out of memory into a register for the l
Optimize serializing class names Because of the memcpy, compilers can't infer that ZSTR_LEN (i.e. class_name->len) did not change, so they copy it out of memory into a register for the last two accesses. php_var_serialize_string already does something similar. Closes GH-6734
show more ...
|
#
fa14eedb |
| 01-Mar-2021 |
Dmitry Stogov |
Optimized object serialization without rebulding properties HashTable |
#
56afe2f2 |
| 01-Mar-2021 |
Dmitry Stogov |
Incomplete class may have only single "MAGIC_MEMBER" |
#
6c5942f8 |
| 26-Feb-2021 |
Dmitry Stogov |
serialize() optimization |
#
0f6c0020 |
| 25-Feb-2021 |
Dmitry Stogov |
Speed up __sleep() and __wakeup() calls |
#
3e01f5af |
| 15-Jan-2021 |
Nikita Popov |
Replace zend_bool uses with bool We're starting to see a mix between uses of zend_bool and bool. Replace all usages with the standard bool type everywhere. Of course, zend_bool
Replace zend_bool uses with bool We're starting to see a mix between uses of zend_bool and bool. Replace all usages with the standard bool type everywhere. Of course, zend_bool is retained as an alias.
show more ...
|
#
e2c8ab7c |
| 12-Jan-2021 |
Nikita Popov |
Print "interned" instead of fake refcount in debug_zval_dump() debug_zval_dump() currently prints refcount 1 for interned strings and arrays, which does not really reflect the truth. The
Print "interned" instead of fake refcount in debug_zval_dump() debug_zval_dump() currently prints refcount 1 for interned strings and arrays, which does not really reflect the truth. These values are not refcounted, so the refcount is misleading. Instead print an "interned" tag. Closes GH-6598.
show more ...
|
#
422d1665 |
| 14-Jan-2021 |
Nikita Popov |
Make convert_to_*_ex simple aliases of convert_to_* Historically, the _ex variants separated the zval first, if a conversion was necessary. This distinction no longer makes sense sin
Make convert_to_*_ex simple aliases of convert_to_* Historically, the _ex variants separated the zval first, if a conversion was necessary. This distinction no longer makes sense since PHP 7. The only difference that was still left is that _ex checked whether the type is the same first, but the usage of these macros did not actually distinguish on whether such an inlined check is valuable or not in a given context. Also drop the unused convert_to_explicit_type macros.
show more ...
|
#
26fc4bea |
| 03-Dec-2020 |
Nikita Popov |
Remove some INDIRECT handling in standard library |
#
0d99628a |
| 31-Dec-2020 |
Tyson Andre |
Fix edge case serializing __PHP_Incomplete_Class properties. This was using strcmp instead of zend_string_equals_literal. As a result, the property count didn't match the number of prope
Fix edge case serializing __PHP_Incomplete_Class properties. This was using strcmp instead of zend_string_equals_literal. As a result, the property count didn't match the number of properties being serialized if properties started with "__PHP_Incomplete_Class\0" (unlikely) (before, `'O:8:"Missing_":1:{}'` would be serialized, which failed to unserialize) Everywhere else expects the MAGIC_MEMBER to match exactly, and this should use zend_string_equals_literal as an example for other code. This has used strcmp since 2004 in deb84befae4bbc3686a4f2ed82b04e2cabae5dc0 Closes GH-6555
show more ...
|
#
217f247b |
| 25-Nov-2020 |
Nikita Popov |
Merge branch 'PHP-7.4' into PHP-8.0 * PHP-7.4: Fixed bug #80411
|
#
2fb12be8 |
| 25-Nov-2020 |
Nikita Popov |
Fixed bug #80411 References to null-serializations are stored as null, and as such are part of the reference count. Reminds me that we really need to deprecate the mess that is
Fixed bug #80411 References to null-serializations are stored as null, and as such are part of the reference count. Reminds me that we really need to deprecate the mess that is Serializable.
show more ...
|
#
c37a1cd6 |
| 10-Sep-2020 |
Máté Kocsis |
Promote a few remaining errors in ext/standard Closes GH-6110 |
#
0c238ede |
| 07-Jul-2020 |
Tyson Andre |
[RFC] Only unserialize Phar metadata when getMetadata() is called In other words, don't automatically unserialize when the magic phar:// stream wrappers are used. RFC: https://wiki.p
[RFC] Only unserialize Phar metadata when getMetadata() is called In other words, don't automatically unserialize when the magic phar:// stream wrappers are used. RFC: https://wiki.php.net/rfc/phar_stop_autoloading_metadata Also, change the signature from `getMetadata()` to `getMetadata(array $unserialize_options = [])`. Start throwing earlier if setMetadata() is called and serialization threw. See https://externals.io/message/110856 and https://bugs.php.net/bug.php?id=76774 This was refactored to add a phar_metadata_tracker for the following reasons: - The way to properly copy a zval was previously implicit and undocumented (e.g. is it a pointer to a raw string or an actual value) - Avoid unnecessary serialization and unserialization in the most common case - If a metadata value is serialized once while saving a new/modified phar file, this allows reusing the same serialized string. - Have as few ways to copy/clone/lazily parse metadata (etc.) as possible, so that code changes can be limited to only a few places in the future. - Performance is hopefully not a concern - copying a string should be faster than unserializing a value, and metadata should be rare in most cases. Remove unnecessary skip in a test(Compression's unused) Add additional assertions about usage of persistent phars Improve robustness of `Phar*->setMetadata()` - Add sanity checks for edge cases freeing metadata, when destructors or serializers modify the phar recursively. - Typical use cases of php have phar.readonly=1 and would not be affected. Closes GH-5855
show more ...
|
#
6e92487f |
| 22-Jul-2020 |
twosee |
Fix warnings of strict-prototypes Closes GH-5887. |
#
c0172aa2 |
| 11-Jul-2020 |
twosee |
debug_zval_dump(): Don't skip recursion detection on first level A complement to ae6f45ad45e072260d93f828d81fee9548123044 Closes GH-5843. |
#
614b2191 |
| 11-Jul-2020 |
twosee |
Merge branch 'PHP-7.4' * PHP-7.4: Fixed BC break of php_debug_zval_dump
|
#
7a39e174 |
| 11-Jul-2020 |
twosee |
Merge branch 'PHP-7.3' into PHP-7.4 * PHP-7.3: Fixed BC break of php_debug_zval_dump
|
#
f0b2c2cb |
| 11-Jul-2020 |
twosee |
Fixed BC break of php_debug_zval_dump It introduced by fixing bug #79830 |
#
40efb7ad |
| 11-Jul-2020 |
twosee |
Merge branch 'PHP-7.4' * PHP-7.4: Fixed bug #79830 introduced by fixing bug #79821 # Conflicts: # ext/standard/var.c
|
#
6ef08b19 |
| 11-Jul-2020 |
twosee |
Merge branch 'PHP-7.3' into PHP-7.4 * PHP-7.3: Fixed bug #79830 introduced by fixing bug #79821
|
#
56dec3cc |
| 11-Jul-2020 |
twosee |
Fixed bug #79830 introduced by fixing bug #79821 This also fixes memory error in debug_zval_dump and var_export. |
#
342fe094 |
| 10-Jul-2020 |
twosee |
Merge branch 'PHP-7.4' * PHP-7.4: Fixed bug #79821
|