В RubyMine 2019.3 добавлены расширенные функции анализа кода, усовершенствованный отладчик и множество платформенных улучшений для Git, JavaScript и HTTP-клиента. Ознакомьтесь со списком изменений ниже и обновитесь уже сегодня. We also encourage you to let us know of any issues and join the RubyMine Slack!
В предыдущей версии RubyMine использовалась предварительно определенная логика для маппинга уровней значимости ошибок между IDE и RuboCop. Теперь можно изменять параметры маппинга по умолчанию, увеличивая или уменьшая уровни значимости для конкретных ошибок, найденных RuboCop. Дополнительные сведения см. в нашей документации.
Благодаря улучшенному анализу кода структур, теперь можно найти все случаи использования требуемого типа структуры и перейти к его объявлению. Дополнительно обо всех улучшениях Find usages читайте в нашем блоге .
Новая версия RubyMine предлагает расширенные функции анализа кода для вызовов фикстур в тестах Minitest/Test::Unit. Теперь редактор предлагает автодополнение для таких вызовов и позволяет перейти к соответствующим полям базы данных.
В предыдущих версиях (до 2019.3) генераторы Rails и задачи Rake запускались с помощью специальных всплывающих окон. Теперь Run anything можно использовать как единую точку входа для запуска заданий/генераторов. Например, при нажатии клавиш Ctrl + Alt + R отображается всплывающее окно Run Anything и команда rake добавляется автоматически. Подробнее читайте в нашем блоге.
Версия 2019.3 позволяет указать Stimulus или Elm в качестве JavaScript-библиотек для новых проектов Rails.
Теперь RubyMine позволяет проверить состояние программы в процессе отладки в консоли Rails. Для этого нужно перейти на вкладку Interactive console по достижении точки останова.
Мы постоянно улучшаем поддержку YARD, чтобы позволить вам создавать YARD-теги и управлять ими. В RubyMine 2019.3 доступен вывод параметров и возвращаемых типов из родительского класса для их использования в теге Add @param и интенциях Add @return tag.
Ознакомьтесь с разделом Поддержка YARD, где представлен обзор функций YARD в RubyMine.
В версию 2019.3 добавлен новый стиль кода, который позволяет выравнивать вызовы метода в цепочке различными способами – по исходному получателю или по начальным точкам. Чтобы настроить этот параметр, откройте страницу Settings/Preferences | Editor | Code Style | Ruby | Wrapping and Braces и перейдите в группу Chained method calls.
В новой версии вы можете быстро добавить в файлы Ruby предопределенные уведомления об авторских правах. Дополнительную информацию см. в разделе справки Copyright.
Если в проекте используется Twitter Bootstrap или другая CSS-библиотека, добавленная с использованием CDN, доступно автодополнение имен классов из этой библиотеки без добавления их источников в проект.
Новая команда Quote Marks позволяет указать, будут ли в CSS (а также в файлах SCSS и Less) использоваться двойные или одинарные кавычки. Если выбран параметр Enforce on Reformat, указанный стиль кавычек будет применяться при переформатировании кода (а не только при автодополнении кода).
Новая версия RubyMine теперь понимает, как связаны между собой части компонента, расположенные в отдельных файлах, и предоставляет точные варианты автодополнения для свойств, данных и методов, определенных в разных vue-файлах.
Мы усовершенствовали диалоговое окно Clone (добавлен элемент управления VCS | Get from Version). Теперь вы можете войти в систему прямо из этого диалогового окна. При этом IDE мгновенно покажет списки репозиториев, сгруппированные по профилям или организациям.
Теперь вы можете отправлять изменения из любой ветки непосредственно из всплывающего окна Branches — выберите нужную ветку, а затем нажмите Push.
В RubyMine 2019.3 реализована начальная поддержка MongoDB. Вы можете просматривать коллекции и поля в проводнике базы данных, выполнять запросы и т. д.
В версии 2019.3 вы можете использовать динамические переменные в HTTP-запросах. К этим переменным относятся $uuid, $timestamp и $randomInt. Используйте двойные фигурные скобки, чтобы вставить одну из этих переменных в выбранное место.
Теперь HTTP-клиент позволяет записать несколько запросов в один HTTP-файл. Эта функция особенно полезна при создании цепочки запросов, когда содержание одного запроса зависит от результатов выполнения предыдущего. Try the new capabilities using this sample app.