Re: [RFC] [VOTE] Deprecations for PHP 8.5
| From: | Gina P. Banyard | Date: | Fri, 08 Aug 2025 20:07:19 +0000 |
| Subject: | Re: [RFC] [VOTE] Deprecations for PHP 8.5 | ||
| References: | 1 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-128443@lists.php.net to get a copy of this message | ||
On Friday, 25 July 2025 at 13:56, Gina P. Banyard <internals@gpb.moe> wrote:
> Hello internals,
>
> As Tim announced a few days ago, I've opened the votes for the deprecations:
> https://wiki.php.net/rfc/deprecations_php_8_5
>
> Please remember that the wiki is only capable to handle a single vote at a time,
> so please submit each vote you intend on casting individually.
>
Hello internals,
After two weeks of voting, I closed the votes of the "Deprecations for PHP 8.5" RFC at
19:45 UTC.
The following proposals have been accepted:
- Deprecate semicolon after case in switch statement (22 yay, 10 nay, 68.8%)
- Deprecate non-standard cast names (32 yay, 0 nay, 100%)
- Deprecate backticks as an alias for shell_exec (21 yay, 8 nay, 72.4%)
- Deprecate the __sleep() and __wakeup() magic methods (18 yay, 9 nay, 66.7%)
- Deprecate using values null as an array offset and when calling array_key_exists() (25 yay, 3 nay,
89.3%)
- Deprecate __debugInfo() returning null (22 yay, 5 nay, 81.5%)
- Deprecate constant redeclaration (31 yay, 0 nay, 100%)
- Deprecate closure binding issues (29 yay, 0 nay, 100%)
- Enact follow-up phase of the "Path to Saner Increment/Decrement operators" RFC (23 yay,
4 nay, 85.2%)
- Deprecate the report_memleaks INI directive (23 yay, 2 nay, 92.0%)
- Deprecate the register_argc_argv INI directive (27 yay, 0 nay, 100%)
- Remove disable_classes INI setting (26 yay, 0 nay, 100%)
- Deprecate Reflection*::setAccessible() (24 yay, 0 nay, 100%)
- Deprecate ReflectionClass::getConstant() for missing constants (25 yay, 0 nay, 100%)
- Deprecate ReflectionProperty::getDefaultValue() for properties without default values (21 yay, 2
nay, 89.5%)
- Deprecate ArrayObject and ArrayIterator with objects (26 yay, 0 nay, 100%)
- Deprecate SplObjectStorage::contains(), SplObjectStorage::attach(), and SplObjectStorage::detach()
(17 yay, 2 nay, 89.5%)
- Deprecate passing spl_autoload_call() to spl_autoload_unregister() (23 yay, 0 nay, 100%)
- Deprecate the $exclude_disabled parameter of get_defined_functions() (23 yay, 0 nay, 100%)
- Deprecate passing null to readdir(), rewinddir(), and closedir() (24 yay, 3 nay, 88.9%)
- Deprecate passing string which are not one byte long to ord() (20 yay, 4 nay, 83.3%)
- Deprecate passing integers outside the interval [0, 255] to chr() (21 yay, 1 nay, 95.5%)
- Formally deprecate socket_set_timeout (22 yay, 0 nay, 100%)
- Deprecate the $http_response_header predefined variable (22 yay, 2 nay, 91.7%)
- [ODBC] Remove flags for building against specific drivers directly (16 yay, 0 nay, 100%)
- Remove support for older ODBC versions (15 yay, 0 nay, 100%)
- Deprecate PDO's 'uri:' scheme (22 yay, 0 nay, 100%)
- Deprecate driver specific PDO constants and methods (17 yay, 6 nay, 73.9%)
- Deprecate Pdo\Pgsql constants related to statement transaction state (17 yay, 0 nay, 100%)
- Deprecate finfo_close() (24 yay, 2 nay, 92.3%)
- Deprecate xml_parser_free() (22 yay, 2 nay, 91.7%)
- Deprecate curl_close() (23 yay, 3 nay, 88.5%)
- Deprecate curl_share_close() (23 yay, 3 nay, 88.5%)
- Deprecate imagedestroy() (23 yay, 2 nay, 92.0%)
- Deprecate key_length parameter of openssl_pkey_derive() (24 yay, 0 nay, 100%)
- Deprecate intl.error_level INI setting (22 yay, 0 nay, 100%)
- Formally deprecate mysqli_execute() (22 yay, 0 nay, 100%)
- Deprecate building ext/ldap against Oracle LDAP (19 yay, 0 nay, 100%)
- Deprecate the $context parameter for finfo_buffer() (24 yay, 0 nay, 100%)
- Deprecate DATE_RFC7231 and DateTimeInterface::RFC7231 (22 yay, 0 nay, 100%)
And the following proposals have been rejected:
- Deprecate attributes applying to multiple class properties/constants (5 yay, 19 nay, 20.8%)
- Deprecate ReflectionParameter::allowsNull() (9 yay, 10 nay, 47.4%)
- Deprecate non-canonical type names for settype() (8 yay, 10 nay, 44.4%)
- Deprecate FILTER_DEFAULT constant (12 yay, 10 nay, 54.5%)
- Make $filter parameter mandatory for filter_*() functions (9 yay, 10 nay, 47.4%)
- Deprecate PDO::ERRMODE_WARNING error mode (8 yay, 12 nay, 40.0%)
Thank you to everyone that has voted and participated in the discussions.
Best regards,
Gina P. Banyard