Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SLE-920: Enhance the extension point for diff viewers #723

Merged
merged 2 commits into from
Aug 20, 2024

Conversation

thahnen
Copy link
Member

@thahnen thahnen commented Aug 19, 2024

Enhance the extension point used for syntax highlighting with a new method to gather language (aka plug-in) -specific implementations of the TextMergeViewer that is used for displaying diffs.

Added implementations for JDT (Java/JSP) and CDT (C/C++) but not PyDev due to a missing Export-Package statement in the plug-in.

For the latter one, there is a related PR opened in fabioz/Pydev#370 but this won't be used in the feature implementation for now, but can be used later!

Enhance the extension point used for syntax highlighting with a new method to take into account the compare/diff viewer.

Added implementations for JDT (Java/JSP) and CDT (C/C++) but not PyDev due to a missing `Export-Package` statement in the plug-in.
@@ -14,7 +14,9 @@ Require-Bundle: org.eclipse.core.runtime,
org.sonarlint.eclipse.core,
org.eclipse.core.filesystem,
org.eclipse.jdt.annotation;resolution:=optional,
org.eclipse.text
org.eclipse.text,

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

what do these lines do? just curious

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is basically the Eclipse way of defining dependencies at runtime (and therefore also compile time).

The MANIFEST.MF and specifically this section will contain all bundles that we require at the runtime of the Eclipse installation. Most of them are present due to them being part of the Eclipse platform itself, but for some we have an optional.

E.g. here we have the org.eclipse.cdt.core;resolution:=optional statement that more or less is used for us to only make use of this very sub-plugin if CDT (the C development tools) are installed.

What I added is the compare bundle that brings in the TextMergeViewer and SWT that is the UI system of Eclipse.

In order to not calculate SWT for all fragments (Sloop) of the CORE plug-in, we move it to the UI plug-in.

This will fix an error with the build as the SWT dependency couldn't be found for our "no-arch" fragment that is literally "every other OS/ARCH" combination except for the ones we have Sloop packages for.
@thahnen thahnen marked this pull request as ready for review August 20, 2024 08:49
@thahnen thahnen merged commit 2dd9b90 into master Aug 20, 2024
15 checks passed
@thahnen thahnen deleted the task/tha/SLE-920_EPs branch August 20, 2024 08:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants