Встроенные сигнатуры RBS, новые инспекции для RBS-файлов и проверки типов, поддержка удаленной разработки, улучшения интерфейса и многое другое.
В новой версии появились встроенные сигнатуры RBS. Благодаря этому RubyMine предлагает улучшенную помощь в написании кода: проверку типов в реальном времени, более точную навигацию, поиск и рефакторинг, а также многое другое.
Готовя этот релиз, мы добавили 12 новых инспекций для RBS-файлов. Теперь RubyMine проверяет RBS-код на стилистические ошибки, ищет неиспользуемые объекты, проблемы наследования, несоответствия в частичных объявлениях и т. п.
Кроме того, для RBS-файлов теперь работает встроенная проверка орфографии RubyMine.
Во всплывающем окне Parameter Info (Ctrl+P) отображаются имена и типы параметров методов. Теперь там используется информация из соответствующих сигнатур RBS (если они есть).
Для некоторых RBS-файлов в проекте может потребоваться защита авторских прав. Чтобы не добавлять уведомление к каждому файлу отдельно, можно автоматически вставить информацию об авторских правах в начало RBS-файлов.
Теперь RuboCop можно настроить так, чтобы он переформатировал файлы при ручном или автоматическом сохранении любых изменений. Чтобы включить эту функцию, найдите rubocop в меню Preferences / Settings и поставьте флажок Run ‘rubocop -a’ on save.
Мы добавили несколько новых инспекций для выявления несоответствий между присвоенными значениями и ожидаемыми типами, полученными из RBS.
Инспекции проверяют типы констант, переменные экземпляров и классов, параметры методов и блоков, возвращаемые значения, аргументы, переданные вызовам yield, а также глобальные переменные. Перейти к ним можно через меню Preferences / Settings | Editor | Inspections | Ruby.
RubyMine 2021.3 распознает сигнатуры Sorbet, в том числе в файлах .rbi
. Теперь инспекции несоответствия типа для аргументов методов и возвращаемых значений могут работать на основе Sorbet.
Для переключения между соответствующими файлами Ruby и RBI используйте действия Go To | Type Signature / Associated Declaration в контекстном меню. Можно также использовать сочетание клавиш Ctrl+Alt+Home.
Новая версия RubyMine поддерживает начальные возможности удаленной разработки. Вы можете откуда угодно подключиться к удаленной машине, на которой запущен бэкенд RubyMine. Вся обработка данных выполняется на мощной удаленной машине, а вы работаете над проектом, как будто он размещен локально.
Готовя новую версию, мы стремились улучшить производительность редактора кода. Теперь открытие файлов, ввод, вызов автодополнения и применение быстрых исправлений работают быстрее.
Это будет не очень заметно при редактировании файлов среднего размера, зато сразу видно на больших файлах (от 2000 строк кода).
Мы переработали функциональность закладок. Теперь можно самостоятельно давать имена закладкам и объединять их в узлы. Все закладки в новой версии размещаются в новом окне Bookmarks (Alt+2).
Теперь окно Run можно разделить по вертикали или по горизонтали. Это удобно, когда запущено сразу несколько конфигураций, и нужно посмотреть их результаты одновременно.
Просто перетащите нужную вкладку в выделенную область. Чтобы убрать разделение окна, можно перетащить вкладку обратно или щелкнуть правой кнопкой на верхней панели и выбрать в контекстном меню команду Unsplit.
В новой версии можно включить предпросмотр исходного кода, нажав на квадратный значок в окне Show Usages (Ctrl+Alt+F7).
Функция Checkout and Rebase onto Current позволяет извлечь выбранную ветку и переместить ее на вершину ветки, в которой вы находитесь. До сих пор эта функция работала только с локальными ветками, но в новой версии действие можно применять и к удаленным веткам.
Начиная с этой версии RubyMine будет отображать данные коммитов и различия между коммитами в отдельном окне Changes. Оно находится слева от редактора.
Чтобы открыть новое окно, перейдите на вкладку Log системы контроля версий, правой кнопкой нажмите на нужную версию и выберите в контекстном меню пункт Compare with local.
Мы добавили действие, позволяющее передать на сервер все коммиты вплоть до выбранного. Это удобно, когда у вас несколько коммитов готовы к отправке, а над другими вы еще работаете.
Мы улучшили работу автодополнения в HTML-файлах. Раньше варианты автодополнения появлялись, только когда вы вводили символ <
. Начиная с этой версии, предложения будут появляться также при вводе имени тега или сокращения.
Теперь обновить npm-пакеты до новой версии можно прямо из редактора. Откройте файл package.json
, установите курсор на версию пакета, который нужно обновить, нажмите Alt+Enter и выберите Update ‘имя пакета’ to the latest version.
Мы добавили поддержку ответов в виде двоичного кода, запросы gRPC, перенаправление вывода в заданный файл или директорию, поддержку текстовых потоков и потоков JSON, а также поддержку идентификаторов HTTP-запросов.
Во время ревью кода файлы, которые вы еще не открывали, отмечены синими точками. Благодаря этому вы не пропустите изменения в проектах Space во время ревью.
После открытия файла точка автоматически исчезает. Если вы хотите проверить изменения позже, воспользуйтесь опцией Mark as Not Viewed из контекстного меню.
В новой версии источник данных DDL можно создать на основе обычного, а затем синхронизировать их друг с другом, выбрав любой в качестве исходного.
Мы добавили возможность выбрать режим Aggregate для просмотра диапазона ячеек. Просто выберите нужные ячейки, щелкните правой кнопкой мыши и нажмите Show Aggregate View.
Теперь для сравнения двух схем или объектов можно использовать новое окно сравнения БД: просто выберите то, что хотите сравнить, и нажмите Ctrl+D.
Начиная с этой версии, при открытии и импорте CSV-файла RubyMine автоматически определит, является ли первая строка заголовком, содержащим названия столбцов.
super
в переопределенных методах. .js
и .d.ts
, добавлены иконки на полях редактора для переключения между ними.