Early Access Program

What’s new in IntelliJ IDEA 2019.3 EAP7?

We have a fresh EAP build for the upcoming IntelliJ IDEA 2019.3. Come and have a look at the new improvements this new build has to offer!

As usual, the EAP builds for IntelliJ IDEA Ultimate are free to use but expire from 30 days of the build date.

Version Control

To resolve a bunch of usability issues, we removed ‘Checkout as’ and introduced a new unified Checkout action for remote branches and the ‘New Branch from Selected’ action for both remote and local branches.

Previously the IDE had the ‘Checkout as’ action that set the checkout branch as a remote tracked branch, as it called the git checkout -b localbranch remote/branch command.

But, it appears that the way it behaved was not what some users expected. A tracked branch is proposed as a default push target in the push dialog, and if a user decided to create a new branch, a feature branch, for example, from the start point of the selected release branch, usually the user would want to push this branch to a new remote branch, and not to the release branch.

‘New Branch from Selected’ action

To ensure clarity, we’ve introduced ‘New Branch from Selected’ – this action creates a new branch but no tracking is set.

The ‘New Branch from Selected’ action is available for both local and remote branches.

Brand new unified Checkout action for remote branches

Now when you invoke the ‘Checkout’ action on a remote branch, the IDE will silently create a new local branch, check it out, and set tracking of the selected remote branch if there is no local branch with the same name.
In cases where there is a local branch with the same name, it tracks remote but no commits will be lost during the checkout, the IDE will do a fast-forward update of the local branch (silently reset it to remote), and check it out.

If commits can be lost because of the reset, the IDE will show a confirmation dialog, and offer options to reset anyway or perform a Checkout & Update for the local branch.

The IDE will also show an options dialog offering to reset it anyway, and change the tracking or create a branch with a new name if the local branch tracks another remote branch.

You can invoke the Checkout action for remote branches either from the Branches popup or the Log context menu.

Better plugin management

The upcoming IntelliJ IDEA 2019.3 will allow you to install, uninstall, enable, and disable a theme plugin without restarting the IDE.

The keymap plugins also don’t need the IDE to be restarted anymore to work.

Spring Boot 2.2 support

The upcoming IntelliJ IDEA 2019.3 now supports Spring Boot 2.2, which includes support for @ConfigurationPropertiesScan. Also, ‘on’ and ‘off’ as boolean values in application.yml are supported as well.

More template languages can be injected

In the upcoming IntelliJ IDEA 2019.3, it is now possible to inject more template languages into your code, specifically: Pug (ex-Jade), Handlebars, EJS, and Slim. To inject a template somewhere in your code, press Alt+Enter, select Inject Language, and then pick a language from the list.

Template language injection

Please note that you need to install the plugin that supports the template language that you are going to inject into your code. Also, all template languages are supported in IntelliJ IDEA Ultimate only.

If you’re working with another template language in IntelliJ IDEA which is missing from the list above, please file a new issue in our tracker.

Try it!

Download the new IntelliJ IDEA 2019.3 EAP build from our website or update to it using the ToolBox App.

As always, any and all feedback is very much welcome in our issue tracker, discussion forum, and on Twitter!

Happy developing!

image description