O lançamento da biblioteca PCRE2 10.37 foi feito, oferecendo um conjunto de funções em C com uma implementação de expressões regulares e ferramentas de correspondência de padrões, semelhantes em sintaxe e semântica às expressões regulares da linguagem Perl 5. A PCRE2 é uma implementação reestruturada da biblioteca original PCRE com uma API incompatível e recursos expandidos. A biblioteca é baseada nos desenvolvedores do servidor de correio Exim e é distribuída sob a licença BSD.
Principais mudanças:
- Os símbolos das funções POSIX, como regcomp, foram removidos da biblioteca libpcre2-posix, pois estavam causando problemas em alguns aplicativos. O patch pcre2-symbol-clash.patch foi aceito na linha de desenvolvimento principal. A versão ABI desta biblioteca também foi atualizada.
- Foi corrigido um problema que, hipoteticamente, poderia levar à desreferenciação de um ponteiro nulo.
- Duas falhas na manipulação de números muito grandes foram corrigidas, resultando em um comportamento inadequado para o mecanismo de expressões regulares do Perl. Por exemplo, a expressão "\/\214748364\/" resultava em um estouro, ao invés de ser tratada como o número octal "\214" seguido pelos caracteres "748364".
- O comportamento incorreto ao usar a operação "\K" em padrões foi corrigido.
- A otimização das operações de repetição de caracteres foi reintegrada no JIT.
Fonte: opennet.ru
