Проект GNU опубликовал выпуск пакета findutils 4.10.0, включающего реализации утилит для организации поиска файлов в системе, таких как find, updatedb и locate, updatedb. В составе findutils также развивается утилита xargs, предназначенная для построения команд, выполняемых с данными из стандартного ввода, обычно формируемых при помощи утилиты find.
В новой версии:
- Возобновлена поддержка Си-библиотеки Musl, распространяемой под лицензией MIT. Изменение позволяет использовать GNU findutils в дистрибутивах Linux, применяющих Musl вместо Glibc, таких как Void Linux, Alpine Linux, postmarketOS, OpenWrt и Static Linux.
- Решена “проблема 2038 года”, приводившая к сбоям на системах с 32-разрядным типом time_t при обработке в утилитах findutils файлов, датированных после 19 января 2038 года. Сбой вызван тем, что 32-разрядный тип time_t не может применяться для обработки времени позднее 19 января 2038 года из-за переполнения 32-разрядного счётчика секунд, ведущего отсчёт с 1 января 1970 года. Для сборки на системах без поддержки времени после 2038 года предусмотрена опция “–disable-year2038”.
- При сборке утилиты find по умолчанию задействован первый уровень оптимизации вместо второго для исключения изменения порядка выполнения операций и обеспечения повторяемого поведения.
Кроме того, не сколько дней назад выпущен пакет uutils findutils 0.6.0 с альтернативной реализацией утилит из набора GNU Findutils, написанной на языке Rust. Уровень совместимости с GNU findutils оценивается в 65.97% при тестировании в BFS Test Suite и 63.38% при тестировании в GNU Test Suite (успешно выполнено 190 тестов в наборе BFS и 445 тестов в наборе GNU, а 97 и 256 тестов пока завершаются неудачей.
Из улучшений в uutils findutils 0.6.0 можно отметить добавление в утилиту find поддержки опций “-uid”, “-gid”, “-samefile”, “-fstype”, “-[no]user”, “-[no]group”, “-newerXY”, “-anewer” и “-cnewer”, возможность указания диапазонов в опциях “-amin”, “-cmin” и “-mmin”, и кэширование информации о файлах, с которыми производится сравнение при использовании таких опции, как “-samefile” и “-newerXY”. В утилите xargs реализована опция “–max-lines”.