Perl 5.30.0 lançado


Perl 5.30.0 lançado

Um ano após o lançamento do Perl 5.28.0, o lançamento Perl 5.30.0.

Mudanças importantes:

  • Adicionado suporte para Unicode versões 11, 12 e versão de rascunho 12.1;
  • O limite superior "n" especificado em um quantificador de expressão regular no formato "{m, n}" foi dobrado para 65534;
  • Metacaracteres em especificações de valor de propriedade Unicode agora são parcialmente suportados;
  • Adicionado suporte para qr'N{name}';
  • O Perl agora pode ser compilado para sempre usar as operações thread-safe do locale;
  • O comprimento variável limitado na correspondência de padrão regex agora é suportado experimentalmente;
  • Agora usa um método mais rápido para converter para UTF-8;
  • As localidades Turkic UTF-8 agora são suportadas sem problemas;
  • Removido o uso da macro opASSIGN do kernel;

Recursos que foram removidos e alterações incompatíveis:

  • Módulos removidos: Math::BigInt::CalcEmu, arybase, Locale::Code, B::Debug;
  • Os separadores de padrão agora devem ser grafemas;
  • Os separadores agora devem ser grafemas;
  • Algumas formas anteriormente obsoletas de usar o colchete esquerdo sem escape "{" em padrões de expressão regular agora são proibidas;
  • Atribuir um valor diferente de zero a $[ (o índice do primeiro elemento da matriz) agora é fatal;
  • Os sysread()/syswrite() obsoletos anteriormente agora são fatais ao manipular :utf8.
  • my() em condições falsas agora está desativado;
  • Obsoleto $* (uma variável usada para habilitar a correspondência de várias linhas e foi removida no Perl v5.10.0) e $# (uma variável usada para formatar números de saída e foi removida no Perl v5.10.);
  • O uso não qualificado de dump() está obsoleto;
  • Arquivo Removido::Glob::glob();
  • pack() não pode mais retornar UTF-8 inválido;
  • Qualquer conjunto de números em um script compartilhado é válido em um script executado por outro script;
  • JSON::PP inclui allow_nonref por padrão;

Funcionalidade obsoleta:

  • Agora você não pode usar várias macros no código XS que processam UTF-8;

Fonte: linux.org.ru

Adicionar um comentário