Доступен (http://blog.kraih.com/mojolicious-30-released) стабильный релиз фреймворка Mojolicious, (http://mojolicio.us/) предназначенного для создания web-приложений на языке Perl с использованием парадигмы MVC (Model-View-Controller). Проект развивается автором популярного фреймворка Catalyst и позиционируется как попытка перевода на новый уровень средств web-разработки для языка Perl. С одной стороны Mojolicious достаточно прост в освоении (для незамысловатых проектов доступен упрощённый вариант Mojolicious::Lite (http://search.cpan.org/perldoc?Mojolicious%3A%3ALite)), а с другой - построен на пике современных технологий, например, реализует возможность организации полноценного двунаправленного обмена данными с сервером через WebSocket, обеспечивает более тесную интеграцию с JavaScript, поддерживает выполнение web-приложений в offline-режиме, Ajax, асинхронный ввод/вывод, RESTful-процедуры.
Особенности Mojolicious:
- Поддержка из коробки: плагинов, шаблонов с возможностью вставки perl-операторов, подписанных cookies, I18N, полная поддержка unicode;
- Встроенные механизмы управления сессиями;
- Доступен отдельный фреймворк для тестирования web-приложений;
- Чистый, легко портируемый и объектно-ориентированный API;
- Пакет является самодостаточным и не требует для своей работы каких либо зависимостей, кроме Perl 5.10.1 (рекомендуется Perl 5.12+, кроме того некоторые опциональные функции могут потребовать установки дополнительных модулей из CPAN);
- Встроенная реализация клиента и сервера для HTTP 1.1 и WebSocket, с поддержкой TLS, Bonjour, IDNA, Comet (длительный пулинг), chunking и multipart;
- Несколько вариантов встроенного web-сервера: для тестирования, для промышленного использования для быстрого развёртывания. Сервер поддерживает организацию асинхронного ввода/вывода, epoll, kqueue и UNIX domain sockets. В простейшем случае для развёртывания web-проекта на базе Mojolicious достаточно наличия интерпретатора Perl. При этом фреймворк является многоплатформенным и поддерживает не только Unix-подобные ОС, но и Windows. Для обеспечения работы модулей обработки цикла событий (Event Loop) EV (https://metacpan.org/module/EV) и AnyEvent (https://metacpan.org/module/AnyEvent) задействована высокопроизводительная библиотека libev;
- Автоматическое определение доступности режимов CGI, FastCGI и PSGI;
- Встроенный парсер JSON и XML/HTML5 с поддержкой CSS3 селекторов.
Новые возможности Mojolicious 3.0:
- Существенное улучшение поддержки TLS и IPv6;
- Полностью переработана система команд Mojolicious::Commands;
- Реализованы команды Generator и CPAN upload для упрощения подключения дополнений, расширяющих функциональность Mojolicious;
- Избавление от необходимости управления циклом обработки событий при использовании AnyEvent;
- Добавлены дополнительные RESTful web-сервисы;
- Улучшена работа парсера JSON;
- Поддержка перегруппировки маршрутов обработки запросов;
- Возможность при формировании вывода комбинирования произвольного числа шаблонов и содержимого статических файлов;
- Поддержка создания плагинов для распространения сопутствующих ресурсов, таких как шаблоны и статические данные;
- Встроенный web-сервер Hypnotoad больше не требует отдельной конфигурации;
- Обеспечена полная совместимость реализации WebSockets с RFC 6455;
- Плагин I18N со средствами обеспечения интернационализации теперь разивается и распространяется отдельно.
URL: http://blog.kraih.com/mojolicious-30-released
Новость: https://www.opennet.ru/opennews/art.shtml?num=34243