LINUX.ORG.RU

GNU Grep 2.21

 ,


0

3

Вышла новая стабильная версия программы 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.

>>> Подробности

★★★★★

Проверено: fallout4all ()
Последнее исправление: Wizard_ (всего исправлений: 3)

Спасибо!

Спасибо разработчикам за их труд! Очень полезная программа!

anonymous
()
Ответ на: комментарий от ZyX

Твои стандарты заморозили статус-кво на конец 80-х, представляющий собой адовую помойку из частично дублирующих друг друга, но не покрывающих всех типовых задач, утилит и кривых недоязыков, причем в стандарт вошли как обычно самые убогие из них. Прошла треть века с тех пор, что-то изменилось? Нет. Почему? Потому что с тех пор это стандарт и трогать его нельзя. Так о каком прогрессе вообще можно говорить в такой ситуации?

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.