Early Access Program

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

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:

Sorbet: mismatched argument warning

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.

Sorbet: setup inspections severity

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.

Navigation between .rb and .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:

RubyMine debugger: new interface

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:

Debugger: less popular actions

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:

RubyMine debugger: evaluate expression

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:

Reworked tests interface

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:

Split qualified names when creating a new RBS file

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.

RBS template settings

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

Discover more