Что нового в RubyMine 2024.2

Скачать

Есть бесплатная пробная версия на 30 дней

Rails

Автодополнение для файлов конфигурации Kamal

В RubyMine теперь есть автодополнение для файлов конфигурации Kamal. При редактировании файлов deploy.yaml и .env IDE будет предлагать варианты свойств Kamal.

Поддержка ограничения количества запросов

В Rails 8 появилась функция rate_limit для ограничения количества запросов в контроллерах. Чтобы вы могли воспользоваться ее преимуществами, мы добавили для нее подсветку и автодополнение.

Поддержка browser guards

В RubyMine 2024.2 добавлена поддержка метода проверки браузера. Она обеспечивает подсветку функции allow_browser, а также автодополнение имен браузеров и аргументов only.

Валидации и обратные вызовы модели в представлении Structure в Rails

Вы можете просматривать валидации и обратные вызовы модели в представлении Structure и скрывать их при необходимости. Кроме того, обратные вызовы отображаются для определенного синтаксиса, например, при использовании ключевого слова или метода after_create.

Stimulus

RubyMine 2024.2 поддерживает Stimulus — JavaScript-фреймворк для статичного HTML и DOM-элементов. Поддержка включает автодополнение, навигацию и рефакторинг переименования. Плагин Stimulus встроен в RubyMine и работает с файлами .erb. Гем stimulus-rails по умолчанию идет вместе с Rails, начиная с версии 7.

Ruby

Предложение изменить Ruby SDK при открытии проекта

Когда вы открываете проект, RubyMine проверяет, совпадает ли выбранный Ruby SDK с конфигурационными файлами: .rvmrc должен соответствовать RVM SDK, .ruby-version, .ruby-gemset или .rbenv-version — rbenv SDK, tool-versions – asdf SDK, а .versions.conf — RVM SDK.

Если есть установленный SDK, который соответствует конфигурации, RubyMine предложит его выбрать.

Уведомление о том, что не удается найти версию Ruby, указанную в SDK

Если вы используете rbenv, rvm или asdf для управления версиями Ruby, RubyMine предложит установить нужную версию SDK, основываясь на конфигурационных файлах проекта (например, .rvmrc, .ruby-version или .rbenv-version). RubyMine проверяет выбранный Ruby SDK и конфигурационные файлы при открытии проекта.

AI Assistant

Автодополнение на основе ИИ в конце строк

AI Assistant теперь работает в конце строк, помогая с автодополнением после точек, двойных двоеточий и бинарных выражений.

Усовершенствованное автодополнение нескольких строк

AI Assistant теперь запрашивает технические подробности, чтобы давать более точные предложения для многострочного кода. Это может быть используемая версия Ruby, работа в проекте Rails или Gem, используемый тестовый фреймворк, имя текущего файла и пять самых популярных гемов в проекте.

Улучшенный контекст Rails

AI Assistant теперь лучше понимает контекст Rails-приложений. Например, когда вы запрашиваете объяснение кода для контроллера, AI Assistant теперь учитывает соответствующую модель и маршруты.

Новые функции и улучшения

Автодополнение связанных с Ruby команд в новом терминале

В новом терминале автоматически предлагаются команды, опции, подкоманды и аргументы. В RubyMine 2024.2 мы добавили автодополнение для следующих команд: ruby, rails, rake, bundle, rbenv, irb, pry, rbs и rspec.

Рендеринг Markdown в режиме чтения и в быстрой документации

Поскольку Rails 8 использует документацию в формате Markdown вместо RDoc, мы сделали рендеринг Markdown доступным в режиме чтения и во всплывающем окне быстрой документации. Функция работает, если в начале файла есть директива # :markup: markdown или если в корне проекта есть файл .rdoc_options со строкой markup: markdown в нем.

Пользовательские конфигурации RuboCop

В разделе Settings | Tools | RuboCop теперь можно выбрать пользовательский файл конфигурации RuboCop. RubyMine передает путь к вашему конфигурационному файлу в качестве аргумента команды RuboCop с опцией --config, что обеспечивает работу даже с удаленными SDK.

Если файл не указан, RubyMine использует .rubocop.yaml или настройки по умолчанию, если .rubocop.yaml не найден в вашем проекте.

Настройка пробелов внутри массивов

Новая настройка форматирования позволяет управлять пробелами внутри массивов и синхронизировать их с RuboCop. Вы найдете ее в меню Settings | Editor | Code Style | Ruby | Spaces | Within array literals.

Bun как JavaScript-фреймворк для Rails-проектов

При создании нового Rails-приложения теперь можно указать Bun в качестве JavaScript-фреймворка. Обратите внимание, что эта функция доступна начиная с Rails 7.1.0.beta1.

Поддержка RBS-функций с нетипизированными параметрами

С введением RBS 3.5, RubyMine поддерживает объявление методов с нетипизированными параметрами: не показывает лишних синтаксических ошибок для таких методов и правильно предоставляет для них подсказки.

Необязательные ключи записей RBS

RubyMine теперь корректно распознает необязательные поля с разными типами ключей. Кроме того, мы улучшили проверки подтипов.

Новый интерфейс включен по умолчанию

В RubyMine 2024.2 новый интерфейс включен по умолчанию для всех пользователей. Современный и минималистичный, он уменьшает визуальный шум и обеспечивает быстрый доступ к основной функциональности, по мере необходимости раскрывая более продвинутые возможности IDE. Новый интерфейс отличается более крупными и удобными элементами управления, продуманной цветовой схемой, легкими для восприятия иконками, повышенной контрастностью и правильными акцентами.

Локализация

Встроенная поддержка китайского, корейского и японского языков

Теперь не нужно устанавливать дополнительные плагины для китайского, корейского и японского языков — языковые пакеты включены в RubyMine 2024.2.

Поменять язык интерфейса можно в настройках: Settings | Appearance & Behavior | System Settings | Language and Region.

Скачать

Есть бесплатная пробная версия на 30 дней