IntelliJ IDEA 2017.1 EAP is Open

It’s only been a month since we released IntelliJ IDEA 2016.3, but we’re already starting the IntelliJ IDEA 2017.1 EAP (Early Access Program). This EAP offers a glimpse into the update planned for next spring. Read on to learn about the major new features available in the EAP, or go ahead and grab the build.

Java

In IntelliJ IDEA 2016.3 we introduced a quick-fix that replaces for loops with chains of stream API calls. Since stream API is not always the best way to write code, and for loops may sometimes be more readable, we’ve added a quick-fix that helps you replace complicated chains of stream API calls with for loops.

This quick-fix may also help you debug a complicated chain. After you’ve fixed the problem, you can revert it back.

The inspections that were previously available for JUnit 4 are now available for JUnit 5 as well.

In SettingsEditorColors & Fonts now you can customize the colors used for regular expressions syntax highlighting.

When you generate a toString method, now the IDE allows you to choose fields from super classes.

When you ask the IDE to override or implement a method, now there’s an option to choose which annotations to copy from the method being overridden or implemented.

JVM Debugger

Method breakpoints that used to significantly affect performance have been rewritten. Now they’re emulated by the IDE as a combination of regular line breakpoints. As a result, we have method breakpoints that are a little slower to set but do not slow down application performance (well, almost).

The JVM Debugger Memory View introduced with IntelliJ IDEA 2016.3 as a separate plugin is now built into the IDE and available out of the box.

Emoji

The code editor now correctly handles Unicode emoji characters. On Mac OS X emoji characters are rendered as colored images. On Windows and Linux emoji are rendered as monochrome characters. Go ahead and use emoji in comments, String literals and resources.

Zero-latency typing

The zero-latency typing previously available as an experimenting feature is now enabled by default. This change removes possible lags when typing.

Groovy

The IDE now provides coding assistance for editing appender configuration. It includes code completion, finding usages, navigation and renaming.

The Parameter Hints option added in IntelliJ IDEA 2016.3 for Java is now available for Groovy as well.

Grails

The Project Wizard is now integrated with Grails Application Forge, a utility that makes it easier to create Grails applications.

Version control

Now you can choose whether you want to use regular expressions and case sensitivity when searching over commit messages in the Log viewer.

Also, now you can choose how much information about branches and tags the Log viewer displays. Disable Show Tag Names to make the view more compact. Enable Compact Reference View to see only the first branch’s name and hide the others.

Java 9

Support for Java 9 is still under development. Hopefully, we’ll have something to show you very soon. Stay tuned to our EAP news.

Windows

Last but not least, the Windows installer now comes with a 64 bit JDK which means now you can give your IDE more RAM.

Please download the IntelliJ IDEA 2017.1 EAP build and share your feedback with us: at the discussion forum and in our issue tracker. We’re eager to know what you think!

Develop with pleasure, and spread the word!

About Andrey Cheptsov

Part-time dreamer. JVM/JavaScript geek. IntelliJIDEA Marketing Manager at JetBrains.
This entry was posted in EAP Releases, New Features and tagged , . Bookmark the permalink.

31 Responses to IntelliJ IDEA 2017.1 EAP is Open

  1. Aleksandar S. says:

    Hi Andrey

    could you tell me what the font is that you have used in gifs
    ?

    Best regards
    Aleksandar

  2. Igor Kolomiets says:

    Oh come on…
    Please stop this emoji profanity or at least move it to the plugin, so grumpy people like me could uninstall it.

    • Andrey Cheptsov says:

      There is nothing to uninstall. If you don’t like them, don’t use them in your code.

    • Joe says:

      If we can expect Q random text editor to correctly display an emoji, that’s fine.

      If not, then now you need the IDE to read the code. That’s not fine.

      The people who will be unhappy are the ones who use the vim plugin, because people who use vi aren’t just numbers. Each is a free NaN.

      • Hannes Steffenhagen says:

        If random text editor doesn’t display the emojis correctly that’s the text editors fault. Emojis are part of Unicode, like it or not.

    • Igor Konoplyanko says:

      Hahaha. I’ve waited for this so long! Code written in pure emoji’s! Soon also on your screen 😉

  3. Bharath says:

    Does this support JDK 9 148 builds?

  4. Andrey says:

    I checked ‘Import settings from previous version’ on first run , but font size didn’t imported from 2016.3 settings.
    Took some time to understand why font looks different.

  5. Chidi says:

    How do you get the ≠ symbols enabled? It looks cool

  6. Hannes Steffenhagen says:

    Having a question about the parameter hints introduced in 2016.3; Can we please have an option to turn them on for all parameters, regardless of whether they’re literals or not? They’d be really helpful with API’s where you have methods with 12 integer parameters (like OpenGL for instance).

  7. Paweł Barszcz says:

    Thanks for emojis! I use them in tests as an example that our product handle emojis correctly, but… in 2016.3 they are invisible so I have to put comment like “yes, this emoji-named string constant below really has emoji in it, so do not mess with whitespaces :p “.

  8. Ara says:

    Any update for Scala?

  9. KL says:

    any update for customisable post-fix completion?

    Emoji support?! ha ha.

  10. Jeff says:

    Please consider more ColdFusion support!

  11. NICK says:

    What is the purpose of the emojis?

  12. Frank Hossfeld says:

    What is about GSS support. Something all GWT developers would like to see!

  13. Is the Ultimate EAP version free?

Leave a Reply

Your email address will not be published. Required fields are marked *