Un año después del lanzamiento de Perl 5.28.0, se produjo el lanzamiento. Perl 5.30.0.
Cambios importantes:
- Se agregó soporte para las versiones Unicode 11, 12 y borrador 12.1;
- El límite superior "n" dado en el cuantificador de expresión regular de la forma "{m, n}" se ha duplicado a 65534;
- Los metacaracteres en las especificaciones de valores de propiedades Unicode ahora son parcialmente compatibles;
- Se agregó soporte para qr'N{name}';
- Perl ahora se puede compilar para utilizar siempre operaciones locales seguras para subprocesos;
- Ahora se admite experimentalmente una longitud variable limitada versus un patrón de expresión regular;
- Ahora se utiliza un método más rápido para convertir a UTF-8;
- Las configuraciones locales Turkic UTF-8 ahora son compatibles sin problemas;
- Se eliminó el uso de la macro opASSIGN del kernel;
Funcionalidad eliminada y cambios incompatibles:
- Módulos eliminados: Math::BigInt::CalcEmu, arybase, Locale::Code, B::Debug;
- Los separadores de patrones ahora deberían ser grafemas;
- Los separadores ahora deberían ser grafemas;
- Algunos usos previamente obsoletos del corchete izquierdo sin escape "{" en patrones de expresión regular ahora están prohibidos;
- Asignar un valor distinto de cero a $[ (el índice del primer elemento de la matriz) ahora es fatal;
- Sysread()/syswrite(), anteriormente obsoleto, cuando se maneja :utf8 ahora es fatal.
- my() en condiciones falsas ahora está deshabilitado;
- $* (variable utilizada para habilitar la coincidencia de varias líneas y que se eliminó en Perl v5.10.0) y $# (variable que se usa para formatear los números de salida y que se eliminó en Perl v5.10.);
- El uso no calificado de dump() está obsoleto;
- Archivo eliminado::Glob::glob();
- pack() ya no puede devolver UTF-8 no válido;
- Cualquier conjunto de números en un script general es válido en un script ejecutado por otro script;
- JSON::PP incluye enable_nonref de forma predeterminada;
Funcionalidad obsoleta:
- Ya no puedes usar varias macros que manejan UTF-8 en código XS;
Fuente: linux.org.ru