rfc:deprecations_php_8_5

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
rfc:deprecations_php_8_5 [2025/02/07 13:47] – Fix Status timwollarfc:deprecations_php_8_5 [2025/03/30 17:46] (current) – Add finfo_buffer() $context param girgias
Line 3: Line 3:
   * Authors:   * Authors:
     * Gina Peter Banyard <girgias@php.net>     * Gina Peter Banyard <girgias@php.net>
 +    * Christoph M. Becker <cmb@php.net>
   * Status: Draft   * Status: Draft
   * Implementation: TBD   * Implementation: TBD
Line 14: Line 15:
   * Deprecate ''key_length'' parameter of <php>openssl_pkey_derive()</php>   * Deprecate ''key_length'' parameter of <php>openssl_pkey_derive()</php>
   * Deprecate PDO's 'uri:' scheme   * Deprecate PDO's 'uri:' scheme
 +  * Deprecate PDO::ERRMODE_WARNING error mode
 +  * Deprecate intl.error_level INI setting
   * Deprecate Reflection*::setAccessible()   * Deprecate Reflection*::setAccessible()
   * Deprecate FILTER_DEFAULT constant   * Deprecate FILTER_DEFAULT constant
Line 27: Line 30:
   * Deprecate semicolon after ''case'' in switch statement   * Deprecate semicolon after ''case'' in switch statement
   * Deprecate the <php>$exclude_disabled</php> parameter of <php>get_defined_functions()</php>   * Deprecate the <php>$exclude_disabled</php> parameter of <php>get_defined_functions()</php>
 +  * Deprecate building ext/ldap against Oracle LDAP
 +  * Deprecate passing ''null'' to <php>readdir()</php>, <php>rewinddir()</php>, and <php>closedir()</php>
 +  * Deprecate the <php>$context</php> parameter for <php>finfo_buffer()</php>
  
 ===== Proposal ===== ===== Proposal =====
Line 44: Line 50:
  
 TODO: https://github.com/php/php-src/blob/d7bdf902e5b88189037883d462e422838bd9be55/ext/pdo/pdo_dbh.c#L323-L335 TODO: https://github.com/php/php-src/blob/d7bdf902e5b88189037883d462e422838bd9be55/ext/pdo/pdo_dbh.c#L323-L335
 +
 +==== Deprecate PDO::ERRMODE_WARNING error mode ====
 +
 +Author: Gina Peter Banyard <girgias@php.net>
 +
 +TODO: Warnings are a weird mixture of exceptions, and setting the error code.
 +
 +==== Deprecate intl.error_level INI setting ====
 +
 +Author: Gina Peter Banyard <girgias@php.net>
 +
 +TODO: Similar to PDO::ERRMODE_WARNING where intl.use_exceptions should be prefered instead.
  
 ==== Deprecate Reflection*::setAccessible() ==== ==== Deprecate Reflection*::setAccessible() ====
Line 225: Line 243:
 As such, this parameter has no longer any effect and is pointless. As such, this parameter has no longer any effect and is pointless.
 Therefore, we propose to deprecate it. Therefore, we propose to deprecate it.
 +
 +==== Deprecate building ext/ldap against Oracle LDAP ====
 +
 +Author: Christoph M. Becker <cmb@php.net>
 +
 +Building ext/ldap against Oracle LDAP had been supported, and is theoretically still supported, but is apparently [[https://github.com/php/php-src/issues/15051|broken for a while]].  The Oracle LDAP implementation is part of Oracle Instant Client, and uses an older LDAP API; apparently, there are no plans for updating this.  So users are almost certainly better off to build against OpenLDAP (and if they need OCI8, to build that as shared library, and load after ext/ldap).
 +
 +Therefore we supposed to deprecate building ext/ldap against Oracle LDAP.
 +
 +It should be noted that the ``ldap_connect_wallet()`` function, [[https://wiki.php.net/rfc/deprecate_functions_with_overloaded_signatures#ldap_connect|available only as of PHP 8.3]], would also be part of the deprecation, as well as other existing Oracle LDAP specific features.
 +
 +==== Deprecate passing null to readdir(), rewinddir(), and closedir()  ====
 +
 +Author: Gina Peter Banyard <girgias@php.net>
 +
 +TODO: This assumes the last open directory stream opened with <php>opendir()</php> or <php>dir()</php>
 +we have deprecated such usages previous (see mysql and pgsql).
 +
 +
 +==== Deprecate the $context parameter for finfo_buffer()  ====
 +
 +Author: Gina Peter Banyard <girgias@php.net>
 +
 +This parameter is unused, and the only reason it exists in the first place is because the implementation of it was delegated to a "god" C function that also was handingl <php>finfo_file()</php> which does use the provided context.
 +
 +As this parameter is not useful for this function it should be deprecated.
  
 ===== Backward Incompatible Changes ===== ===== Backward Incompatible Changes =====
rfc/deprecations_php_8_5.1738936044.txt.gz · Last modified: 2025/02/07 13:47 by timwolla