The Daily Commit · Édition de rubrique La une PHP AI Dev EN DE FR ES

The Php Times

RFC Watch — Écosystème

La semaine de PHP Internals : 42 scrutins ouverts à l'approche du gel de PHP 8.6

R/PHP (TOP), 2 août 2026 sélectionné par Sönke

Semaine chargée pour PHP Internals : 42 scrutins simultanés, dont le vote de dépréciation en 35 volets pour PHP 8.6 avec list() probablement rejeté, un match nul sur l'opérateur d'assignation pipe, des votes favorables pour les valeurs par défaut readonly et les écritures const, et la classe Duration quasi adoptée — à deux semaines du gel.

Gina P. Banyard a ouvert le vote de dépréciation massif pour PHP 8.6 : 35 scrutins distincts, chacun exigeant une majorité des 2/3, jusqu'au 10 août. La plupart passent aisément (mysqli_get_charset() 34–0, spl_classes() 33–0), mais les points majeurs échouent : list() — repéré plus de 12 000 fois sur Packagist — est à 17–19, l'alias gettext _() à 6–18, la réservation de in/out/inout à 5–16 et let à 17–10.

Le filtre de flux dechunk fait jeu égal à 15–13. Matteo Beccati réclame une alternative livrée avec la dépréciation ; Jakub Zelenka juge la dépréciation bâclée puisque le filtre reste nécessaire en interne. Pierre Joye rétorque que la présence dans un code n'implique pas l'usage — Symfony désactive le filtre par défaut mais fournit une alternative PHP pure depuis la 8.2. Zelenka a en outre déjà corrigé la limitation de select sur les flux filtrés dans master.

La première RFC de Caleb White, l'opérateur d'assignation pipe |>=, est à 8–8 avec 3 abstentions (jusqu'au 11 août). Les valeurs par défaut des propriétés readonly de Nick Sdot sont à 17–0 (jusqu'au 7 août), les écritures sur propriétés d'objets const de Khaled Alam à 11–2 (jusqu'au 8 août). Le scrutin sur les versions minimales (autoconf 2.71 : 27–2, COM_RESET_CONNECTION : 26–0) et la classe Time\Duration (33–1, noms de méthodes multiplyBy/divideBy 28–2) touchent à leur fin.

Seifeddine Gmati a ouvert le vote sur les types scalaires littéraux pendant 18 minutes avant de le retirer pour violation de la politique de propositions ; réouverture prévue le 30 juillet, possiblement recentrée sur 8.7. L'épisode a relancé les critiques sur la lourdeur du processus. Derick Rethans a signalé une régression : la RFC display-error-function-args a cassé la suite de tests Xdebug car les avertissements de flux d'include, require, bzopen() et finfo_open() n'indiquent plus le chemin du fichier. Kamil Tekiela défend ce comportement comme protection contre les fuites d'informations.

Edmond du projet TrueAsync a transformé la pré-RFC de la semaine dernière en une RFC complète pour le support de la concurrence dans le moteur : représentation minimale de coroutines avec un ordonnanceur enfichable par les extensions, sans nouvelles classes, fonctions ni syntaxe, sans parallélisme. Osama Aldemeery a livré la RFC PREG_THROW_ON_ERROR : un drapeau optionnel transformant les échecs de preg_*() en PregException interceptable, sur le modèle de JSON_THROW_ON_ERROR, pour la version suivant 8.6.

Calendrier 8.6 : gel souple au tag du 11 août, bêta 1 le 13 août, gel strict au RC 1 le 22 septembre ; tous les votes 8.6 doivent être clos avant la bêta 1. En outre : curl confirme que les en-têtes CURLOPT_HTTPHEADER ne doivent pas se terminer par CRLF ; les PR snmp de Steven Wilton attendent le merge final ; les pages de bugs PEAR échouent à cause d'e-mails de rapporteurs non confirmés ; Larry Garfield renvoie les collections aux generics réifiés et à un futur groupe de travail.

Lire la source originale (en anglais) ↗

Évaluer cet article : +1

Tribune des lecteurs

Pas encore de contributions — lance le débat.

← Écosystème — Page B1

"All the Code That's Fit to Ship" · The Daily Commit · Édition écran · Mentions légales · Politique de confidentialité