RubyMine 2016.3 EAP: New Gem Management UI

Hello everyone,

We are staying on track with the Early Access Program – please welcome the next RubyMine 2016.3 EAP build 163.4396.20.

For previous posts covering the major new features of the upcoming release, see: Faster Remote Gem Downloading.

New Gem Management UI

Gemsets seem to be the convenient way to deal with different gem environments for your apps. RubyMine has supported RVM gemsets for a while, and it’s been almost a year since we announced support for rbenv gemsets as well. But we were faced with the fact that a lot of gemsets make our Ruby version and gem management UI too complicated and not intuitive enough. In addition, rbenv and RVM gemsets behave in a slightly different way, so the task of making an intuitive and unified UI for both of these Ruby version managers becomes even more challenging. So that is the new UI we’ve come up with:

The List of Ruby SDKs

When opening Preferences | Languages & Frameworks | Ruby SDK and Gems, you can see the list of all Ruby versions installed on your machine. To choose a Ruby SDK for your current project, just use Space or click the corresponding radio button:

new_gem_ui_sdks

RubyMine automatically detects Ruby versions installed, but you can also add or remove any local or remote one by using the + and buttons:

new_gem_ui_add

The List of Gemsets

Now for each Ruby SDK you can open a list of gemsets available, please use Enter, double click or triangle icon for that. You can also open all the gemsets of all SDKs, or collapse the tree, with these buttons:

new_gem_ui_sdk

RVM

If you haven’t specified any RVM gemset to use with the project yet, the ‘default’ and ‘global’ ones are chosen:

new_gem_ui_rvm_defaultThere is a known issue about ‘global’ gemset not chosen by default. We’re going to fix that in the next EAP build.

You can choose any other gemset to be used with your project. Please note that with RVM you can choose only one gemset (use Space or the radio button):

new_gem_ui_rvm_gemset

You can also choose whether to use ‘global’ RVM gemset or not (with Space or the corresponding check-box):

new_gem_ui_rvm_global

Rbenv

For rbenv ‘default’ gemset actually means the set of gems installed to the SDK folder, so you cannot uncheck it:

new_gem_ui_rbenv_default

With rbenv you can also choose as many gemsets as you want to (with Space or corresponding check-boxes):

new_gem_ui_rbenv_gemset

For rbenv ‘global’ gemset behaves just like any other gemset, so there is no difference for it in the UI.

The List of Gems

Now let’s take a closer look at the panel on the right with the list of available gems. When you set the focus on a gemset, you can see all the gems installed in that gemset:

new_gem_ui_gems

When you set the focus on a Ruby SDK, you can see all the gems available for the project with that Ruby version – the gems of all gemsets being chosen for the SDK:

new_gem_ui_sdk_gems

You can just start typing to search for a specified gem:

new_gem_ui_search

You can also go to a gem path and to a page with gem description with the help of the corresponding buttons:

new_gem_ui_icons

All the UI changes are also available for IntelliJ IDEA Ruby plugin now, and rbenv gemsets are now supported in the Ruby plugin. We’re still working on rbenv gemsets support for remote SDKs.

We hope you’ll enjoy the new UI! You’re welcome to give it a try by downloading the new build, and share your feedback with us here in the comments.

The full list of fixed issues can be found in the release notes. Please note that EAP builds are pre-beta software and may cause issues, which we ask you to report to our issue tracker.


Your RubyMine Team

This entry was posted in Comfort, WhatsMining and tagged , , . Bookmark the permalink.

4 Responses to RubyMine 2016.3 EAP: New Gem Management UI

  1. Christopher Anderson says:

    Is there a way to handle gemsets for each branch in a git repository? I’m refactoring my project and have to keep changing this manually in preferences when I go back and forth between a production branch and a R&D or new features branch.

    Welcome the new UI though.

    Thanks

    • Tatiana Vasilyeva says:

      Hi Christopher,

      Are you using RVM or rbenv? You can manage it with different .rbenv-gemset (for rbenv) or .ruby-gemsets (for RVM) files I believe. RubyMine changes the SDK preferences according to these files.

  2. Pingback: RubyMine 2016.3 EAP: Better Puppet Support | RubyMine Blog

  3. Pingback: RubyMine 2016.3 Release Candidate: Attach to Local Process with Debugger | RubyMine Blog

Leave a Reply

Your email address will not be published. Required fields are marked *