The Daily Commit · Edición de sección Portada PHP AI Dev EN DE FR ES

The Php Times

RFC Watch — Ecosistema

El RFC de deprecaciones de PHP 8.6 añade datos de uso desde escaneos de Packagist


En internals se debate una propuesta agrupada de deprecaciones para PHP 8.6.

PHP INTERNALS ([RFC]/[VOTE]), 16 de julio de 2026 seleccionado por Charlie

Juliette Reinders Folmer aportó resultados de escaneos con PHPCompatibility sobre Packagist Top 4000 para que los votos tengan cifras de uso real. La discusión gira en torno a la falta de análisis de impacto en varias propuestas y al plazo para congelar el RFC.

En PHP Internals se está revisando un RFC agrupado con deprecaciones previstas para PHP 8.6. Gina P. Banyard señaló que las propuestas se fueron reuniendo durante el último año por distintas personas y que cada deprecación se votará por separado. También recordó que, con la política nueva, el RFC debe quedar finalizado y congelado como tarde el 13 de julio.

Después, el debate se centró en la ausencia de datos sobre impacto real. Juliette Reinders Folmer sostuvo que faltaba información útil para decidir y ofreció ayuda para generar escaneos con PHP_CodeSniffer y PHPCompatibility.

Más tarde publicó resultados para Packagist Top 4000, con 446.664 archivos analizados al 2 de julio. Aclaró que esa muestra no representa todo el código PHP, que los hallazgos no fueron validados manualmente ni deduplicados, y que no muestran ni el esfuerzo de migración ni el efecto sobre proyectos dependientes.

Entre las cifras publicadas aparecen 12.275 incidencias para list(), 625 para spl_object_hash(), 303 para is_integer(), 96 para la función _(), 42 para define() con $case_insensitive, 35 para is_double(), 33 para in/out/inout, 21 para namespace como constante de clase o propiedad estática, 17 para SORT_LOCALE_STRING, 16 para is_long(), 11 para strcoll(), 9 para metaphone(), 8 para return en finally y 8 para doubleval(). También se informaron ceros en varios casos, entre ellos is_subclass_of(), is_a(), spl_classes(), mysqli_stmt_init() en este escaneo y mysqli_get_charset().

La conversación también corrigió algunos detalles. Tim Düsterhus señaló una agrupación engañosa en in/out/inout y posibles errores en la categoría de _ como alias de constante. Más tarde, Kamil Tekiela dijo que había omitido mysqli_stmt_init() en la versión inicial y que el texto del RFC ya se había aclarado. La cuestión de fondo sigue siendo cuánto análisis de impacto debe acompañar a cada deprecación antes de votar.

Leer la fuente original (en inglés) ↗

Valora este artículo: 0

Tribuna de lectores

Aún no hay aportaciones — abre el debate.

← Ecosistema — Page B1

"All the Code That's Fit to Ship" · The Daily Commit · Edición de pantalla · Información legal · Política de privacidad