El proyecto GNU ha publicado la versión 1.14 del paquete gzip, que incluye las utilidades gzip, gunzip, zmore y zcat para comprimir y descomprimir datos utilizando el algoritmo LZ77. En esta nueva versión, las operaciones de descompresión se han acelerado significativamente. En sistemas x86_64 que soportan las instrucciones de procesador PCLMUL, el aumento de rendimiento alcanza el 40%, mientras que en sistemas que no soportan PCLMUL, llega hasta el 20%.
La aceleración se ha logrado gracias a la optimización de las operaciones con sumas de verificación (CRC), que consumían aproximadamente la mitad del tiempo de CPU. La versión optimizada de CRC ya se ha añadido a la biblioteca gnulib, lo que beneficiará a otros proyectos de GNU que utilizan funciones para calcular sumas de verificación.
Se han introducido cambios que rompen la compatibilidad: se ha dejado de instalar la utilidad zmore en plataformas que no utilizan la utilidad 'more'; se ha dejado de procesar la variable de entorno GZIP (que establece las opciones por defecto) en situaciones donde no se especifican explícitamente las opciones '-1' (—fast), '-2', … '-9' (—best), '—rsyncable' o '—synchronous'.
Además, se puede destacar:
- Lanzamiento de la utilidad para organizar la búsqueda de datos en archivos de texto: GNU Grep 3.12. En la nueva versión, se ha resuelto un problema con la búsqueda en directorios que contienen más de 100 mil archivos. Se ha dejado de soportar la opción '—unix-byte-offsets' ('-u'). En plataformas Windows y AIX en modo de 32 bits, se ha implementado soporte para caracteres Unicode que van más allá del plano multilingüe básico de Unicode (códigos de 0000 a FFFF).
- Lanzamiento del conjunto GNU Diffutils 3.12, que incluye utilidades para evaluar diferencias en archivos, como diff, diff3, sdiff y cmp. En la nueva versión, se han corregido dos errores: un cierre inesperado al usar 'diff -y' y problemas con 'diff -r' al comparar archivos vacíos y no vacíos.
- Lanzamiento del conjunto de utilidades del sistema básico GNU Coreutils 9.7, que incluye programas como sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln y ls. En la nueva versión, la utilidad logname ha añadido soporte para sistemas basados en bibliotecas C musl y uclibc. En el resto, solo se han registrado correcciones de errores que afectan a las utilidades cat, cksum, dd, ls, timeout, sleep, tail y who.
Fuente: opennet.ru
