Exciting news! A new massive update for IntelliJ IDEA is here. Please welcome IntelliJ IDEA 2017.3! It includes loads of new features and dozens of important bugfixes. Try it right now, and see for yourself. Read more about the highlights of this release in this blog post.

Java

Smart code completion is aware of type casts.

Many new and improved inspections: inspection for Redundant throws declarations, quick-fix for deprecated code, inspection for possible nullability in Stream API call chains and more.

Improvements made to the JUnit5 support. Learn more.

Configurable command line shortener: a new convenient way to specify a method used to shorten the command line for each configuration. Learn more.

Run Dashboard: Add different run configurations types to the Run Dashboard.

JVM debugger

New Overhead tab in the Debugger tool window.

New On-demand Data Renderers feature that helps reduce overhead. To enable the feature to any renderer, choose Mute Renderers from the context menu.

Improvements to the Async Stacktraces feature, now it causes very low overhead and works out of the box.

The Java Stream Debugger plugin is now bundled.

Java EE 8

The navigation for Asynchronous CDI Events between where the event was fired and where this event was received.

The navigation between Injection point and Injected Beans using the icons in the gutter for dynamic beans (CDI extensions).

Navigation from the disposer methods to their producers. Learn more.

Spring

The Spring Beans Dependencies diagram, has been extended with a new Neighborhood Mode feature. For better readability, you can switch to the Borderless View.

The auto-detection of Spring facet.

Spring Boot

Support for Spring Boot 2.0 Actuator Endpoints.

In Spring Boot configuration files the values are highlighted according to their type.

Auto-detection for MVC context for Spring Boot MVC web applications. Learn more

Kotlin: bundled Kotlin plugin has been updated to v1.2; there is now support for the experimental Kotlin multiplatform projects feature. Learn more.

Project configuration

New improvements for unloaded modules: Automatically load/unload modules added by other team members when updating the project from your VCS and check that unloaded modules compile successfully before commit. Learn more.

It is possible to choose the way you display modules: either by using module groups, or by grouping modules based on their qualified names.

In IntelliJ IDEA 2017.3, grouping by qualified module names is enabled by default (if there are no module groups configured in your current project). Learn more.

Gradle

Run tests with coverage either with Gradle Test Runneror when select the option Delegate IDE build/run action to gradle.

Brand new Build tool window for Gradle output. The output from the running task and test is shown in the Run and Debug window, as it was in IntelliJ IDEA 2017.2.

Brand new editor-based REST client.

Settings synchronization: IntelliJ IDEA 2017.3 provides better synchronization of your settings across different installations. Learn more.

Support for local variable type inference. Learn more.

VCS

The IDE preserves the workspace you associated with a branch.

Possibility to view a three-panel diff for merge commits.

The IDE reads the author and commit details provided by git-format patches and uses this metadata when you commit them.

The Interactively Rebase from Here action is now available from the Log. Learn more.

Database tools

Any table/view or result-set can be exported to a file or copied to the clipboard.

Foreign Data Wrappers in PostgreSQL.

Selecting schema when running an SQL file.

Jumping to the console from a datasource. Learn more.

User interface

New Preview panel for the SVG editor.

Ability to add multiple soft limits to indicate a suggested width of the code.

An expandable input field: Adds the possibility to view arguments on a new line after you expand a field. Learn more.

JavaScript & TypeScript

New Pull Member Up refactoring, allows you to move class methods up the class hierarchy – from your current JavaScript or TypeScript class to its parent class or interface.

Extract type alias and interface for TypeScript allows you to create an alias for a complex type and automatically replace all its usages with the new name.

Better code completion and documentation for JavaScript. Learn more.

Docker plugin

New UI for the Run/Debug Configurations dialog. Three types of Docker Run Configurations available from the Run/Debug Configurations dialog: Docker Image, Dockerfile, Docker-compose.

Support for Dockerfile and docker-compose files with custom names and paths.

The Docker plugin can set files with environment variables in the container during a docker build for DockerFiles. Learn more.

IntelliJ IDEA 2017.3 brings loads of bug fixes, the most notable are:

A fix for unexpected disappearance of Enter class name dialog (Navigate | Class…) and Enter file name dialog (Navigate | File…) IDEA-173000.

Monitor Scale: In the “per-monitor-DPI-aware” mode the monitor scale will now be rounded to the nearest integer. For example, 225% scale – to 200% IDEA-180962.

Diff: Files with different line separators were shown as different when actually, they were the same IDEA-101502.

For the full list of bug fixes, check out this link.

For more detailed information about the shiny new features, check out the What’s New page. You can Download the new IntelliJ IDEA 2017.3 right now!

Ubuntu users now can use snaps to install IntelliJ IDEA 2017.3, including both community and ultimate editions.

Your feedback is very much appreciated in our issue tracker or on Twitter.

Happy developing!