Pacote de utilitários Unix Coreutils 9.1 é lançado e traz várias melhorias!

Para aqueles que não o conhece, o Coreutils é desenvolvido e mantido pelo Projeto GNU e tem como finalidade, disponibilizar uma série de utilitários essenciais para a operação de sistemas operacionais Unix-like, dentre os quais o Linux é o de maior destaque. Para aqueles que se interagem com a linha de comando (BASH ou qualquer outro interpretador alternativo), saibam que boa parte dos comandos básicos que utilizamos “pertecem” ao Coreutils…

“GNU Coreutils 9.1 is out this weekend as the latest feature update to these widely-used core utilities on Linux and other platforms with supplying cp, cat, ls, and other common commands. GNU Coreutils 9.1 features a wide range of fixes, improvements, and other alterations. Exciting me with GNU Coreutils 9.1 are various efficiency improvements like cat now using the copy_file_range system call to other commands using more optimal syscalls for greater efficiency.”

— by Phoronix.

Estas melhorias estão divididas em categorias, as quais se destacam:

  • Correções: designadas para comandos como o chmod (que exibe mensagens de falhas ao encontrar links simbólicos), o cp (que possui problemas de compatibilidade com o SELinux, além de não funcionar bem em outros sistemas operacionais que utilizam outros sistemas de arquivos), o ls (que possui dificuldades para lidar com determinados nomes e extensões) e o mv (que não realiza corretamente o cálculo do volume de dados para operações de backup), entre outros.
  • Comportamentais: designadas para comandos como o cat (que passa a utilizar a chamada de sistema copy_file_range, se estiver disponível), o chmod & o chown (que reforça o uso do “:” ao invés do “.” como separador, para designar usuário e grupo), o ls (que não exibirá mais os arquivos de forma diferenciada através de cores, para economizar ciclos de processamento) e o dd (que passa a sincronizar transferência de dados na saída, mesmo após falhas de gravação), entre outros.
  • Aperfeiçoamento: designados para comandos como o dd (suporte para apelidos em sistemas BSDs e outros sistemas), dircolor (com novas opções para a exibição de cores, além de melhor compatibilidade com determinadas variáveis de sistema), o mv, o cp e o install (que passam a utilizar a chamada de sistema openat(), para evitar a concorrência por acesso aos recursos do sistema).
  • Entre outros comandos (menos utilizados)…

Se por um lado, fico feliz pela evolução das ferramentas inclusas nesta incrível coleção! Mas por outro lado, também fico um pouco preocupado pela qualidade geral destes utilitários, pois a própria publicação também deixou claro que as correções das falhas encontradas, foram introduzidas nas versões de lançamentos anteriores (major e minor releases). O ideal seria dispor destas correções logo após o lançamento oficial, as quais em geral são representadas através de um terceiro dígito no seu sistema de versionamento.

Ainda assim, são melhores do que as atualizações de terças-feiras… &;-D