Состоялся релиз IDE RubyMine 2017.3 от JetBrains

Состоялся релиз RubyMine 2017.3

В первую очередь следует отметить возросшую производительность. Это особенно заметно при выполнении объёмных задач — например, тестировании работы всего приложения. Улучшена ориентация во встроенных ключевых словах Rails, таких как колбэки before_action. Усовершенствованный анализатор кода лучше справляется с маппингом указанных и заданных аргументов методов. Кроме того, новая RubyMine теперь поддерживает приложения с вложенными проектами: она обнаруживает расположенные в приложении проекты и их gem-файлы, и позволяет просто вставлять их в код и настраивать их параметры.

WSL

В новой версии появилась поддержка Windows Bash, а также есть возможность установки WSL.

Рефакторинг

Изменения затронули также рефакторинг. В новой версии IDE можно извлекать методы прямо в разделы private или protected.

RuboCop

Претерпел изменения RuboCop. Теперь пользователь может не только произвести автокоррекцию всего файла, но и создать особый cop department или offence class. Более того, RubyMine 2017.3 поддерживает пользовательские конфигурации rubocop.yml, что делает редактирование кода ещё удобнее.

Стиль кода

Доработано управление стилем кода — добавили возможность индентировать частные и защищённые методы, а также выбирать, вокруг каких операторов нужно добавлять пробелы, а какие оставлять без изменений.

Puppet

Новая версия RubyMine поддерживает синтаксисы шаблона EPP. IDE производит автодополнение шаблонов и манифестов и переключаться между ними. Функция Refactor Rename позволяет переименовывать переменные и параметры, а инструмент Find Usages — определять, в каких местах проекта применены пользовательские шаблоны.

Отладчик

Отладчик обзавёлся функцией оценки Trace to_s, ограничивающей время выполнения особенно ресурсоёмких операций, экономя время пользователя во время отладки программы.

REST-клиент

Ещё одним нововведением RubyMine 2017.3 стала возможность тестировать API в IDE. Для этого нужно написать HTTP-запросы в файле .http и запустить их иконками на боковой колонке.

JavaScript

Были доработаны функции автозавершения кода и выведения информации для стандартных объектов, методов и Web API JavaScript.

Поддержка Vue.js и функции завершения и перехода к определению теперь работают со входными параметрами Vue, свойствами в объектах данных, вычисляемыми свойствами, а также методами.

Улучшена работа с CSS: благодаря новым вариантам окончаний кода для значений со свойствами transform, transition и pointer-events повысилась точность работы функции автозавершения кода для свойств и значений CSS.

Контроль версий

Усовершенствована система контроля версий: так, в функцию просмотра событий добавлено действие Interactively Rebase from Here, позволяющее подбирать, редактировать, пропускать, сжимать, переформулировать код и фиксировать его изменения. Сохраняются настройки каждой области рабочего пространства: открытые файлы, текущую конфигурацию и все контрольные точки. Также IDE показывает файлы, которые были изменены коммитом слияния, даже если они отличаются от общего родителя.

Инструменты баз данных

Доработке подверглись базы данных: узлы схем в древе базы данных были заменены функцией в контекстном меню, показывающей количество схем, отображаемых на древе в определённый момент времени. Для создания DDL-скриптов теперь можно использовать SQL-генератор. Кроме того, были улучшены инструменты работы с SSH.

Прочие нововведения RubyMine 2017.3

Среди других изменений можно отметить поддержку Ruby 2.5, Gems.rb, Docker Compose v3, Cucumber Expressions, улучшенный Markdown, возможности переименования файлов из вкладок, свёртывания многострочных контейнеров, предложения установки gem’ов в сообщениях трассировки стека, а также встроенную функцию установки Bundler через меню «Инструменты».

Источник: блог RubyMine