Релиз web-фреймворка Ruby on Rails 5.0
Состоялся релиз MVC (Model-View-Controller) web-фреймворка Ruby on Rails 5.0.
В состав Rails 5.0 включен новый фреймворк Action Cable для применения WebSockets в Rails, значительно упрощающий создание таких приложений как чаты и системы уведомления. Фреймворк предоставляет интегрированное решение для управления соединениями, канальный слой для выполнения операций на стороне сервера и JavaScript-слой для организации взаимодействия на стороне клиента. В том числе предоставляются возможности доступа к Active Record и доменной модели PORO из обработчиков WebSockets. Для обеспечения отрисовки шаблонов вне контроллеров (например, для использования серверных шаблонов для формирования ответов WebSocket) представлена система ActionController::Renderer. При разработке Action Cable выполняется в основном процессе приложения, а в готовом продукте может быть вынесен в отдельный процесс.
Вторым важным новшеством является появление режима API, включаемого при создании каркаса проекта с флагом "--api". В отличие от обычного использования Rails для создания серверных приложений, формирующих вывод на основе шаблонов HTML, режим API рассчитан на создание серверных бэкендов для обеспечения работы JavaScript-интерфейсов или web-приложений, работающих на стороне браузера и взаимодействующих с сервером при помощи JSON. Из других улучшений можно отметить новый API Attributes, в Test Runner обеспечен вывод ошибок по мере их возникновения, поддержка вызова комадн Rake через CLI-интерфейс rails, включение в состав библиотеки для создания одностраничных интерфейсов Turbolinks 5 с полной поддержкой iOS и Android, поставка библиотеки Sprockets 3 для сборки и управления web-ресурсами. Для использования Rails 5.0 теперь требуется наличие Ruby 2.2.2 или более новой версии.