Выпуск 27. Май 2015
← Метаоператоры в Perl 6 | Содержание | Интервью с Сюзанной Шмидт →Обзор CPAN за апрель 2015 г.
Рубрика с обзором интересных новинок CPAN за прошедший месяц.
Статистика
- Новых дистрибутивов — 226
- Новых выпусков — 822
Новые модули
JSON::XS::Sugar
JSON::XS::Sugar
— это небольшой синтаксический сахар при работе с JSON::XS. Модуль экспортирует константы JSON_TRUE
и JSON_FALSE
, а также функции json_truth
, json_number
, json_string
, которые приводят аргумент к нужному типу.
Photography::Website
Утилита photog
позволяет сгенерировать из каталога с фотографиями статический сайт-фотогалерею с фотографиями отсортированными в хронологическом порядке с поддержкой вложенных альбомов. Возможно задание своего шаблона и добавление водяного знака в изображения.
App::PAUSE::TimeMachine
Веб-сервис и утилита командной строки для извлечения файла со списком пакетов PAUSE на заданный момент времени. Модуль был создан во время Берлинского QA-хакатона. Для доступа к истории файла 02packages.details.txt используется git-репозиторий https://github.com/batchpause/PAUSE-git
Carmel
Carmel
— это новый менеджер пакетов CPAN, основанный на «артефактах» cpanm. В отличии от всех других инсталляторов, carmel сохраняет каталоги-артефакты, в которых происходила сборка пакетов в едином репозитории (по умолчанию это каталог $HOME/.carmel/{version}-{archname}/build
). Carmel сканирует этот каталог в поисках сборочных каталогов пакетов нужных версий и формирует соответствующий @INC
.
Обновлённые модули
Devel::NYTProf 6.01
Вышел новый мажорный релиз модуля для профилирования Devel::NYTProf
. В новом релизе множество улучшений работы модуля на платформе Windows, в частности, использование часов высокого разрешения QueryPerformanceCounter
. Улучшена документация модуля.
Module::Signature 0.78
Важное обновление Module::Signature
, который используется многими CPAN-клиентами для проверки GPG-подписи модулей, полученных со CPAN или любого из его зеркал. В версии 0.75 было исправлено четыре уязвимости в коде модуля:
- CVE-2015-3406.
Module::Signature
, из-за некорректного парсинга границ подписанных данных в файле подписи, мог извлечь информацию о файлах из неподписанной части. - CVE-2015-3407. При проверке содержимого CPAN-модуля
Module::Signature
игнорировал некоторые файлы из архива, которые не были указаны в файле подписи, что затрагивает и файлы в каталоге t, которые автоматически выполняются при запуске тестов. - CVE-2015-3408. При генерации контрольных сумм из подписанного манифеста
Module::Signature
использовалopen()
с двумя параметрами при чтении файлов. Это позволяло встраивать произвольные shell-команды в файле SIGNATURE, которые бы запускались при проверке подписи. - CVE-2015-3409.
Module::Signature
подгружает некоторые модули в процессе работы, модульText::Diff
может отсутствовать в системе и, соответственно, может быть загружен из текущего каталога распакованного архива модуля, что может привести к выполнению произвольного кода.
BSON 0.12
После долгого перерыва обновился модуль (де)сериализации формата BSON. Добавлена поддержка типа 0x06 (Javascript “undefined”), который как и null значение декодируется в undef
. Ускорена работа модуля в среднем на 10-20% за счёт встраивания функций.
libintl-perl 1.24
Вышло обновление библиотеки интернационализации libintl-perl. Изменилась лицензия, под которой выпускается исходный код: вместо LGPL 2.1 стала GPL 3. Также исправлено несколько ошибок, включая исправление для работы на системах без поддержки локалей, например, Android.
Mail::SpamAssassin 3.4.1
Обновлён детектор спама Mail::SpamAssassin
. В новой версии улучшена автоматизация в борьбе со спамерами, которые используют новые домены верхнего уровня. Используется нормализация текста, чтобы упростить создание правил против спамеров, которые используют альтернативные кодовые наборы, чтобы обойти тесты. Продолжается работа над совершенствованием нативной поддержки IPv6. Улучшена Байесова классификация с улучшенной отладкой и хешированием вложений.
Validate::Tiny 1.501
Минималистичный модуль для проверки параметров Validate::Tiny
имеет несколько несколько несовместимых изменений: метод new
теперь просто создаёт объект, для выполнения проверки необходимо вызвать метод check
, удалена функция error_string
.
XML::LibXML 2.0119
Вышло обновление безопасности для XML::LibXML
с исправлением CVE-2015-3451. XML::LibXML
в некоторых случаях игнорировал опцию expand_entities
, что могло приводить к утечке данных.
← Метаоператоры в Perl 6 | Содержание | Интервью с Сюзанной Шмидт →