Features Releases

IntelliJ IDEA 15 Released, Adds Kotlin to the Family of Supported JVM Languages

Great news from the JetBrains team: today we’re announcing the release of IntelliJ IDEA 15!

As always, the new IntelliJ IDEA release brings a rich set of new features, better user interface, more built-in tools and integrations, and further improved coding assistance that is consistent across the entire range of supported languages and frameworks.

In other great news, Kotlin, the JVM language that JetBrains is crafting, goes Beta. Now is a very good time to try it out for productivity, conciseness and perfect Java interoperability. IntelliJ IDEA 15 bundles the Kotlin plugin and provides support for Kotlin out of the box. To get started with Kotlin, use this handy tutorial.

Both IntelliJ IDEA Ultimate and IntelliJ IDEA Community are now available for download. Also, starting today, IntelliJ IDEA 15 is available as part of JetBrains Toolbox, with new subscription licensing and pricing.

IJ1_blog_1

For more details on the new features and licensing, please read below.

Debugger

To fully embrace Java 8 we’ve equipped our debugger with first-class lambda support: now you can precisely target lambdas when setting breakpoints, running code to cursor or an arbitrary expression, and stepping into code at the caret.

15_debugging_lambda

The new Force return action lets you interrupt method execution and return any specific value that you request, letting you flexibly vary the method execution logic while debugging.

On-the-fly code duplicates detection

Thanks to its enhanced code indexing engine, IntelliJ IDEA can now detect code duplicates as you type, displaying a popup that lets you examine them on the fly. To avoid pestering you, it is set by default to only detect duplicates longer than five lines of code, however you can configure this setting, or disable the inspection altogether by pressing Alt+Enter.

v15_duplicates_2

User interface

Spend less time switching between the dialog and the results tool window. As another perk of the improved indexing, the Find in Path action now offers an instant preview of search results as you type in the search box.

15_find_preview

The gutter is more interactive and now allows running applications and tests. Also, new icons let you easily distinguish between failed and successful tests.

v15_gutter_tests

The entire test runner tool window has been redone from scratch to provide a unified interface for all languages, complete with inline statistics, vertical layout, test result history, and export/import actions.

v15_test_runner

Now every Run Configuration has a small green indicator that tells you if it’s running. If your Run Configuration is a Single instance only, the IDE will show you the Restart action instead of the Run action on the toolbar.

v15_run_configuration_indicator

With the new adjustments for the red-green color deficiency, the IDE has become friendlier for people with color blindness.

We’ve also made it possible to hide unnecessary tool windows without disabling corresponding plugins.

Last, but not the least is complete HiDPI support for Windows and Linux, with fractional scaling for both fonts and icons according to your system DPI settings.

Version control

The built-in integrations with Git, Mercurial, Perforce and other version control systems have now been updated.

The Rebase action is now available from the Branches menu, and like Merge, inherits support for synchronous multi-root branch operations, automatic stash/unstash changes, and conflict resolution assistance.

v15_vcs_rebase_in_branches_popup

 

The Branches menu is now available from the Log viewer context menu.

When you click the gutter, IntelliJ IDEA will highlight changes by word.

v15_vcs_per_word

For whitespace-only changes, the gutter now uses a different color, making it easier to distinguish actual changes in the code from simple reformatting.

v15_vcs_whitespaces

The option VCS changed only text, added earlier to the Reformat action has become smarter: it reformats not only the changed lines, but also the surrounding code when it makes sense.

The Undo action is now available when merging and/or resolving conflicts, and the Annotate action is available from the Diff viewer.

If you’re using Mercurial Queues, you’re welcome to check out the new tools for managing patches.

Perforce users can now shelve local changes in their Perforce repos. This option may be safer and more convenient than local shelving in certain cases.

When committing changes, TFS users will now be able to access their saved queries, and browse work item trees.

JVM frameworks

Coding assistance for Spring has been updated to support the new 4.2 features: @Bean on Java 8 default methods, @Import with regular component classes, code completion and navigation for @EventListener, @AliasFor and @ContextConfiguration support along with supporting Hibernate 5.0.

v15_spring_42_events

For Spring Boot users we’ve prepared a better coding assistance in application.yml and additional-spring-configuration-metadata.json files, as well as automatic Spring facet configuration based on annotations.

Grails developers will enjoy the long-awaited support for Grails 3.x, the newest version of their favorite Groovy-based web framework.

v15_grails

For Arquillian, we’ve made it possible to configure containers on the IDE level, and then run tests against those selected.

v15_arquillian_3

Scala

The Scala plugin has been updated with support for SAM (single abstract method), an intention to expand macros, Postfix completion, the Inline refactoring for type aliases, and support for dynamically named tests (e.g. “test(variable)” or “test(expression)“).

Groovy

While working on improving Kotlin and Scala support, we didn’t forget about Groovy: meet the @Builder AST transformation support.

JavaScript languages and frameworks

Front-end web developers will be glad to know that we support TypeScript 1.5 and 1.6 along with the TSLint integration, better coding assistance for React and JSX, and initial support for AngularJS 2.

Android

The newest features in Android Studio 1.3 are now available in IntelliJ IDEA 15: Android Memory (HPROF) Viewer, and the Allocation Tracker. Changes from Android Studio 1.4 are expected in minor IntelliJ IDEA 15 updates.

Database tools

It’s no secret that JetBrains is working on a brand new IDE for working with SQL code and databases, currently dubbed 0xDBE. IntelliJ IDEA, being our flagship product, includes all of that functionality. Here’s just a glimpse at the list of features to come:

  • Fast and accurate schema introspection
  • Modify table action
  • Generating CREATE TABLE and INSERT statements via Alt + Ins ( + N for OS X)
  • Multiple query consoles
  • Query console local history
  • Execution plan
  • Compare query results
  • And many more…

Licensing and pricing changes

Starting with this release, IntelliJ IDEA is only available under our new licensing model as part of JetBrains Toolbox. You can find complete details on the IntelliJ IDEA pricing page.

That said, all customers with valid upgrade subscriptions can still upgrade to IntelliJ IDEA 15 at no cost according to their license terms. You do not need to switch to the new model while your upgrade subscription is still active. If your upgrade subscription is expired, you can check out the offer for existing customers switching to the new license model on the IntelliJ IDEA pricing page.

Make sure you do not miss what’s now possible with the  JetBrains Toolbox — including a brand new ‘All Products’ plan, allowing you to use any our great desktop tools depending on your specific language needs.

You’re welcome to download IntelliJ IDEA 15 right now, and give it a try yourself. Spread the word, and as always…

“Develop with Pleasure!”

Sincerely,
JetBrains Team