Что нового в Rails 5.1: улучшенный JavaScript, например

Ruby on Rails, ветеран серверного веб-фреймворка, прекрасно сочетается с JavaScript в обновлении, которое недавно перешло на первую бета-версию.

Rails 5.1 предлагает множество улучшений, включая шифрование, системные тесты и управление зависимостями JavaScript от NPM через новый менеджер пакетов Yarn от Facebook.

Управляя зависимостями JavaScript через Yarn, пользователи могут зависеть от таких библиотек, как React, через NPM. Активы становятся доступными в конвейере, и binstub bin / yarn используется для добавления этих зависимостей. Разработчики, работающие с версией 5.1, также могут компилировать JavaScript, используя сборщик модулей Webpack, через гем Webpacker. Но Rails 5.1 отбрасывает jQuery как зависимость по умолчанию. После переписывания ненавязчивого адаптера сценариев rails-ujs для использования ванильного JavaScript эта зависимость больше не нужна.

Rails 5.1 также имеет возможность управления зашифрованными секретами. Зашифрованный файл секретов создается с помощью функции bin / rails secrets: setup, которая генерирует главный ключ для хранения вне репозитория, позволяя разработчикам фиксировать производственные секреты.

Для системных тестов Rails 5.1 включает оболочку библиотеки Capybara Ruby для тестирования приложений. Он предварительно настроен для браузера Chrome и дополнен скриншотами сбоев. Функция параметризованных почтовых программ предлагает возможность вызывать почтовые программы с доступными параметрами до вызова действия. Rails 5.1 упрощает создание форм за счет объединения двух иерархий form_forи form_tag, с form_with. Между тем, функция направленных маршрутов позволяет объявлять программные маршруты, которые могут использовать Ruby для выполнения функций в зависимости от параметров.

«У нас были бурные, возможно, даже противоречивые отношения с JavaScript на протяжении многих лет. Но это время прошло», - говорится в бюллетене о выпуске 5.1.0, автором которого является dhh, предположительно основатель Rails Дэвид Хайнемайер Ханссон. В бюллетене подчеркивается, что JavaScript "значительно улучшился" за последние годы с появлением ECMAScript 6 и таких инструментов, как Yarn и Webpack.