Релиз web-фреймворка Ruby on Rails 5.0

2016-07-01

Состоялся релиз 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 или более новой версии.