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
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
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
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.
The RubyMine team
Subscribe to Blog updates
RubyMine 2024.1 Early Access Program is Open!
The RubyMine 2024.1 Early Access Program has now started! In this blog post, we’ll share our plans for the upcoming release and the areas we’re currently focusing on. The first EAP build includes performance and usability improvements, bug fixes, and updates to RBS language support.Now, you c…
RubyMine 2023.3 EAP Update
Hello everyone! We’re back with an update on the state of the 2023.3 Early Access Program. You can download the latest EAP build from our website, via the free Toolbox App, or by using snaps for Ubuntu. Here are the biggest highlights of this release: Performance improvements As we me…
The RubyMine 2023.3 Early Access Program Is Open!
Hello everyone, The third RubyMine Early Access Program of 2023 is underway! The key change in the first EAP build is an important indexing optimization. By refactoring our code base, we’ve doubled RubyMine’s indexing speed compared to v2023.1. This is particularly noticeable when working…
Performance Improvements in RubyMine 2023.1
Hello everybody, The new release is fast approaching, so it’s time to unveil the performance enhancements you can expect from RubyMine 2023.1. Faster code completion When developing and supporting RubyMine, we analyze a great load of anonymized usage data. A lot of recent data pointed to the fact t…