Un año después del lanzamiento de Perl 5.28.0, se lanzó Perl 5.30.0.
Cambios importantes:
- Se agregó soporte para las versiones 11, 12 y la versión preliminar 12.1 de Unicode;
- El límite superior 'n' establecido en el cuantificador de expresiones regulares en la forma '{m, n}' se ha duplicado a 65534;
- Los metacaracteres en las especificaciones de los valores de las propiedades de Unicode ahora son parcialmente compatibles;
- Se agregó soporte para qr’N{name}’;
- Ahora se puede compilar Perl para siempre utilizar operaciones de locales seguras para hilos;
- La longitud limitada de la variable en la coincidencia con el patrón de expresión regular ahora se soporta experimentalmente;
- Ahora se utiliza un método más rápido para convertir a UTF-8;
- Las locales turcas en UTF-8 ahora se admiten sin problemas;
- Se eliminó el uso de la macro opASSIGN del núcleo;
Funcionalidad eliminada y cambios incompatibles:
- Se eliminaron los módulos: Math::BigInt::CalcEmu, arybase, Locale::Code, B::Debug;
- Los delimitadores de patrones ahora deben ser grafemas;
- Los delimitadores ahora deben ser grafemas;
- Algunos métodos anteriormente obsoletos de uso de corchetes izquierdos sin escapar '{' en patrones de expresiones regulares ahora están prohibidos;
- Asignar un valor no nulo a la variable $[ (índice del primer elemento del array) ahora es fatal;
- Las funciones anteriormente obsoletas sysread()/syswrite() al procesar :utf8 ahora son fatales.
- my() en condiciones falsas ahora está prohibido;
- Se considera obsoleto $* (la variable se utilizó para habilitar coincidencias de múltiples líneas y fue eliminada en Perl v5.10.0) y $# (la variable se utilizó para formatear números de salida y fue eliminada en Perl v5.10.);
- Se considera obsoleto el uso no calificado de dump();
- Se eliminó File::Glob::glob();
- pack() ya no puede devolver UTF-8 no válido;
- Cualquier conjunto de dígitos en un script general es permitido en un script ejecutado por otro script;
- JSON::PP incluye por defecto allow_nonref;
Funcionalidad obsoleta:
- Ahora no se pueden usar diversos macros que procesan UTF-8 en el código XS;
Fuente: linux.org.ru

