Выпуск 11. Январь 2014
← Обход дерева директорий на Perl и Haskell (часть 1) | Содержание | Интервью с Tokuhiro Matsuno →Обзор CPAN за декабрь 2013 г.
Рубрика с обзором интересных новинок CPAN за прошедший месяц.
Статистика
- Новых дистрибутивов — 193
- Новых выпусков — 795
Новые модули
Модуль для генерации SQL-запросов и преобразования полученных массивов данных в структуру, удобную для использования в шаблонизаторах. Поддерживается стандартный набор CRUD-запросов и вложенные JOIN. Похож на модуль SQL::Abstract
, но проще и имеет бонус в виде парсера возвращаемых данных.
Модуль для ведения логов приложения, позволяет задавать уровень информативности (ошибки, предупреждения, отладка и т.д), категорию сообщений и удобный синтаксис для вывода ссылок и структур. Особенность модуля в том, что он не даёт никаких накладных расходов в случае, если все или какие-то определённые уровни информативности отключены. Типичная запись $log->debug()
, в случае отключенного режима отладки тем не менее приводит к вызову метода. В Log::Declare
запись
debug "debug message" [category];
разворачивается в
debug && $Log::Declare::logger->log('debug', ['category'], "debug message");
Таким образом, выражение после &&
никогда не вычисляется.
Простенький модуль, полезный, когда вам нужно использовать символ одиночной кавычки в однострочнике. Обычно для это требуется применять страшное экранирование '\''
:
$ perl -e 'print "'\'' - single quote"'
' - single quote
Модуль SQ
предоставляет переменные $s
, $q
и $sq
, которые содержат одиночную кавычку:
$ perl -MSQ -e 'print "$q - single quote"'
' - single quote
Sub::Deprecated
позволяет использовать атрибут :Deprecated
для методов, которые устарели. В случае использования таких методов будет генерироваться предупреждение.
Обновлённые модули
- YAML 0.88
В новой версии YAML возвращена совместимость с Perl 5.8.
- ack 2.12
Обновлённая версия утилиты для поиска ack исправляет проблему с безопасностью. При использовании опций --pager
, --regex
и --output
ack больше не загружает ackrc-файлы, которые находятся в каталогах проектов, где происходит поиск.
- Data::Validate::IP 0.22
Новый релиз модуля для проверки валидности IP-адресов содержит обновлённую документацию. Также обновлена информация о тестовых сетях и зарезервированных сетях IPv6.
- Socket6 0.25
После пятилетнего перерыва обновился модуль Socket6
, который добавляет константы и функции для работы с IPv6. Исправлены множество багов, долгое время висевших без какой-либо реакции со стороны автора. Хотя на данный момент IPv6 отлично работает и в модуле Socket
, а также в IO::Socket::IP
, данное обновление очень важно хотя бы потому, что модуль с таким именем должен, по меньшей мере, быть рабочим, чтобы избежать истерик, что в Perl не работает IPv6, а значит он мёртв
- Thrall 0.0200
Обновился PSGI-веб-сервер Thrall, использующий нити для обработки входящих запросов. В новом релизе появилась поддержка HTTP 1.1, IPv6, SSL.
- Markdent 0.23
Модуль Markdent
, предназначенный для обработки markdown-текстов парсером, генерирующим события. Помимо привычного преобразования в HTML-формат возможно назначение обработчиков на какие-либо события (найдена ссылка, выделение, заголовок и т.д.) для специфической обработки текста. В новой версии добавлена поддержка «ленивых» и «пьяных» списков.
- XML::SAX::Writer 0.54
В новом релизе XML::SAX::Writer
исправлена ошибка при экранизации символов создаваемого XML-документа. В случае если использовалось несколько объектов XML::SAX::Writer
с разным регулярным выражением для экранирования, самое первое из них кешировалось и использовалось для всех объектов.
- ObjectDB 3.03
В декабре на CPAN появилась новая мажорная версия легковесного ORM ObjectDB
. Многие идеи взяты из проекта Rose::DB::Object
, но основной упор сделан на простоту и прямолинейность.
- Dancer2 0.11
Новый релиз веб-фреймворка Dancer2
включает несколько важных исправлений в коде и документации. Переработана реализация ключевых слов halt
, redirect
и forward
для немедленного возврата их роута или хука. Чтоб не загрязнять @INC
, теперь запускаемый скрипт ответственен за подключение каталога ./lib
, если в этом есть необходимость.
- HTML::FormFu 1.00
Вышел мажорный релиз популярного фреймворка для создания и проверки HTML-форм с внушительным списком изменений и исправлений.
- Test::Continuous 0.74
Обновлён модуль Test::Continuos
для выполнения тестирования в процессе разработки. В новой версии исправлена проблема с Perl 5.18.
- Sereal 2.010
Вышел новый мажорный релиз модуля для быстрой (де-)сериализации данных. В новой версии введена поддержка v2-протокола, исправлены редкие случаи утечек и краха приложения.
← Обход дерева директорий на Perl и Haskell (часть 1) | Содержание | Интервью с Tokuhiro Matsuno →