RubyMine 2021.3 EAP2: Initial Support for Sorbet, Improved Debugger, and More
The second EAP build of 2021.3 is out! We encourage you to give it a try and let us know what you think. Here are the highlights:
- Initial support for Sorbet
- Improved running and debugging experience
- Split qualified names when creating a new RBS file
Initial support for Sorbet
RubyMine now recognizes type Sorbet type signatures, including ones from .rbi
files.
This means that type mismatch inspections for method arguments and return values can now work based on Sorbet:
Currently only Mismatched argument type and Mismatched return type inspections are supported. Severity of these inspections is set to “Warning” by default. You can change it in Preferences / Settings | Editor | Inspections | Ruby | Probable bugs.
You can navigate between corresponding Ruby and RBI files using the Go To | Type Signature / Associated Declaration actions from the context menu. You can also use the ⌃⌘↑ (Ctrl+Alt+Home) shortcut. Note that currently it only works for signatures declared in separate .rbi
files.
Improved running and debugging experience
In this release, we have reorganized the debugger interface to make it more modern and minimalist, speed up the debugging workflow, and make popular actions more discoverable:
To simplify navigating frames and analyzing logs, we have moved the most popular buttons to the horizontal toolbar at the top of the debugger window and we’ve hidden the rest:
If you find that the default configuration doesn’t work for you, you can customize it in Preferences / Settings | Appearance & Behavior | Menus and Toolbars | Debug Header Toolbar.
The Evaluate expression dialog is now accessible right from the Debug tool window:
The Run and Services tool windows now also have a similar, cleaner look and feel. Here’s what the updated Run tool window looks like when you run tests:
Split qualified names when creating a new RBS file
When creating a new RBS file, you can use the ::
symbol in a file name, for example, Chat::Bot
. RubyMine will then create a file that contains the surrounding modules:
Note: Currently, RubyMine doesn’t check whether the new file should be a module, a class, or an interface. It will create an empty file if you just select “File” in the New RBS File/Class Name popup.
You can change the templates used for creating RBS files, classes, and modules. To do so, go to Preferences / Settings | Editor | File and Code Templates and look for templates for RBS.
Join the Early Access Program
You can download the latest EAP build from our website or via the Toolbox app. The full list of closed tickets in this EAP build is in the release notes.
To learn about the newest features as they come out, please follow RubyMine on Twitter. We post product news and tips several times a week.
We encourage you to share your thoughts in the comments below and to create and vote for features in the issue tracker.
Happy developing!
The RubyMine team