IntelliJ IDEA
IntelliJ IDEA – the Leading Java and Kotlin IDE, by JetBrains
IntelliJ IDEA 2021.1 EAP 3: Perforce Integration, New Java Inspections, and More
The third EAP build for IntelliJ IDEA 2021.1 is now available! It brings support for Perforce in IntelliJ IDEA Community Edition, new Java inspections, UI enhancements, as well as some other minor updates.
You can download the new EAP build from our website, get it from the free Toolbox App, or update using snaps if you’re an Ubuntu user.
Let’s take a look at some of the most important changes and fixes of week three.
VCS
Perforce integration
The Perforce plugin is now fully compatible with IntelliJ IDEA Community Edition, and you can install it via Preferences/Settings | Plugins | Marketplace. The source code for this plugin is available on GitHub.
Java
In this EAP, we’ve prepared a range of new inspections for data flow analysis.
- IntelliJ IDEA can now detect and warn you when arrays and if conditions have a negative size. The existing Constant conditions & exceptions inspection tracks such cases. [IDEA-254545]Additionally, IntelliJ IDEA now recognizes the Arrays.copyOf method. It checks whether the size of the resulting array is always equal to the second argument, which must be positive. [IDEA-255527]
- IntelliJ IDEA also can detect the Collection.toArray() method and warn you about errors. [IDEA-26040]
- IntelliJ IDEA supports methods for unboxing or converting integers, for example, Integer.longValue and Byte.intValue. Previously such methods were returning unknown results. [IDEA-255644]
User Experience
Quick access to recent projects on Windows
We’ve revamped the IntelliJ IDEA jump list support on Windows. You can now access your recent projects by right-clicking on the IntelliJ IDEA icon on the taskbar or on the Start menu.
Better tooltips display
Tooltips are now shown one after another to prevent them from overlapping.
Improved accessibility
We are continually working to make our IDE more accessible to all users. In this EAP, we’ve added more labels to UI elements on the welcome screen, in the Project Structure view, and VCS log. These elements, as well as gutter icons, are now read out correctly when a screen reader is enabled. We are also working on better accessibility support for macOS users.
Kotlin
Fixed warnings in coroutines
We continue to improve the experience of working with coroutines in IntelliJ IDEA. In v2021.1, the inspection that warns you about inappropriate blocking method calls works as expected. The inappropriate method call warnings now appear where they are supposed to.
Other
JSON Lines support
We now support the newline-delimited JSON Lines format used for working with structured data and logs. The IDE will recognize .jsonl, .jslines, .ldjson, and .ndjson file types.
Files of this format contain several lines, and each new line is a JSON object separated by a newline character. Commas are required at neither the beginning nor end of lines, and there is no need to enclose the entirety of the file contents in square or curly braces.
We’ve also addressed some of the issues with the most votes:
- The IDE can now automatically detect case-sensitivity per directory. You don’t need to customize this setting manually. [IDEA-135546]
- Fixed how floating windows are displayed. [JBR-1752]
- The Find in Path dialog now closes when you click on a code area. [IDEA-170038]
- Fixed IDE crashes on macOS and on startup. [JBR-2947], [JBR-3066]
- Fixed the unexpected disappearance of the Debug tool window. [IDEA-193427]
- Fixed the search function when used to find recent projects located inside a group. [IDEA-141556]
- The IDE now properly runs files that use a Shebang mechanism. [IDEA-254959]
- Fixed the loss of code style settings at startup. [IDEA-259203]
- Fixed build failures for projects that use Lombok. [IDEA-260719]
Those are the most notable updates in EAP 3, but you can find the whole list of resolved issues in the release notes. Stay tuned for more improvements next week, and share your feedback in the comments below, on Twitter, or via our issue tracker.
Happy developing!