Улучшенное облачное автодополнение кода, написание промтов для ИИ прямо в редакторе, поддержка Kamal 2, встроенная интеграция с RBS Collection, обновления Ruby 3.4, а также проверка правописания с помощью Grazie
RubyMine 2024.3 предлагает более быстрое облачное автодополнение кода через плагин JetBrains AI Assistant. Оно работает точнее, лучше понимает контекст, а также поддерживает многострочное автодополнение.
Благодаря языковой модели Mellum, автодополнение теперь работает почти в 10 раз быстрее, предлагая варианты практически мгновенно. По сравнению с предыдущей версией предложенные варианты принимаются почти в два раза чаще, а отмен стало в два-три раза меньше.
Обратите внимание, что облачное автодополнение в AI Assistant доступно только с подпиской AI Pro или во время пробного периода.
AI Assistant теперь получает больше информации о приложениях на Rails, что позволяет лучше генерировать модульные тесты.
В RubyMine 2024.3 можно взаимодействовать с AI Assistant прямо в редакторе. Просто напишите запрос обычным языком, и AI Assistant сразу же сгенерирует нужный код, выделив изменения фиолетовым цветом. При этом AI Assistant учитывает контекст, автоматически добавляя связанные файлы и символы для более точной генерации кода.
На данный момент эта функция доступна в файлах *.rb
.
Rails 8 поддерживает развертывание приложений с помощью Kamal 2, а в RubyMine 2024.3 добавлено автодополнение для его конфигураций.
schema.rb
для поддержки типов Теперь RubyMine распознает модификатор not-null
для атрибутов миграции и предупреждает о некорректных присвоениях nil
.
В RubyMine 2024.3 для файлов queue_schema.rb
и cache_schema.rb
теперь доступны специальные иконки и подсветка синтаксиса.
В RubyMine появилась встроенная интеграция с RBS Collection — коллекцией RBS-файлов для гемов, не включающих сигнатуры.
Даже если в вашем проекте нет RBS, вы сможете воспользоваться сигнатурами из RBS Collection без лишних усилий. RubyMine будет автоматически загружать сигнатуры для зависимостей проекта и управлять ими.
it
в качестве псевдонима для нумерованных параметров в блоках RubyMine теперь распознает it
как псевдоним для _1
в блоках без параметров, обеспечивая в таких случаях поддержку типов и преобразования.
Мы добавили новую аннотацию об ошибке, которая не позволит вам использовать it
в блоке с обычными нумерованными параметрами.
RubyMine теперь распознает так называемые охлажденные строки — новое промежуточное состояние строковых литералов в Ruby 3.4. В проектах, где не используется директива frozen_string_literal
, строки теперь можно изменять, и при этом будет выдаваться предупреждение, а не ошибка.
RubyMine теперь показывает ошибку, если вы пытаетесь использовать анонимные блоки, rest- или keyword rest-аргументы в неоднозначном вложенном контексте.
Теперь у функции Find in Files есть новый режим — Project Files Excluding Git-Ignored. Из поиска исключаются файлы, указанные в .gitignore
, помогая вам сосредоточиться только на нужном коде.
Вы можете управлять фоновыми проверками в процессе коммита с помощью новой опции Run advanced checks after a commit is done в разделе Settings | Version Control | Commit. Она позволяет запускать тесты и инспекции после коммита. Если вы хотите, чтобы проверки завершались до коммита, просто отключите эту опцию.
Плагин Grazie теперь встроен в RubyMine. Он выполняет умные проверки, а не просто отлавливает орфографические ошибки и опечатки. Grazie знает правила грамматики и предупреждает о стилистических недочетах.
Проверки Grazie работают в строках, комментариях, блочных комментариях, heredocs и файлах RDoc.
Настроить Grazie можно в разделе Settings | Editor | Natural Languages | Grammar and Style | Scope.
Мы добавили новые настройки для управления предварительным выбором первого варианта автодополнения при использовании консолей или поля Evaluate Expression во время отладки.
В ходе отладки поле Evaluate Expression теперь точно отображает типы self
, распознает локальные переменные и параметры с выведенными типами, а также поддерживает автодополнение для новых локальных переменных в текущем стеке.
Консоль теперь запоминает выполненные команды и поддерживает вывод типов и автодополнение для локальных переменных.
Теперь в редакторе по умолчанию можно держать открытыми до 30 вкладок, прежде чем IDE начнет закрывать наименее используемые. Эту настройку можно изменить в разделе Settings | Editor | General | Editor Tabs.
Мы поменяли расположение действия Rename в контекстном меню при его вызове в редакторе и в окне Project. Теперь оно находится в самом верху, и тем, кто часто пользуется мышкой, будет удобнее переименовывать файлы, переменные и другие элементы.
Интерфейс нового терминала стал компактнее за счет уменьшения отступов — теперь на экране больше места для команд и с ними удобнее работать.
Теперь RubyMine по умолчанию подсвечивает все вхождения выделенного текста в файле. Так сразу хорошо видно, где в коде встречается выбранный текст.