- CompletionContributor#fillCompletionVariants returns void. If you want to stop other contributors from executing, call stopHere on CompletionResultSet or use runRemainingContributors methods from there. Also CompletionProvider doesn't take boolean returnValue in constructor anymore.
- IndexedRootsProvider doesn't take Project returns Strings instead of VirtualFiles. Strings represent file URLs.
- PsiShortNamesCache & PsiElementFinder are extensions and abstract classes now.
- PsiFile#getOriginalFile is @NotNull now, returning itself when there's nothing more original.
- Don't use IChameleonElementType anymore, please use ILazyParseableElementType for lazy parsing.
- Type of parameter for PsiScopeProcessor.getHint() changed from Class<T> to Key<T>.
- Closing brace ('}') is now inserted automatically (if brace matcher is configured). Earlier only ) and ] were inserted.
- While indices are built in background, IDEA has limited functionality. See javadocs for DumbService and DumbAware.
- The default PsiElementFinder#getClasses(PsiPackage, scope) is now capable of finding all PsiClassOwner files in package and asking them for getClasses(). So if your PsiElementFinder does exactly this, you'd better remove this method from there.