Skip to content

10.6.0.82217

Latest
Compare
Choose a tag to compare
@thahnen thahnen released this 03 Sep 13:12
· 3 commits to master since this release

For full release notes, see JIRA.

Changes to the SonarLint for Eclipse extension points

This release features changes to two specific extension points.

SonarLint Syntax Highlighting Provider

The org.sonarlint.eclipse.core.syntaxHighlightingProvider was moved from the CORE bundle to org.sonarlint.eclipse.ui.syntaxHighlightingProvider in the UI bundle. Therefore, the interface of the extension point can now be found at org.sonarlint.eclipse.ui.rule.ISyntaxHighlightingProvider.

The reasoning behind this was to decouple the CORE bundle from anything UI related, as the extension point is only built around it. Additionally, additions to it made in this release made it necessary.

Extension point Method Removed or added? Why?
org.sonarlint.eclipse.ui.syntaxHighlightingProvider org.sonarlint.eclipse.ui.rule.ISyntaxHighlightingProvider#getEditorLanguage() Added To get the corresponding SonarLint-related language of an editor
org.sonarlint.eclipse.ui.syntaxHighlightingProvider org.sonarlint.eclipse.ui.rule.ISyntaxHighlightingProvider#getTextMergeViewer() Added Get a language-specific diff viewer

SonarLint Project Scope Provider

This release features an additional extension point provided by SonarLint for Eclipse that can be used by third parties in order to narrow down the focus for SonarLint in terms of what is indexed and taken into account for analysis. The idea behind these changes is to improve the performance and lower the memory footprint of the plug-in.

As an example, see the current implementation in the sub-plugin for Maven. There we exclude the output directories as well as possible sub-modules as these are technically still available as resources in the parent project, even when the sub-modules are imported into Eclipse as well.

Extension point Method Removed or added? Why?
org.sonarlint.eclipse.core.projectScopeProvider org.sonarlint.eclipse.core.resource.IProjectScopeProvider#getExclusions() Added Get exclusions to narrow down the focus for SonarLint

If you have any questions regarding these changes, then please reach out to us via the Community Forum directly!