Early Access Program

RubyMine 2021.2 Beta

RubyMine 2021.2 Beta

RubyMine 2021.2 Beta

RubyMine 2021.2 Early Access Program has reached beta! Here are the highlights of this build:

VCS

GPG signature

You can now sign your commits with a GPG key to secure them. You can enable this feature via Preferences / Settings | Version Control | Git.

If it’s your first time using a GPG key, you’ll need to configure it. To use an existing preconfigured GPG key, you can select it from the drop-down list.

GPG settings

Changelists renamed to Changes in new projects

Default Changelists was the name for the node that stores all uncommitted changes. In v2021.2, we’ve renamed it to Changes to make it more precise and readable. This update will affect all your new projects.

Changes in VCS

Changelists are not created automatically for Git operations

RubyMine will no longer add changelists automatically for Git operations. For example, a cherry-pick won’t trigger the creation of a changelist.

If you prefer automatic creation over the new behavior, you can switch back to it in Preferences/Settings | Version Control by ticking the Create changelists automatically checkbox.

Increased minimum supported Git version

The oldest version of Git supported by your IDE is now v2.17. We’ve increased the minimum supported version because 2.17 is the oldest version that still receives security updates.

Web and Frameworks

Support for TypeScript types in JSDoc

RubyMine now properly supports the TypeScript syntax used within JSDoc comments in .js files.

Support for some syntactic constructs, such as union types, has already been available for a while. With this release, RubyMine recognizes more syntactic constructs and comes with reworked and expanded support, as well as a lot of bug fixes.

For example, optional properties in @typedef declarations are now supported.

TypeScript in JSDoc

Auto-imports for CommonJS modules

This improvement is for Node.js users.

RubyMine now adds missing import statements for CommonJS modules. Required imports will be inserted on code completion, similarly to how it works for ES6 symbols.

Auto imports

Whenever the IDE isn’t sure what syntax should be used in a file, it will display a popup allowing you to choose between ES6 and CommonJS.

Rename refactoring for React useState hooks

You will no longer need to waste time on refactoring useState values and functions one by one in React hooks – RubyMine can now rename them for you.

To try this out, place the caret on a state value and invoke the Rename refactoring with ⇧F6 / Shift+F6 or by going to Refactor | Rename from the right-click context menu.

Rename refactoring in React

Support for classnames and clsx libraries

We’ve got another useful improvement for React users in this release.

RubyMine now supports popular classnames and clsx libraries, helping you deal with your CSS class names more efficiently. The IDE will show completion suggestions for your CSS classes and resolve all symbols in string literals and properties with literal names.

clsx support

The IDE will show completion suggestions for strings as you type. To see completion suggestions for objects used within your classNames functions, press ⌃Space / Ctrl+Space.

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.

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