GNU Grep 2.21

Вышла новая стабильная версия программы GNU Grep 2.21. За 25 недель 3 разработчика сделали 94 коммита.

Итогом их работы стали следующие улучшения:

значительно увеличена скорость работы с файлами, содержащими пустые области, на тех платформах, где эффективно работает флаг SEEK_DATA системного вызова lseek; более эффективно обрабатываются случаи, когда данные не соответствуют уже первой части сложного паттерна; увеличена производительность при работе с очень длинные строками в паттернах: если файл содержит некорретные для текущей локали данные, и это удаётся обнаружить до того, как начался вывод, grep рассматривает данный файл как бинарный; grep -P больше не прекращает работу с сообщением об ошибке, если встречает некорректные данные в кодировке UTF-8, теперь эти данные просто считаются не соответствующими шаблону.Так же были внесены исправления ошибок:

исправлена работа \w и \W в мнгогобайтовых локалях; исправлен подсчет строк при работе в не-UTF-8 многобайтовых локалях, для проверки предлагается запустить, например, seq 10 | env LC_ALL=zh_CN grep -n …» (ошибка появилоась в версии 2.19); grep -F -x -o больше не печатает лишний символ новой строки для каждой «находки» (ошибка тоже появилась в 2.19); исправлена работа grep -F в многобайтовых не UTF-8 локалях; изменена работа с непарными ')' в grep -E, для совместимости с BusyBox, FreeBSD, Solaris и вообще POSIX. Раньше было так: $ echo ')' | grep -E ')' grep: Unmatched) or \), а теперь же всё работает; исправлена работа с символическими ссылками в NetBSD. gnu, grep

©  Linux.org.ru