...
- JDK 8 "Project Lambda" support (closures and extension methods) (work in progress)
- Bytecode viewer plugin
- Rearranger plugin is now bundled (work in progress)
- Recent Files (Ctrl-E) popup redesigned
- Middle matching in completion
- Faster project content indexing
- Native help viewer under Mac OS X
- Rewritten annotation processing configuration
- Compilation subsystem rewrite: "External make" feature
- The new make is by default off, can be enabled on a per-project basis from "Settings | Compiler | Use out-of-process build for project compilation" checkbox.
- Currently supported: incremental compilation of Java, Groovy, resource copying, UI Designer forms, Artifacts, Android, annotation processing, not-null instrumentation
- Currently NOT SUPPORTED: projects that store data in Eclipse format, Grails-specific instrumentation
- Highlights:
- all compilation tasks are performed in a separate process, fully independent from IDE's VM, no interference with AWT thread, no IDE resources consumption during build
- lower memory requirements for the IDE.
- in the make process javac compiler is called in "in-process" mode via java API, hence faster java sources compilation
- java make: completely rewritten java classes dependency management for faster and more accurate search of dependent classes
- 'automake' mode: automatic make triggered by events from IDE's virtual file system. If such make resulted in errors, those are highlighted in Project View and editor tabs
- faster project rebuild
- New run configuration features
- Possibility to run another configuration or external tool as "before run" action
- Possibility to forbid running multiple copies of a run configuration
- New intentions and quickfixes
- Split string on line breaks
- Convert color between hex and decimal
- Add type parameter
- Call 'toString()'
- Replace with cast variable
- Assign all unassigned parameters to fields
- Unwrap/Remove in boolean expressions
- Replace assignment with setter call
- Make class implement interface
- Add ternary operation to avoid NPE
- Convert array access to collection access
- Move initializer to setUp()
- Remove extra argument in method call
- Convert if statement to ternary operator
- Split 'try' statement with multiple resources
- Merge nested try statements
- Merge sequential method calls into call chain
- Make package-local, Make protected, Make private
- New inspections
- Non-final field in enum
- 0 is used as first parameter for setXXX" for JDBC PreparedStatement
- Highlighting of recursive calls with gutter icons
...