New UI, enhanced RBS support, improvements for working with shared contexts and examples in RSpec, updated Navigation and Structure view functionality, and improved Remote Development.
The way tags are displayed in the Structure tool window is now more convenient. We've improved readability and cleaned up extra entries.
RubyMine now displays database attributes at the very top of the Structure view tree, and they are enabled by default. This functionality is available in both the Structure tool window (Alt+7) and the Structure popup (Ctrl+F12).
In RubyMine 2022.3 we’ve introduced the ability to view and navigate to specific
database tables when browsing your
schema.rb file. You can examine
and quickly find a database table or table column using the
Structure tool window
We’ve added inlay hints above each controller action with a URL that links to the action. To enable or disable the URL path inlay hints, click Settings/Preferences | Editor | Inlay hints and toggle the URL path checkbox.
We invite you to try out the new RubyMine UI. It provides easy access to essential features and progressively discloses complex functionality as needed, resulting in a cleaner look-and-feel that is more modern and powerful. You can switch to the new UI in Settings | Appearance & Behavior | New UI (Beta).
Support for RBS type provision is now available when you call a method reference. To invoke the popup that shows the names of the parameters in the method (if the popup has closed or if your IDE is not configured to show it automatically), you just need to select the method and press Ctrl+Shift+P (or click View | Type Info).
We’ve simplified the process of writing methods with type signatures. There is no longer any need to manage multiple Ruby and RBS files yourself. Now you can write a method definition with just one action. Learn more about this easy way to edit and add new type signatures.
Now you can view type information from RBS using the Quick Documentation popup (Ctrl+Q). If the method has an RBS signature, RubyMine will display information about the parameters and return the value in the documentation.
New inlay hints for blocks with self-type bindings in RBS are now available. RubyMine now also shows Numbered parameter type hints only when using a numbered parameter inside a block to avoid displaying too many inlay hints.
We’ve added support for completion options from any defined shared contexts and examples.
RubyMine recognizes the
fcontext example group aliases and shows
these blocks in the Structure tool window. You can also run these tests
using the gutter icons right in the editor.
RubyMine now links request and routing specs to their respective controllers. You can open the necessary request or routing spec and press Ctrl+Shift+T to navigate to the controller used as a test subject. You can use the same shortcut to navigate backwards.
Now you can search for usages of shared contexts in RubyMine and change names of shared contexts and examples along with their references by using the Rename refactoring.
In this release, we’ve added the option to specify the context for executing shared examples. Now when you run specs containing shared examples, RubyMine displays a dialog where you can choose a context in which to execute them.
RubyMine 2022.3 brings better IDE performance when working with projects in WSL2. This is an alternative way to use the Remote Development functionality if you work with projects running in WSL2 file systems. Instead of running a full IDE on Windows, your IDE backend will launch directly in WSL2 itself. Then you can connect to it the same way you would connect to any remote machine.
The New Project wizard on RubyMine’s Welcome screen now includes project templates for Vite and Next.js. We’ve also updated the project template for Vue to follow the latest standards.
RubyMine can now take care of unresolved imports and will offer suggestions for importing Vue components. We’ve also provided support for the props destructure syntax, improved the behavior of code completion and type checking for Vue library component props, and fixed several Nuxt 3 issues.
We’ve introduced full support for .dockerignore files, including code highlighting and completion. These files are now taken into account when you build an image from the IDE.
We’ve introduced a completely reworked solution for custom IDE settings synchronization. The new Settings Sync plugin can sync all shareable IDE settings, bundled plugins, and third-party plugins. Depending on your current approach to synchronization, you may need to enable the new plugin manually. To learn more, check out this article.
RubyMine now supports Vitest, a Vite-native unit test framework! You can run, re-run, and debug your tests, and use the watch mode for All Tests scenario by default. Snapshot testing and coverage are also supported in watch mode, giving you near-instant feedback on coverage when coding.