Early Access Program

RubyMine 2021.1 Beta 4: Code With Me and Improvements for Docker

Our Early Access Program is coming to an end, and we are happy to announce that RubyMine 2021.1 Beta 4 is now available! While we are finishing things up before the final release, we’d like to tell you a bit more about the new features for collaborative development and Docker:

Code With Me

Code With Me, a new JetBrains service for collaborative development and pair programming, is now bundled with RubyMine.

Code With Me allows you to share the project you currently have open in your IDE with others and work on it together in real time.

Code with your peers in CWM

Your guests don’t even need to have their own IDEs installed. They just need an invitation link to be able to join your session. Hosts can determine individual guest permissions.

Invide others to Code With Me

The embedded audio and video calls, along with chat messaging, will help you discuss the code, share knowledge, and cooperate even more efficiently.

Please note that Code With Me for RubyMine is still in active development, and some IDE features are currently only supported on the host’s side, but not on the client side.

The features that are already supported include editing the code together with your peers, auto-completion, code insight and navigation, debugging, running tests and existing run configurations, and running terminal commands.

Features that are still in development for the client side include profiling, rerunning failed tests, creating new run configurations, code coverage, database management, and Run Anything. Consoles (IRB, Pry, Rails) are currently available in read-only mode on the client side.

We encourage you to share your feedback with us, and let us know which features you would like to see added first!

Docker

Improved Run/Debug Configurations

We have reworked the Run/Debug Configuration dialog for Docker configurations.
To add run options, click Modify. To add the necessary build options, click Modify options. The IDE now validates each option to make sure it is compatible.

For Docker Compose, RubyMine now supports all the existing options, including the one for declaring Environmental variables files (.env).

Improved Run/Debug Configurations

For Dockerfiles, you don’t have to remember all the run commands because code completion works in the Run Options field.

Run Options field

For Images, you can use code completion to enter the image name in the Image ID or name field.

Image completion

BuildKit support

We’ve added experimental support for BuildKit, which makes building projects much faster. To activate this option, click Modify options in Run/Debug Configurations, and select Enable BuildKit (experimental).

BuildKit support

Building named stages separately from the whole multi-stage Dockerfile is now easier and faster. Click the hammer icon next to the stage name, and the IDE will build the image using BuildKit. If you add the Run section in Run/Debug Configurations, the icon will change. When you click it, you will not only build an image but also run a container.

Build stages

UI enhancements in multi-stage Dockerfiles

If you use multiple FROM statements in your Dockerfile, each FROM instruction starts a new stage. In v2021.1, you can now fold stages and see a distinct separator line between them.

Folding statements in Dockerfile

Cancel Docker run

If you decide to stop your running Dockerfile, you can easily do so in the Services tool window. Select the running item, call up the context menu, and click Stop Deploy.

Stop Docker run

Environment variables and macros for Docker mounts

When using bind mounts, you can now enter a path to a directory on the host machine faster. The completion mechanism allows you to select macros and environmental variables in the Bind mount option in Run/Debug Configurations.

Environment variables and macros for Docker mounts

Image completion in Dockerfiles

Adding image names has become easier — code completion now works for them.

Image ID completion


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 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 the features you would like to see in the issue tracker.

Happy Developing!
The RubyMine team

image description