The SonarLint inspection currently works only at filesystem level (ie reading java.io.File). Thats why In the inspection we are checking status of the document (does it contains unsaved changes) to decide if analysis will be executed or not. If not executed we return 0 problems.
- user start typing some code
- local inspection triggered -> no issue since file is not written to disk
- user force save (Ctrl + S)
- local inspection triggered -> SonarLint issues appear
It was far from being perfect (issues were constantly showing/hidding) but was acceptable since there was a consistent way to see your issues => Ctrl + S
The problem with IntelliJ 15 seems that inpections are still trigerred when user type some code, but no more when user hits Ctrl + S... It means inspections are nearly always executed when file is out of sync with filesystem. And as a result it is very hard to make SonarLint issues appear. Even closing then reopening the file don't trigger inspection.
Do you confirm my analysis (that there is a change in behavior of inspection execution in IntelliJ 15)?
Do you have an idea of how we can solve this problem? I would like to avoid forcing a sync of the file each time the inspection is triggered (like is done in Checkstyle plugin) to not kill IntelliJ optimization effort.