Improved support for Rails, RBS, Debugger, YARD, and various new features.
Rails developers can now click links for Controller#action, View, and Route references to navigate to the corresponding files.
RubyMine now supports searching for Rails URLs. Simply type
in the Search Everywhere dialog to find and navigate to a file that
contains the desired URL. You can also use a keyboard shortcut:
We've introduced autocompletion for HTTP requests. This means you can autocomplete Rails URLs and navigate to their related Routes. The completion suggestions also display the types of available HTTP requests.
The newly added Endpoints tool window provides an aggregated view of the client and server APIs used in your project. The tool window can assist you when developing microservices and for backend-frontend communication. You can refer to this help topic to learn more.
You no longer need to manually type opening HTML tags when you edit
.html.erb files. Just start typing the name of an HTML tag,
and RubyMine will provide the proper autocomplete suggestion. Press Tab to
autocomplete the tag and continue editing things inside the tag.
In this release, we’ve continued to improve our RBS support. Starting with this version, RubyMine’s code insight now checks inline public and private visibility modifiers to determine the visibility of attribute and method declarations. We’ve also added per-method visibility modifiers to the structure view.
Previously, we only provided types for an object if its class had an RBS signature.
If there was no corresponding RBS signature, we could only retrieve the types of
We’ve improved type inference for unknown classes, so RubyMine will now look up
the types for methods from all known ancestors from Ruby, not just
We’ve improved RubyMine’s debugger to make it more robust for Ruby 3 or later. You should now be able to debug your code written in Ruby 3 or later without any major issues while using all of the features provided in the GUI, such as stepping through the code, evaluating expressions, and more. We also fixed issues in the previous debugger implementations, so if you are running a version of Ruby earlier than 3.0, you should be able to debug your code in RubyMine as well. No extra action is required, as the IDE will automatically suggest a suitable debugger implementation.
Starting with v2022.2, RubyMine recognizes YARD macro extensions and provides general coding assistance for them.
Note that RubyMine does not support the “attach” macros due to possible performance issues.
Check out the updated look and feel of YARD comments and tags when rendering them in the editor. We tidied up indentation and styles to make code documentation inside the IDE more uniform.
RubyMine uses run/debug configurations to run, debug, deploy, and test your code. In this release, we’ve introduced a new feature to run and debug the file that is currently open in the editor.
Code insight features, such as navigation between entities, the Rename refactoring, and Find Usages, now work for pattern-matched local variables.
This version adds a new option to exit line comment continuation by pressing Enter. Use Shift+Enter to insert an empty comment line. You can toggle this option in Preferences / Settings | Advanced Settings | Ruby | Delete empty line comment with Enter checkbox.
We’ve recently introduced a keyboard shortcut that changes the font size across all editors. To increase the font size, press Alt+Shift+.. To decrease it, press Alt+Shift+,.
If you use different Rubies for different projects, you can now edit interpreter names in the Ruby SDK settings. We’ve added this feature to help you make various SDKs human-readable and avoid confusion when choosing between them.
Now you can open your Gemfile and add the RuboCop gem right from the Notifications tool window. When you see the Set up RuboCop suggestion in the Notifications tool window, click Add.
Now you can choose whether you want RubyMine to automatically insert parentheses on code completion or not. To enable auto-insertion of parentheses, go to Settings/Preferences | Editor | General | Code Completion and toggle the Insert parentheses automatically when applicable checkbox.
We’ve been actively working on support for Angular 14 in RubyMine. The most
important addition we’ve made in this release is support for Angular standalone
components. RubyMine now properly recognizes components, directives, and pipes
Our support for Vue 3 has lagged behind some of the latest Vue updates. We’ve
shipped several improvements to address this, though some, such as Vite support,
were already included in the minor updates for v2022.1. RubyMine 2022.2 also comes
with a few fixes. For example, it understands type narrowing in
RubyMine 2022.2 comes bundled with TypeScript 4.7, supporting new language features
moduleSuffixes and ESM in Node.js. It will automatically insert the
.js extension to the import statement if module is set to node16 or nodenext in your
tsconfig.json file. Additionally, RubyMine supports the
typesVersions field in package.json files.
This release retires support for some older technologies and features, namely Rails 3, the RCov gem, the JRuby run configuration type as well as the Zeus, Spork, and Nailgun pre-load servers. For more details regarding these decisions, see this separate announcement.