#
e52684ea |
| 19-Jan-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix GH-10377: Unable to have an anonymous readonly class This fixes the oversight that an anonymous class should be able to be readonly. Other identifiers such as final and abstract do n
Fix GH-10377: Unable to have an anonymous readonly class This fixes the oversight that an anonymous class should be able to be readonly. Other identifiers such as final and abstract do not make sense. As we still want nice errors for when users try to use these modifiers, or use multiple modifiers, we introduce a new function zend_add_anonymous_class_modifier that will perform verification for anonymous class modifiers, just like zend_add_class_modifier does for non-anonymous classes. Closes GH-10381
show more ...
|
#
5e617d0b |
| 18-Feb-2023 |
Cristian Rodríguez |
proc_open: reject array with empty command name (#10559) |
#
19a7281e |
| 11-Feb-2023 |
David Carlier |
sockets add SO_RERROR/SO_ZEROIZE/SO_SPLICE net/openbsd's constants. Closes GH-10563. |
#
908d954d |
| 28-Jan-2023 |
David Carlier |
sockets updlite protocol support, with checksum coverage settings. Close GH-10468 |
#
02bd52b5 |
| 20-Oct-2022 |
Ilija Tovilo |
Implement dynamic class const fetch https://wiki.php.net/rfc/dynamic_class_constant_fetch Closes GH-9793 |
#
01616080 |
| 24-Jan-2023 |
Máté Kocsis |
Fix GH-10259 ReflectionClass::getStaticProperties doesn't need null return type (#10418) |
#
c59e0750 |
| 23-Jan-2023 |
Tim Düsterhus |
password: Use `php_random_bytes_throw` in `php_password_make_salt` (#10393) The CSPRNG failing should be rare nowadays, but it *might* happen and without this patch it's hard for the use
password: Use `php_random_bytes_throw` in `php_password_make_salt` (#10393) The CSPRNG failing should be rare nowadays, but it *might* happen and without this patch it's hard for the user to find out why the salt generation failed: The error message is not actionable. This patch will automatically set the CSPRNG exception to the `$previous` exception of the ValueError that is thrown, allowing the developer to determine the cause of the salt generation failure. Before: Fatal error: Uncaught ValueError: Unable to generate salt in php-src/test3.php:3 Stack trace: #0 php-src/test3.php(3): password_hash(Object(SensitiveParameterValue), '2y') #1 {main} thrown in php-src/test3.php on line 3 After: Fatal error: Uncaught Random\RandomException: Cannot open /dev/urandom: No such file or directory in php-src/test3.php:3 Stack trace: #0 php-src/test3.php(3): password_hash(Object(SensitiveParameterValue), '2y') #1 {main} Next ValueError: Unable to generate salt in php-src/test3.php:3 Stack trace: #0 php-src/test3.php(3): password_hash(Object(SensitiveParameterValue), '2y') #1 {main} thrown in php-src/test3.php on line 3
show more ...
|
#
b60761ab |
| 23-Jan-2023 |
David Carlier |
[ci skip] UPGRADING |
#
256a34ed |
| 28-Nov-2022 |
David Carlier |
strtok warns in case the string to split was not set. Close GH-10016. |
#
f8f7fd2d |
| 22-Jan-2023 |
David Carlier |
sockets add AF_DIVERT constant. Allow to bind a socket to a divert port without being concerned by its address. for ipfw filter purpose (SO_USER_COOKIE constant). FreeBSD only.
sockets add AF_DIVERT constant. Allow to bind a socket to a divert port without being concerned by its address. for ipfw filter purpose (SO_USER_COOKIE constant). FreeBSD only. Close GH-10415.
show more ...
|
#
1f05d6ef |
| 20-Jan-2023 |
Máté Kocsis |
Fix GH-10292 make the default value of the first parame of srand() and mt_srand() nullable (#10380) Co-authored-by: Tim Düsterhus <timwolla@googlemail.com> |
#
db6840bd |
| 20-Jan-2023 |
Arnaud Le Blanc |
[ci skip] UPGRADING GH-10149 |
#
9198e889 |
| 10-Jan-2023 |
David Carlier |
socket DF flag on UDP socket via IP_MTU_DISCOVER on Linux and IP_DONTFRAGMENT on FreeBSD for path MTU discovery purpose. idea proposal via ml : https://marc.info/?l=php-internals&m=16732
socket DF flag on UDP socket via IP_MTU_DISCOVER on Linux and IP_DONTFRAGMENT on FreeBSD for path MTU discovery purpose. idea proposal via ml : https://marc.info/?l=php-internals&m=167329288509393&w=2 Close GH-10282
show more ...
|
#
55d19eee |
| 07-Jan-2023 |
David Carlier |
posix adding posix_fpathconf. follow-up on GH-10238 but with the file descriptor flavor. Close GH-10253 |
#
39b46a53 |
| 07-Jan-2023 |
Alex Dowad |
Implement Unicode conditional casing rules for Greek letter sigma The capital Greek letter sigma (Σ) should be lowercased as σ except when it appears at the end of a word; in that case,
Implement Unicode conditional casing rules for Greek letter sigma The capital Greek letter sigma (Σ) should be lowercased as σ except when it appears at the end of a word; in that case, it should be lowercased as the special form ς. This rule is included in the Unicode data file SpecialCasing.txt. The condition for applying the rule is called "Final_Sigma" and is defined in Unicode technical report 21. The rule is: • For the special casing form to apply, the capital letter sigma must be preceded by 0 or more "case-ignorable" characters, preceded by at least 1 "cased" character. • Further, capital sigma must NOT be followed by 0 or more case-ignorable characters and then at least 1 cased character. "Case-ignorable" characters include certain punctuation marks, like the apostrophe, as well as various accent marks. There are actually close to 500 different case-ignorable characters, including accent marks from Cyrillic, Hebrew, Armenian, Arabic, Syriac, Bengali, Gujarati, Telugu, Tibetan, and many other alphabets. This category also includes zero-width spaces, codepoints which indicate RTL/LTR text direction, certain musical symbols, etc. Since the rule involves scanning over "0 or more" of such case-ignorable characters, it may be necessary to scan arbitrarily far to the left and right of capital sigma to determine whether the special lowercase form should be used or not. However, since we are trying to be both memory-efficient and CPU-efficient, this implementation limits how far to the left we will scan. Generally, we scan up to 63 characters to the left looking for a "cased" character, but not more. When scanning to the right, we go up to the end of the string if necessary, even if it means scanning over thousands of characters. Anyways, it is almost impossible to imagine that natural text will include "words" with more than 63 successive apostrophes (for example) followed by a capital sigma. Closes GH-8096.
show more ...
|
#
69d49e4d |
| 05-Jan-2023 |
David Carlier |
posix adding posix_pathconf. to get configuration variables from a directory/file. Closes GH-10238. |
#
5c64cf58 |
| 04-Jan-2023 |
George Peter Banyard |
[ci skip] Add UPGRADING entry for posix changes |
#
9c257256 |
| 21-Dec-2022 |
David Carlier |
sockets adding TCP_QUICKACK constant. having tigher control on ACK delays, difference is the setting is `volatile` as it can be turned off by the kernel if not set explicitally set
sockets adding TCP_QUICKACK constant. having tigher control on ACK delays, difference is the setting is `volatile` as it can be turned off by the kernel if not set explicitally set otherwise on the socket. Closes GH-10145.
show more ...
|
#
027add9e |
| 16-Dec-2022 |
Arnaud Le Blanc |
[ci skip] UPGRADING |
#
f9a1a903 |
| 14-Dec-2022 |
Tim Düsterhus |
Add Randomizer::nextFloat() and Randomizer::getFloat() (#9679) * random: Add Randomizer::nextFloat() * random: Check that doubles are IEEE-754 in Randomizer::nextFloat() *
Add Randomizer::nextFloat() and Randomizer::getFloat() (#9679) * random: Add Randomizer::nextFloat() * random: Check that doubles are IEEE-754 in Randomizer::nextFloat() * random: Add Randomizer::nextFloat() tests * random: Add Randomizer::getFloat() implementing the y-section algorithm The algorithm is published in: Drawing Random Floating-Point Numbers from an Interval. Frédéric Goualard, ACM Trans. Model. Comput. Simul., 32:3, 2022. https://doi.org/10.1145/3503512 * random: Implement getFloat_gamma() optimization see https://github.com/php/php-src/pull/9679/files#r994668327 * random: Add Random\IntervalBoundary * random: Split the implementation of γ-section into its own file * random: Add tests for Randomizer::getFloat() * random: Fix γ-section for 32-bit systems * random: Replace check for __STDC_IEC_559__ by compile-time check for DBL_MANT_DIG * random: Drop nextFloat_spacing.phpt * random: Optimize Randomizer::getFloat() implementation * random: Reject non-finite parameters in Randomizer::getFloat() * random: Add NEWS/UPGRADING for Randomizer’s float functionality
show more ...
|
#
16ce751f |
| 09-Dec-2022 |
Tim Düsterhus |
[ci skip] Add json_validate() RFC link to UPGRADING |
#
ac3ecd03 |
| 09-Dec-2022 |
Joshua Rüsweg |
Add `Randomizer::getBytesFromString()` method (#9664) * Add `Randomizer::getBytesFromAlphabet()` method * Rename `getBytesFromAlphabet` to `getBytesFromString` * [ci skip]
Add `Randomizer::getBytesFromString()` method (#9664) * Add `Randomizer::getBytesFromAlphabet()` method * Rename `getBytesFromAlphabet` to `getBytesFromString` * [ci skip] Add NEWS/UPGRADING for Randomizer::getBytesFromString() Co-authored-by: Tim Düsterhus <tim@bastelstu.be>
show more ...
|
#
dd8de1e7 |
| 15-Nov-2022 |
Tim Düsterhus |
Promote unserialize() notices to warning (#9629) * Unserialize: Migrate "Unexpected end of serialized data" to E_WARNING * Unserialize: Migrate "Error at offset %d of %d bytes" to E
Promote unserialize() notices to warning (#9629) * Unserialize: Migrate "Unexpected end of serialized data" to E_WARNING * Unserialize: Migrate "Error at offset %d of %d bytes" to E_WARNING * Unserialize: Migrate "%s is returned from __sleep() multiple times" to E_WARNING * Add NEWS for “Promote unserialize() notices to warning”
show more ...
|
#
e0e347b4 |
| 11-Nov-2022 |
David Carlier |
Fix GH-9923: Add the `SIGINFO` constant in pcntl for system supporting it. Closes #9938 |
#
4c4e72f1 |
| 28-Oct-2022 |
David CARLIER |
socket add socket_atmark support. checks whether the socket belongs to the out-of-band mark, thus allows to be processed accordingly (using the MSG_OOB flag on send/recv). Clos
socket add socket_atmark support. checks whether the socket belongs to the out-of-band mark, thus allows to be processed accordingly (using the MSG_OOB flag on send/recv). Closes #9846.
show more ...
|