eclipse-mylyn / org.eclipse.mylyn

Eclipse Public License 2.0
13 stars 9 forks source link

org.eclipse.pde.internal.core.natures.PDE missing #578

Closed gnl42 closed 1 week ago

gnl42 commented 1 month ago

Suddenly seeing complaint about org.eclipse.pde.internal.core.natures.PDE.PLUGIN_NATURE missing from org.eclipse.pde.core_3.18.200.v20240714-0803

image

merks commented 1 month ago

Where do you see this complaint? Here are how PDE declares the natures:

image

So all the nature classes appear to be present.

I'm not sure to what org.eclipse.pde.internal.core.natures.PDE and org.eclipse.pde.internal.core.natures.PDE.PLUGIN_NATURE refer.

It seems some constants have been moved here recently:

image

So the have been moved:

image

This sounds like a strange variation of your SWT problem where we've not yet established what exactly you have installed:

https://github.com/eclipse-platform/eclipse.platform.swt/issues/1343#issuecomment-2227207669

Somehow you don't have an installation that's consistently 2024-09 M1, I guess. But how and why? I've update more than a dozen IDEs today without a problem.

Is this problem in a new installation or an updated installation?

gnl42 commented 1 month ago

This is a brand new installation (last night)

merks commented 1 month ago

Can you share the installation details to show which version of pde is installed? Also details about where the complaint appears might help. The more details about what you see and how you got to that state would help.

gnl42 commented 1 month ago

Hmm, I'm seeing the same problem with a fresh install on my Mac.

Windows 11: image

MacOs: image

[ERROR] Failed to execute goal org.eclipse.tycho:tycho-compiler-plugin:4.0.8:compile (default-compile) on project org.eclipse.mylyn.context.sdk.java: Compilation failure: Compilation failure: 
[ERROR] E:\workspaces\mylyn\mylyn-main\git\org.eclipse.mylyn\mylyn.context\org.eclipse.mylyn.context.sdk.java\src\org\eclipse\mylyn\context\sdk\java\WorkspaceSetupHelper.java:[47] 
[ERROR]     import org.eclipse.pde.internal.core.natures.PDE;
[ERROR]            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[ERROR] The import org.eclipse.pde.internal.core.natures.PDE cannot be resolved
[ERROR] E:\workspaces\mylyn\mylyn-main\git\org.eclipse.mylyn\mylyn.context\org.eclipse.mylyn.context.sdk.java\src\org\eclipse\mylyn\context\sdk\java\WorkspaceSetupHelper.java:[111] 
[ERROR]     description.setNatureIds(new String[] { PDE.PLUGIN_NATURE, JavaCore.NATURE_ID });
[ERROR]                                             ^^^
[ERROR] PDE cannot be resolved to a variable

I'm guessing M1 isn't ready for prime time. image

Can the automatic update be enabled for Release Candidates only?

gnl42 commented 1 month ago

PDE was merged into PluginProject

https://github.com/eclipse-pde/eclipse.pde/commit/a37e0a10d8e3c3fbeb3805e5f7cf8391dc04855c

merks commented 1 month ago

This was an issue concerned with the contents of the target platform. Of course finding something that will be broken in M2 is much better then it being broken in M2 because we didn't notice the disruption...

Note that if one had used org.eclipse.pde.core.project.IBundleProjectDescription.PLUGIN_NATURE instead this would not have been a problem. The fix changed it from using one internal package to using a different internal package with the bad consequence that, without a change to the version range of the MANIFEST.MF, the new version can be installed along with a PDE that does not have that constant.

ruspl-afed commented 1 month ago

Why do we use internal type if PDE has org.eclipse.pde.core.project.IBundleProjectDescription API for us?

ruspl-afed commented 1 month ago

We need to rework this to API, otherwise we introduce very strict dependency to a certain PDE version