RubyMine 2020.3 EAP Is Open!
The RubyMine 2020.3 Early Access Program (EAP) is open!
You can get EAP builds from our website, use the Toolbox App, or update to them using snaps if you’re an Ubuntu user. Note that the EAP builds are free to use but expire within 30 days of the build date.
As usual, we encourage you to participate in the EAP and share your thoughts on the latest improvements and the new functionality so that we can continue to make RubyMine better for you.
Here are the main highlights:
- New Welcome screen
- IDE theme synced with OS settings
- Improved support for Rails routing
- Factory Bot support improvements
- Сode coverage for branches and subprocesses
- Improved spelling and grammar checking
- Drag and drop for editor tabs
- Rearranged VCS menu
New Welcome screen
The first new thing you’ll see in RubyMine 2020.3 is the redesigned welcome screen:
One of the main changes is that you can now arrange your projects into groups. To create a group, right-click on the list of projects on the right-hand side of the Welcome screen.
From the Welcome screen, you can also access the most common IDE configuration settings. You can configure plugins, the color theme, keymap, and accessibility features.
The wizard that was shown on the first launch of the IDE has been removed.
IDE theme synced with OS settings
One of the top-voted UI improvements is here!
Now your OS and RubyMine themes will always be the same if you select the Sync with OS option in Settings | Preferences / Appearance & Behavior / Appearance / Theme. Your IDE will automatically switch to the light or dark theme, depending on your OS preferences.
Improved support for Rails routing
In v2020.3 we’ve polished support for Rails routing. Now working with routes.rb
is more seamless and user-friendly.
Completion for routes.rb
is improved. For example, now it works for all Match and HTTP helpers (such as get
, post
, put
, and etc.), resources
, namespace
, and scope
.
You can now use ⌃⌘↑ (Ctrl+Alt+Home) to navigate between a route in routes.rb
and its related models, views, and controllers:
Ctrl+click on a method in routes.rb
will now take you to the method in a controller:
Factory Bot support improvements
We’ve added a couple of improvements for those who use Factory Bot.
You can now navigate between a factory and its related entities with ⌃⌘↑ (Ctrl+Alt+Home):
Code completion now suggests model attributes for Factory Bot strategies like build
or create
:
Сode coverage for branches and subprocesses
This improvement is for those who use simplecov for code coverage analysis. Starting with v2020.3 RubyMine will show information about the coverage of branches and subprocesses.
For example, in cases when a conditional operator is only partially covered, you’ll see a yellow mark in the gutter. Click on it to see a popup showing which branches are covered:
You can toggle this feature using checkboxes in Edit Configurations… | Code Coverage.
Improved spelling and grammar checking
RubyMine 2020.3 makes it easier to keep your texts clean of typos. Suggested fixes are now shown directly in the ⌥⏎ (Alt-Enter) menu, just like quick-fixes for the code.
Drag and drop for editor tabs
In complex projects, it’s useful to keep several tabs visible at the same time. In v2020.3 we made interactions with editor tabs more intuitive.
You can now split the editor by dragging a tab to its edge. The IDE will highlight where the editor will split. You can also drag and drop editor tabs between these split windows.
Pinned tabs will now stick to the left side of the tab bar.
Rearranged VCS menu
The VCS menu has been renamed to match the version control system that you are currently using. We’ve also rearranged the actions in this menu to make the most common operations easier to access.
For example, if your project only uses Git, the VCS menu now looks like this:
Other important features and improvements
- For non-Ruby web projects created in RubyMine, the IDE will no longer automatically assign an unnecessary Ruby SDK. (RUBY-18411)
- RubyMine 2020.3 launched from a terminal will use the same environment variables that are set in the terminal. (RUBY-26821)
- Navigating between related entities (like models and controllers) with ⌃⌘↑ (Ctrl+Alt+Home) now works for helpers and mailers as well. Class names must match, for example the
UserNotifierMailer
class goes with the helperUserNotifierMailerHelper
. RUBY-25836 - We made the Override Method dialog more compact. Now it will be easier to find a method you want to override. (RUBY-25656)
- RubyMine now supports previewing WebP images. (RUBY-27014)
- Markdown files and their rendered previews now scroll in sync.
- We’ve added support for mermaid.js diagrams.
Early Access Program Key Facts
- The EAP version of RubyMine is free to use. It will expire in 30 days.
- This is pre-release software, and it may not work as intended.
- You can install the EAP version alongside a stable version of RubyMine.
- EAP versions of RubyMine report statistics by default. These statistics help us improve user experience. You can opt-out by changing the settings in Preferences/Settings | Appearance & Behavior | System Settings | Data Sharing.
- EAP versions have their own documentation as well.
Join the Early Access Program
You are welcome to 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.
As always, 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