Read this post in Japanese
We are happy to announce that the RubyMine team will visit Japan this September for RubyKaigi 2017! Not only are we sponsoring the event together with other Japanese and international tech companies, but we’re also bringing our own presentation:
Automated Type Contracts Generation for Ruby
Our Team Lead, Valentin Fondaratov (github), will give a talk about the new approach to type annotations generation in Ruby. Join Valentin on September 19, 13:50 – 14:30, to learn about our progress on an open source project that should bring robust static analysis for Ruby, and see how it works!
You can also take a sneak peek at this presentation to learn more about the matters of the project:
This post was updated from the v2017.2.3 Release Candidate announcement to the announcement of the stable RubyMine 2017.2.3 release.
RubyMine 2017.2.3 (build 172.3968.40) is available. The highlight of this build is the ability to now work with Docker and Docker Compose on Windows. Additionally, in this post we will share more details on the recent debugger improvements.
Running Docker Compose on Windows
If you are running Windows, you probably know that support for Docker and Docker Compose, announced in v2017.1 and v2017.2 respectively, didn’t work for our Windows users because of an inability to configure Docker/Compose as a remote Ruby interpreter in RubyMine. Today’s update finally fixes this and other issues related to the Docker integration on Windows. In short, you should now be able to configure Docker/Compose on Windows the same way as shown below:
RubyMine 2017.2.3 EAP has been released, introducing a number of improvements for the debugger and other bug-fixes.
Our recent drive to enhance performance has affected the debugger too. In this RubyMine EAP we’re bringing these debugging improvements:
- No more issues with multi-process debug targets. Now it’s possible to debug servers like Passenger, Zeus, and Foreman painlessly. Moreover, Attach to Local process now perfectly works with these servers: just select the web/deployment server during the attach phase, and RubyMine will stop at the breakpoints in all its subprocesses.
- The debugger is now smart enough to detect costly operations triggered by watch expressions evaluation. It will stop such operations if they’re likely to slow down the debugging process. For example, if any tracked variables use SQL queries for the
to_s evaluation, RubyMine will not slow down during stepping, which it did before.
RubyMine 2017.2.2 EAP has been released introducing a series of performance improvements and a number of bug-fixes.
The Hunt for Performance
This EAP contains the first part of major performance updates that will take full effect in v2017.3 (to be released in fall 2017).
For this EAP, we have fixed internal bugs affecting the speed of code completion, inspections, and the overall responsiveness of the IDE.
As a quick-and-dirty test we have analyzed Discourse and TracksApp, the two well known open source Rails apps, for existing errors and code smells with RubyMine (Code | Inspect Code), and compared it against the same analysis in the current stable v2017.2.1. The results varied across the team, but generally showed a 50%-100% increase in speed of code analysis when inspecting the whole project. Continue reading
RubyMine 2017.2 (build 172.3317.60) has been released today! This is the second major release this year. See more and download this version from our What’s new page.
As usually, every significant feature was announced during our Early Access Program versions, and discovered in a blog post. Let’s see what’s new in detail:
- Support for Docker has been upgraded with Docker Compose! Now you can work with your apps in Docker containers taking advantage of code analysis, completion, and other great IDE features. See the related blog post to learn how to configure Docker Compose for your project.
- Starting with this release you can also use the RubyMine debugger to debug your rails applications running with Docker Compose. Find more in this post.
Posted in Announcement
RubyMine 2017.2 RC (build 172.3317.60) is out. This release candidate features quick-fixes for RuboCop, and brings other minor improvements.
Since the previous major release (v2017.1) RubyMine has displayed RuboCop offenses treating and highlighting them as code inspections, but lacked an ability to autocorrect found code smells. Now we have improved that partial solution by adding proper quick-fixes:
If you press Alt+Enter, RubyMine will suggest a quick-fix for a found error, and auto-correct all errors in the file with RuboCop. So no more jumping to the terminal to fix your code with RuboCop! Continue reading
RubyMine 2017.2 EAP 5 (build 172.2953.21) has been released. For this EAP we’re providing long-awaited support for debugging apps inside of a docker-compose service. If you haven’t configured Docker Compose in RubyMine yet, refer to this post and set it up in minutes. Here’s how you can try the debugger:
Open your Docker project in RubyMine, and make sure you’ve chosen Docker as a remote SDK in Preferences / Settings | Ruby SDK & Gems:
We hope you found our recent Most Important Shortcuts post useful, and we’ve decided to continue this series to make your everyday work with RubyMine more productive.
In this post we’ll go over the navigation features in RubyMine that will make you forget (or almost forget) about using a mouse or touchpad during development.
Navigating between tool windows
Navigate to Action, Class, Symbol, or File
Open Recent files / Recently edited files
Navigate between Rails entities
Navigate to previous/next method or tag
Move to the start/end of any scope
Navigating with bookmarks
Navigating between tool windows
Everyone needs to navigate between tool windows. Here are the shortcuts for the most important ones:
- Project tool window — ⌘1 / Alt+1
- Run/Debug/Test/Console tool window — ⌘4 / Alt+4
- Structure tool window — ⌘7 / Alt+7
- Version control — ⌘9 / Alt+9
- Terminal — ⌥F12 / Alt+F12
- Editor — Esc
By the way, you can also use ⌥F1 / Alt+F1 to navigate between IDE components. This one comes very useful when, for example, you are working on a file, and then need to find it quickly in the project tool window, or open it in the folder. Continue reading
For this EAP we also changed the way local run configurations are stored so that they don’t pollute
.iml files and don’t get shared through git commits. Continue reading
RubyMine 2017.2. EAP 3 (build 172.2656.16) is now available. What highlights this build is a small but quite convenient opportunity to change messages of your local commits. Here’s what it looks like:
Right-click any local commit, choose Reword and change your commit message. Easy as that. Also, both F2 and Shift+F6 work as shortcuts for Reword Commit. Continue reading