RubyMine 2019.1 включает в себя улучшенную поддержку Docker, встроенный профилировщик Ruby, полную поддержку Factory Bot, новые темы интерфейса и многое другое.
В RubyMine добавлена поддержка docker-compose exec
. Эта команда позволяет запускать и отлаживать приложения, устанавливать гемы и выполнять другие задачи быстрее, чем раньше.
Узнайте больше о работе с Docker/Docker Compose в нашем блоге.
В разделе экспериментальных функций вы можете включить ruby.docker.internal.via.exec
для ускорения RubyMine при работе с Docker SDK.
Теперь вы можете добавлять гемы, запускать задачи Rake и команды Rails, а также выполнять другие операции без пересборки Docker-образов.
В RubyMine появился новый удобный способ навигации по кодовой базе. Диалог Recent Locations поможет быстро перейти к фрагментам кода, которые вы недавно посещали или редактировали. Начните вводить текст, чтобы отфильтровать результаты и быстро перейти к нужному коду.
Подробности смотрите в статье Навигация в RubyMine: всплывающее окно Recent Locations.
RubyMine 2019.1 интегрируется с rbspy и предоставляет встроенный профилировщик, который поможет найти код, замедляющий тестирование или работу вашего приложения.
Узнайте, как пользоваться профилировщиком в нашем блоге.
Профилировщик можно подключить к запущенному приложению (Find action / Attach Profiler to Process) и исследовать его в реальном времени.
При добавлении фабрики RubyMine предложит варианты автодополнения для ее атрибутов и по возможности их значений. Например, если вы добавите фабрику для модели Rails, IDE будет автоматически дополнять связи и значения для полей. И разумеется, вы сможете легко перемещаться между определениями этих объектов и обращениями к ним.
При написании тестов доступно автодополнение определений методов для создания фабрик, таких как create
, build
, build_stubbed
, а также возможность быстрого перехода к ним.
Полностью поддержаны и другие возможности Factory Bot: наборы данных, трейты и псевдонимы.
Мы также включили фабрики во всплывающее окно Related files (Navigate / Related symbol) и добавили новую иконку на поле редактора, позволяющую перейти к частичным объявлениям фабрик (при наличии).
Новое действие Call Hierarchy поможет вам разобраться в методах, вызывающих метод, который вы исследуете, и погрузиться в иерархию настолько глубоко, насколько вам нужно.
Все подробности читайте в нашем блоге.
В RubyMine 2019.1 появилась поддержка TruffleRuby! Чтобы переключить текущий Ruby SDK на TruffleRuby, убедитесь, что интерпретатор установлен, и выберите его в настройках Ruby SDK.
Кстати, в этом релизе мы также исправили многие проблемы с менеджерами версий Ruby.
Мы улучшили поддержку TypeScript в Vue-приложениях: RubyMine теперь использует языковой сервис TypeScript. Вас ждет более точная типизация и информация о типах, вы сможете использовать быстрые исправления, предоставляемые языковой службой, и просматривать все ошибки TypeScript, обнаруженные в текущем файле, в окне инструмента TypeScript.
Во время тестирования с помощью Jest, Karma, Mocha или Protractor теперь можно прямо в редакторе увидеть, какая строка вызвала падение теста. Используя информацию из трассировки стека, IDE подсветит код, который вызвал ошибку. При наведении курсора на подсвеченный код вы увидите сообщение об ошибке и сможете немедленно начать отладку теста.
Встречайте полностью обновленную интерактивную консоль отладчика в окне инструмента Debug для JavaScript и Node.js! Консоль теперь отображает объекты в виде дерева, позволяет менять оформление сообщений с помощью CSS и группировать их, используя методы console.group() и console.groupEnd(). Кроме того, сообщения можно отфильтровать по типу.
Теперь при добавлении новых скриптов в файл package.json RubyMine предлагает варианты доступных команд, предоставляемых установленными пакетами. Введите node, и IDE предложит имена папок и файлов. Наберите npm run, и вы увидите список задач, определенных в текущем файле.
Узнайте, что нового в WebStorm, — по ссылке вы найдете подробную информацию об улучшениях для JavaScript в RubyMine 2019.1.
Документация (F1) теперь отображает актуальные описания CSS-свойств, HTML-тегов и атрибутов с сайта MDN и информацию об их поддержке в браузерах, а также содержит ссылки на соответствующие статьи.
В RubyMine появилась поддержка разных тем интерфейса, доступных в виде плагинов. Вы можете попробовать темную фиолетовую тему, светлую серую или бирюзовую, а также создать любую тему самостоятельно.
RubyMine 2019.1 включает в себя новую функциональность, разработанную командой DataGrip: