Please welcome the next RubyMine 2016.3 EAP build 163.7342.19.
For previous posts covering the major new features of the upcoming release, see: New Gem Management UI, Faster Remote Gem Downloading.
Better Puppet Support
If you’re staying with the latest 2016.3 EAP builds, you may have noticed a lot of issues on Puppet support being closed. Back in October 2014 we implemented many Puppet support improvements, and with the new RubyMine 2016.3 we’ve decided to add more intelligence into Puppet code insight and resolving as we felt there was room for improvement. Today we’re ready to share all the new features with you.
First of all we’ve changed the default language level to Puppet 4. You can always adjust it in Settings | Languages & Frameworks | Puppet:
Smarter code completion
We’ve implemented much smarter code completion. For all the main syntax elements, such as case, class, define, function, if, node, and unless, RubyMine is aware of the code element structure:
Data type code completion is now available inside lists of parameters for classes, functions and resource types:
Code completion now works correctly and for resources defined with an array of strings in the title:
The list of built-in variables and facts is now up-to-date:
RubyMine now supports defining Puppet functions. Once defined, functions are also available in code completion:
More accurate code navigation
While highlighting code elements, RubyMine is now aware of local and global scopes:
Go to Declaration and Find Usages actions now work better for facts, functions, resource types and parameters:
In-place Rename refactoring
Rename refactoring is now aware of local and global scopes as well. Also, now it works without any additional dialogs, in-place:
With RubyMine 2016.3 you can create your own custom live templates for Puppet language in the same way as for other languages:
You’re welcome to give this build a try by downloading it, 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