I have raised this as a point of concern on the planning council (see conversation from yesterday) and raised it with PDT project after M2, with a follow up yesterday.
Note, that signature change causes other projects to fail too, both inside and outside of Eclipse. It is internal API in platform, so up to all the projects to adapt. I suspect that at least some bundles on marketplace will install into 2021-12, but fail to run in a similar way.
Regenerating the product catalog and testing it, I installed the
PHP package. It has this familiar error in the log:
java.lang.ClassNotFoundException: An error occurred while
automatically activating bundle org.eclipse.php.debug.ui (355).
at
org.eclipse.osgi.internal.hooks.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:126)
at
org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findLocalClass(ClasspathManager.java:570)
at
org.eclipse.osgi.internal.loader.ModuleClassLoader.findLocalClass(ModuleClassLoader.java:335)
at
org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:384)
at
org.eclipse.osgi.internal.loader.BundleLoader.findClass0(BundleLoader.java:475)
at
org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:403)
at
org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:168)
at
java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
at
org.eclipse.osgi.internal.framework.EquinoxBundle.loadClass(EquinoxBundle.java:616)
at
org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:196)
at
org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:920)
at
org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:246)
at
org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:63)
at
org.eclipse.ui.internal.WorkbenchPlugin.lambda$0(WorkbenchPlugin.java:287)
at
org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:57)
at
org.eclipse.ui.internal.WorkbenchPlugin.createExtension(WorkbenchPlugin.java:285)
at
org.eclipse.ui.internal.EarlyStartupRunnable.run(EarlyStartupRunnable.java:55)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
at
org.eclipse.ui.internal.Workbench$40.run(Workbench.java:2667)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
Caused by: org.osgi.framework.BundleException: Exception in
org.eclipse.php.internal.debug.ui.PHPDebugUIPlugin.start() of
bundle org.eclipse.php.debug.ui.
at
org.eclipse.osgi.internal.framework.BundleContextImpl.startActivator(BundleContextImpl.java:828)
at
org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:759)
at
org.eclipse.osgi.internal.framework.EquinoxBundle.startWorker0(EquinoxBundle.java:1019)
at
org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.startWorker(EquinoxBundle.java:365)
at org.eclipse.osgi.container.Module.doStart(Module.java:605)
at org.eclipse.osgi.container.Module.start(Module.java:468)
at
org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:404)
at
org.eclipse.osgi.internal.hooks.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:117)
... 19 more
Caused by: java.lang.NoSuchMethodError:
org.eclipse.core.internal.runtime.AdapterManager.getFactories()Ljava/util/HashMap;
at
org.eclipse.php.internal.debug.ui.PHPDebugUIPlugin.start(PHPDebugUIPlugin.java:110)
at
org.eclipse.osgi.internal.framework.BundleContextImpl.lambda$2(BundleContextImpl.java:808)
at
java.base/java.security.AccessController.doPrivileged(Native
Method)
at
org.eclipse.osgi.internal.framework.BundleContextImpl.startActivator(BundleContextImpl.java:802)
... 26 more
A stack trace like this repeats for every editor that's opened.
I suspect this makes the package mostly unusable. So if it were
my package, I'd give it a -1 and rebuild my contribution against
2021-12.
Scout looks to be in better shape and starts without errors in
the log. But creating a Java project has this (and 20 others just
like this) in the log (but that can be turned off in the
preferences, but only if PDE is installed which is not the case):
java.lang.Error: SWT Resource was not properly disposed
at
org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172)
at
org.eclipse.swt.graphics.Resource.<init>(Resource.java:120)
at org.eclipse.swt.graphics.Image.<init>(Image.java:205)
at
org.eclipse.wst.sse.ui.preferences.StructuredTextEditorPreferencePage$4.getImage(StructuredTextEditorPreferencePage.java:432)
at
org.eclipse.jface.viewers.WrappedViewerLabelProvider.getImage(WrappedViewerLabelProvider.java:104)
at
org.eclipse.jface.viewers.WrappedViewerLabelProvider.update(WrappedViewerLabelProvider.java:149)
at
org.eclipse.jface.viewers.ViewerColumn.refresh(ViewerColumn.java:144)
at
org.eclipse.jface.viewers.AbstractTableViewer.doUpdateItem(AbstractTableViewer.java:396)
at
org.eclipse.jface.viewers.StructuredViewer$UpdateItemSafeRunnable.run(StructuredViewer.java:427)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
at
org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:174)
at
org.eclipse.jface.viewers.StructuredViewer.updateItem(StructuredViewer.java:2109)
at
org.eclipse.jface.viewers.AbstractTableViewer.createItem(AbstractTableViewer.java:288)
at
org.eclipse.jface.viewers.AbstractTableViewer.internalRefreshAll(AbstractTableViewer.java:726)
at
org.eclipse.jface.viewers.AbstractTableViewer.internalRefresh(AbstractTableViewer.java:618)
at
org.eclipse.jface.viewers.AbstractTableViewer.internalRefresh(AbstractTableViewer.java:610)
at
org.eclipse.jface.viewers.AbstractTableViewer.lambda$0(AbstractTableViewer.java:572)
at
org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1398)
at
org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1359)
at
org.eclipse.jface.viewers.AbstractTableViewer.inputChanged(AbstractTableViewer.java:572)
at
org.eclipse.jface.viewers.ContentViewer.setInput(ContentViewer.java:282)
at
org.eclipse.jface.viewers.StructuredViewer.setInput(StructuredViewer.java:1632)
at
org.eclipse.wst.sse.ui.preferences.StructuredTextEditorPreferencePage.createAppearancePage(StructuredTextEditorPreferencePage.java:269)
at
org.eclipse.wst.sse.ui.preferences.StructuredTextEditorPreferencePage.createContents(StructuredTextEditorPreferencePage.java:344)
at
org.eclipse.jface.preference.PreferencePage.createControl(PreferencePage.java:244)
at
org.eclipse.jface.preference.PreferenceDialog.createPageControl(PreferenceDialog.java:1433)
at
org.eclipse.jface.preference.PreferenceDialog$8.run(PreferenceDialog.java:1196)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
at
org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:174)
at
org.eclipse.jface.preference.PreferenceDialog.showPage(PreferenceDialog.java:1188)
at
org.eclipse.ui.internal.dialogs.FilteredPreferenceDialog.showPage(FilteredPreferenceDialog.java:630)
at
org.eclipse.jface.preference.PreferenceDialog$5.lambda$0(PreferenceDialog.java:660)
at
org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:74)
at
org.eclipse.jface.preference.PreferenceDialog$5.selectionChanged(PreferenceDialog.java:657)
at
org.eclipse.jface.viewers.StructuredViewer$3.run(StructuredViewer.java:821)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
at
org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:174)
at
org.eclipse.jface.viewers.StructuredViewer.firePostSelectionChanged(StructuredViewer.java:818)
at
org.eclipse.jface.viewers.StructuredViewer.setSelection(StructuredViewer.java:1661)
at
org.eclipse.jface.viewers.TreeViewer.setSelection(TreeViewer.java:1090)
at
org.eclipse.jface.viewers.Viewer.setSelection(Viewer.java:376)
at
org.eclipse.oomph.setup.ui.recorder.PreferenceInitializationDialog$Initializer$2$2.run(PreferenceInitializationDialog.java:418)
at org.eclipse.oomph.ui.UIUtil$7.run(UIUtil.java:656)
at
org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:40)
at
org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:185)
at
org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4035)
at
org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3635)
at
org.eclipse.jface.operation.ModalContext$ModalContextThread.block(ModalContext.java:166)
at
org.eclipse.jface.operation.ModalContext.run(ModalContext.java:368)
at
org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:468)
at
org.eclipse.oomph.setup.ui.recorder.PreferenceInitializationDialog$Initializer.run(PreferenceInitializationDialog.java:376)
at
org.eclipse.oomph.setup.ui.recorder.PreferenceInitializationDialog.okPressed(PreferenceInitializationDialog.java:274)
at
org.eclipse.jface.dialogs.Dialog.buttonPressed(Dialog.java:468)
at org.eclipse.jface.dialogs.Dialog.lambda$0(Dialog.java:619)
at
org.eclipse.swt.events.SelectionListener$1.widgetSelected(SelectionListener.java:84)
at
org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:252)
at
org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)
at
org.eclipse.swt.widgets.Display.sendEvent(Display.java:4243)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1060)
at
org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4060)
at
org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3632)
at
org.eclipse.jface.window.Window.runEventLoop(Window.java:823)
at org.eclipse.jface.window.Window.open(Window.java:799)
at
org.eclipse.oomph.setup.ui.recorder.RecorderManager$7.widgetSelected(RecorderManager.java:854)
at
org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:252)
at
org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)
at
org.eclipse.swt.widgets.Display.sendEvent(Display.java:4243)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1060)
at
org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4060)
at
org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3632)
at
org.eclipse.jface.window.Window.runEventLoop(Window.java:823)
at org.eclipse.jface.window.Window.open(Window.java:799)
at
org.eclipse.ui.internal.OpenPreferencesAction.run(OpenPreferencesAction.java:66)
at
org.eclipse.jface.action.Action.runWithEvent(Action.java:474)
at
org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:580)
at
org.eclipse.jface.action.ActionContributionItem.lambda$4(ActionContributionItem.java:414)
at
org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)
at
org.eclipse.swt.widgets.Display.sendEvent(Display.java:4243)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1060)
at
org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4060)
at
org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3632)
at
org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1154)
at
org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
at
org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1045)
at
org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155)
at
org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:644)
at
org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
at
org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:551)
at
org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:156)
at
org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152)
at
org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:401)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
at
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native
Method)
at
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at
org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596)
at org.eclipse.equinox.launcher.Main.run(Main.java:1467)
If this were my package, I'd disable the system property for
reporting leaks ensuring that the system property
org.eclipse.swt.graphics.Resource.reportNonDisposed is false (and
I report the leaks to the owners).
Note that for people (others reading this) with upgrade failures,
a workaround is to run using eclipse.exe -vmargs
-Djava.io.tmpdir=<path-to-temp-folder-on-same-drive-as-eclipse.exe>
The catalogs have been updated and will now install M3 when
installing 2021-12.
Regards,
Ed
On 19.11.2021 03:37, Jonah Graham
wrote:
Hi everyone,
Our next milestone build is available for testing: EPP 2021-12 M3
There are a range of issues / things to note:
- The php and scout packages have not
had a report back that they work in more than a couple of
release cycles. Is someone still testing scout or php
package?
- 2021-12 M3 contains macOS
AArch64 packages and they should now appear linked
on the Downloads page
- The macOS AArch64 now contains the native components
from CDT's contribution. Can someone test if the Terminal
view is working properly for local shells?
- While Upgrades fail under some circumstances
(see Bug 576506)
this time it ran fine for me by having Eclipse on the same
drive as tmp.
- Mac notarization failed for exactly one package
(parallel on aarch64). See Bug 573875