В RubyMine 2023.1 вас ждет поддержка Rails 7 и Ruby 3.2, обновления интерфейса, ускоренное автодополнение, снижение потребления памяти, улучшенная синхронизация гемов на WSL, более удобная навигация и работа с общими контекстами и примерами в RSpec, а также расширенная интеграция с Docker.
RubyMine теперь поддерживает основные методы turbo-rails
из Rails 7, позволяя вам писать Ruby-код еще быстрее.
ActiveRecord
Мы добавили поддержку автодополнения для некоторых CRUD-методов класса ActiveRecord
. RubyMine теперь предлагает варианты автодополнения для аргументов методов ActiveRecord
.
create_table
к моделям На полях редактора появились новые значки для перехода от моделей к соответствующим вызовам create_table
в схеме. Теперь можно переходить от вызовов create_table
в schema.rb
к моделям, использующим эти таблицы. Откройте файл schema.rb и переходите к связанным моделям, нажимая на значки в левом поле редактора.
Data.define
в Ruby 3.2 RubyMine поддерживает работу с методом define
класса Data
, который был представлен в Ruby 3.2. IDE теперь распознает методы чтения, созданные с помощью Data.define
.
Data.define
теперь позволяет создавать экземпляры класса Data
с использованием квадратных скобок. RubyMine распознает такие экземпляры и отображает их при вызове Type Info.
Новая опция Pow operators позволяет отдельно расставлять пробелы вокруг операторов возведения в степень и других. Ее можно настроить на вкладке Spaces в разделе Preferences | Editor | Code Style | Ruby.
Теперь в окне Structure можно посмотреть структуру теста, вложенную под соответствующий метод. Это упрощает навигацию по большим тестам.
В RubyMine появилась долгожданная поддержка Astro.
Она доступна через плагин, который предоставляет базовую функциональность, включая подсветку синтаксиса, автодополнение кода с автоимпортами, рефакторинги, навигацию, intention-действия, сворачивание кода, поддержку Emmet и правильное форматирование.
В этой версии добавлена поддержка параметров конфигурации Tailwind CSS, в частности, автодополнение имен пользовательских классов в настройке classAttributes
, а также поддержка экспериментальных настроек, таких как tailwindCSS.experimental.configFile
. Мы также добавили автодополнение произвольных значений при использовании описаний в квадратных скобках.
Теперь в RubyMine можно увеличивать и уменьшать размер всех элементов интерфейса одновременно. Для этого выберите View | Appearance в главном меню и настройте нужный масштаб. Менять масштаб также можно с помощью тачпада или тачскрина.
Мы добавили новую опцию, которая позволяет зафиксировать ширину боковых окон инструментов или сохранить возможность их менять.
Теперь в режимах Zen и Distraction Free верхняя панель инструментов скрыта.
Теперь область с окнами инструментов можно разделить по вертикали. Чтобы разместить окно в нижней части, просто перетащите его значок вниз по боковой панели и опустите под разделитель.
Для удобства работы на небольших экранах мы добавили компактный режим (Compact Mode), в котором интерфейс IDE выглядит более аккуратно и лаконично: мы сузили панели инструментов и заголовки окон, сократили отступы и интервалы, а также уменьшили кнопки и значки.
Теперь можно легко переключаться между проектами на macOS с помощью вкладок, расположенных под главной панелью инструментов.
Мы полностью переработали виджет Run, расположенный в верхней части IDE. Раньше вся область со значками была выделена цветом, а теперь значки зеленые и меньше бросаются в глаза.
Новая настройка позволяет задать Actions on Save для новых проектов. Вы можете указать, какие действия должны выполняться при сохранении изменений в будущих проектах.
Теперь можно использовать регулярные выражения для создания собственных инспекций поиска и замены. Такие инспекции могут быть особенно полезны для обнаружения проблем, связанных со стилем и форматированием.
Как и на вкладках Actions и Files, стандартный алгоритм сортировки на вкладке Classes теперь тоже основывается на машинном обучении. Он выдает наиболее точные и актуальные результаты.
RubyMine теперь показывает типы использования символов RBS, когда вы их переименовываете.
Мы улучшили навигацию внутри RSpec.
При нажатии Ctrl+Click на ссылке на субъект вы перейдете к ближайшему определению значения в области видимости.
shared_examples_for
и shared_context
Начиная с этой версии, работать с shared_examples_for
и shared_contexts
стало еще проще. Теперь их можно запускать с помощью значков на полях редактора.
Новая опция для конфигураций RSpec позволяет запускать тесты по номерам строк и уникальным идентификаторам примеров. Для этого в окне Run/Debug Configuration есть новое поле Example IDs/Line number.
В нем можно указать либо один номер строки, либо один или несколько идентификаторов примеров RSpec.
Встроенный форматер RubyMine теперь поддерживает описания текучих интерфейсов для RSpec 3. Пока тесты выполняются, они будут иметь шаблонное описание по умолчанию. Как только тестирование завершится, эти описания будут заменены на реальные имена примеров.
Журналы всех контейнеров Docker Compose теперь собраны в одном месте — на вкладке Dashboard, где они обновляются в реальном времени.
Подключаться к реестру контейнеров Azure стало гораздо проще. Чтобы настроить подключение, перейдите в раздел Docker Registry в меню Settings/Preferences | Build, Execution, Deployment | Docker и выберите опцию Docker V2 в поле Docker Registry.
:z
для привязки томов на SELinux Теперь у вас есть возможность добавлять флаги конфигурации :z
при монтировании каталога с хоста. Это позволяет подключать тома к Docker-контейнерам на устройствах SELinux.