- This topic has 12 replies, 4 voices, and was last updated 6 years, 3 months ago by Brian Fernandes.
-
AuthorPosts
-
zulusxParticipantAfter install VueJS plugin it overrides my default PHP editor. Why???
Brian FernandesModeratorzulusx,
Sorry about that, we’re working on improving the behavior of CodeMix in environments with other tooling installed, these fixes will actually land in our release next week. I’m assuming you do have the Eclipse PHP tools (PDT) installed?
To fix this, go to Preferences > CodeMix > Languages > Preferred Editors and uncheck the PHP item from the tree.
Note: CodeMix probably took over the PHP editor when installed and not only after the installation of the Vue pack (assuming this is what you meant by the VueJS plugin).
zulusxParticipantYeah PDT is installed (I’m Project Leader :P). For now I manually unchecked preferred PHP language and validator and force default PHP editor in eclipse settings, but afraid lot of our users may have problem with that.
I installed VueJS codemix plugin from marketplace. I see two features installed: Vue Pack::CodeMix 1.0.0 and Code Mix 0.9.0
Brian FernandesModeratorThanks for the note – clear on what you installed.
We have release due in the next couple of days which should address exactly this problem, allowing you to more intuitively choose which editor and validator you wish to use. Will update this thread when that’s available, would love to hear your feedback.
Brian FernandesModeratorDawid,
The update I was talking about was released yesterday – do pick it up, it should be a far improved experience.
Yeah PDT is installed (I’m Project Leader :P).
Sorry, I missed this in your last post – awesome! Your feedback will be invaluable.
zulusxParticipantLooks better, but after reinstall my PHP editor was again replaced.
1. After startup I always have to wait for “Verifying Projects” process. It blocks both DLTK and JSDT process
2. If CodeMix editor is opened during startup (Vue file in my case) everything go even worse because also wait for another process “Linking viewer selection with current editor”. I’m using “refresh workspace on startup”.
3. CodeMix should check dir permissions before register watchers I see java.nio.file.AccessDeniedException in Eclipse logs
4. I don’t understand high CPU usage on OSX, constantly takes 30% – 80% even if I do nothing. Yourkit report that most cpu cycles are consumed by sun.nio.fs.PoolingWatchService. Why not IResource events + Eclipse Workspace auto-refresh? I have really large code base and a lot of projects opened.
5. Eclipse reports deadlocks ui/freeze after startup with any editor opened:To avoid deadlock while executing Display.syncExec() with argument: com.genuitec.eclipse.code.ui.EarlyStartup$$Lambda$557/250188560@390e6d84, thread Worker-15: Workbench early startup will interrupt UI thread.
java.lang.IllegalStateException: Call stack for thread Worker-15: Workbench early startup
at java.management@9.0.4/sun.management.ThreadImpl.dumpThreads0(Native Method)
at java.management@9.0.4/sun.management.ThreadImpl.getThreadInfo(ThreadImpl.java:472)
at org.eclipse.ui.internal.UILockListener.reportInterruption(UILockListener.java:206)
at org.eclipse.ui.internal.UILockListener.interruptUI(UILockListener.java:176)
at org.eclipse.ui.internal.PendingSyncExec.waitUntilExecuted(PendingSyncExec.java:82)
at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:153)
at org.eclipse.swt.widgets.Display.syncExec(Display.java:4860)
at com.genuitec.eclipse.code.ui.EarlyStartup.earlyStartup(EarlyStartup.java:33)
at org.eclipse.ui.internal.EarlyStartupRunnable.runEarlyStartup(EarlyStartupRunnable.java:77)
at org.eclipse.ui.internal.EarlyStartupRunnable.run(EarlyStartupRunnable.java:53)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at org.eclipse.ui.internal.Workbench$40.run(Workbench.java:2758)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:60)java.lang.IllegalStateException: Call stack for thread main
at java.desktop@9.0.4/sun.font.CFont.createNativeFont(Native Method)
at java.desktop@9.0.4/sun.font.CFont.getNativeFontPtr(CFont.java:196)
at java.desktop@9.0.4/sun.font.CFont.getWidth(CFont.java:115)
at java.desktop@9.0.4/sun.font.FontFamily.preferredWidth(FontFamily.java:169)
at java.desktop@9.0.4/sun.font.FontFamily.setFont(FontFamily.java:264)
at java.desktop@9.0.4/sun.font.CFontManager.registerGenericFont(CFontManager.java:105)
at java.desktop@9.0.4/sun.font.CFontManager.registerGenericFont(CFontManager.java:80)
at java.desktop@9.0.4/sun.font.CFontManager.registerFont(CFontManager.java:167)
at java.desktop@9.0.4/sun.font.CFontManager.loadNativeFonts(Native Method)
at java.desktop@9.0.4/sun.font.CFontManager.access$100(CFontManager.java:46)
at java.desktop@9.0.4/sun.font.CFontManager$1.run(CFontManager.java:213)
at java.base@9.0.4/java.security.AccessController.doPrivileged(Native Method)
at java.desktop@9.0.4/sun.font.CFontManager.loadFonts(CFontManager.java:209)
at java.desktop@9.0.4/sun.font.SunFontManager.findFont2D(SunFontManager.java:2334)
at java.desktop@9.0.4/java.awt.Font.getFont2D(Font.java:505)
at java.desktop@9.0.4/java.awt.Font.access$000(Font.java:232)
at java.desktop@9.0.4/java.awt.Font$FontAccessImpl.getFont2D(Font.java:236)
at java.desktop@9.0.4/sun.font.FontUtilities.getFont2D(FontUtilities.java:145)
at java.desktop@9.0.4/sun.java2d.SunGraphics2D.checkFontInfo(SunGraphics2D.java:670)
at java.desktop@9.0.4/sun.java2d.SunGraphics2D.getFontInfo(SunGraphics2D.java:831)
at java.desktop@9.0.4/sun.java2d.SurfaceData.getTextPipe(SurfaceData.java:754)
at java.desktop@9.0.4/sun.java2d.SurfaceData.validatePipe(SurfaceData.java:652)
at java.desktop@9.0.4/sun.java2d.SunGraphics2D.validatePipe(SunGraphics2D.java:447)
at java.desktop@9.0.4/sun.java2d.pipe.ValidatePipe.validate(ValidatePipe.java:55)
at java.desktop@9.0.4/sun.java2d.pipe.ValidatePipe.fillRect(ValidatePipe.java:75)
at java.desktop@9.0.4/sun.java2d.SunGraphics2D.fillRect(SunGraphics2D.java:2424)
at com.genuitec.eclipse.code.ui.languages.IconDataImageDescriptor$IconDataImageDataProvider.prepareGrahics(IconDataImageDescriptor.java:143)
at com.genuitec.eclipse.code.ui.languages.IconDataImageDescriptor$IconDataImageDataProvider.getImageData(IconDataImageDescriptor.java:64)
at org.eclipse.swt.graphics.Image.<init>(Image.java:816)
at com.genuitec.eclipse.code.ui.languages.IconDataImageDescriptor.createImage(IconDataImageDescriptor.java:228)
at org.eclipse.jface.resource.ImageDescriptor.createImage(ImageDescriptor.java:240)
at com.genuitec.eclipse.code.ui.statusbar.OpticonsRenderingLabel.paintControl(OpticonsRenderingLabel.java:90)
at com.genuitec.eclipse.code.ui.statusbar.OpticonsRenderingLabel$1.paintControl(OpticonsRenderingLabel.java:39)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:231)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:86)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4247)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1508)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1531)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1516)
at org.eclipse.swt.widgets.Control.drawWidget(Control.java:1277)
at org.eclipse.swt.widgets.Canvas.drawWidget(Canvas.java:172)
at org.eclipse.swt.widgets.Widget.drawRect(Widget.java:772)
at org.eclipse.swt.widgets.Canvas.drawRect(Canvas.java:166)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:5884)
at org.eclipse.swt.internal.cocoa.OS.objc_msgSendSuper(Native Method)
[…]Note I have also DBeaver installed.
6. After install “welcome screen” destroy Dark Theme on OSX, I had to restart eclipse.
Aaron LaraMember@zulusx Thanks for your awesome feedback! And sorry to hear we aren’t quite 100% there yet.. Our team is actively looking at the issues you described. We will likely pick up a at least a few incremental fixes in an update release coming shortly.
Here some initial thoughts on each of them
0. Regarding editors being taken over, in our last update we cleaned up some preference locations, and it’s likely we missed one during migration. It should not affect you anymore in further updates though. In addition, we now present a tuning panel to easily switch the preferred editor to let all your users who use CodeMix quickly switch back.
1&2. We will take a look at our startup processes to not be that disruptive, so it can let other processes run as well. If you had a simple flow/example project that exemplified this problem, it would be a huge help.
3&4. Regarding our Watcher, this is really important to be responsive as Eclipse’s automatic refresh doesn’t work well when generating/manipulating files from external tools. Anyway, our next improvement in this area would be to be less aggressive about starting ours and give you a way to turn it off if it is automatically turned on. And yes, we will also check for directory permissions, thanks for noticing this as well!
5. Deadlocks, we will check our startup processes don’t lock display. We haven’t noticed this behaviour before.
6. Regarding Welcome Screen destroying Dark Theme in OSX, could you expand on this issue? Do you have any error in log about this? I assume you are talking about regular eclipse Dark theme. It would also help knowing the eclipse version you are testing with so we can replicate.
Thanks!
Aaron Lara
zulusxParticipantDeadlock / startup process probably is provoked by DBEaver when plugin change toolbar items (in UI thread off course) E4 trying to access CodeMix that is during startup.
About Dark theme yes, I’m using standard Eclipse EPP PHP package with built-in Dark theme (osx). After CodeMix install most frames become light on OSX until I restart eclipse.
support-swapnaModeratorDawid,
We just released an update to CodeMix (CI 2018.7.18) which has the fix for the deadlock and the startup problems reported by you.
Please update and let us know how it works for you.
–Swapna
Genuitec Support
zulusxParticipantThank You for info, unfortunately due deadlocks CodeMix was completely useless for me and I had to uninstall it completely.
I tried install and recheck but my license has expired.
Brian FernandesModeratorDawid,
If you PM me your email address, I’ll get your license issues sorted out.
Your feedback was invaluable, would love to hear your thoughts on the experience with the new release.
zulusxParticipantFirst look:
1. Dark Mode problem, still persist (attached screenshot).
2. java.nio.file.AccessDeniedException during startup still here
3. I’m experiencing slow boot, and still have to wait until I’ll be able to write something, looks like CodeMix calculate too much in UIStack Trace
at com.genuitec.eclipse.code.ui.tasks.TasksService.getBuildTaskParticipantFor(TasksService.java:30)
at com.genuitec.eclipse.code.ui.command.CodeBuildHandler.isEnabled(CodeBuildHandler.java:44)
at org.eclipse.ui.internal.handlers.HandlerProxy.isEnabled(HandlerProxy.java:319)
at org.eclipse.ui.internal.handlers.E4HandlerProxy.canExecute(E4HandlerProxy.java:73)
at jdk.internal.reflect.GeneratedMethodAccessor9.invoke(Unknown Source)
at java.base@9.0.4/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base@9.0.4/java.lang.reflect.Method.invoke(Method.java:564)
at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:55)
at org.eclipse.e4.core.internal.di.InjectorImpl.invokeUsingClass(InjectorImpl.java:318)
at org.eclipse.e4.core.internal.di.InjectorImpl.invoke(InjectorImpl.java:252)
at org.eclipse.e4.core.contexts.ContextInjectionFactory.invoke(ContextInjectionFactory.java:161)
at org.eclipse.e4.core.commands.internal.HandlerServiceHandler.isEnabled(HandlerServiceHandler.java:58)
at org.eclipse.core.commands.Command.isEnabled(Command.java:838)
at org.eclipse.e4.core.commands.internal.HandlerServiceImpl.canExecute(HandlerServiceImpl.java:177)
at org.eclipse.e4.core.commands.internal.HandlerServiceImpl.canExecute(HandlerServiceImpl.java:163)
at org.eclipse.ui.internal.menus.MenuHelper$1.evaluate(MenuHelper.java:240)
at org.eclipse.e4.ui.internal.workbench.ContributionsAnalyzer.isCoreExpressionVisible(ContributionsAnalyzer.java:286)
at org.eclipse.e4.ui.internal.workbench.ContributionsAnalyzer.isVisible(ContributionsAnalyzer.java:260)
at org.eclipse.e4.ui.workbench.renderers.swt.ContributionRecord.computeVisibility(ContributionRecord.java:167)
at org.eclipse.e4.ui.workbench.renderers.swt.ContributionRecord.updateVisibility(ContributionRecord.java:98)
at org.eclipse.e4.ui.workbench.renderers.swt.MenuManagerRendererFilter.updateElementVisibility(MenuManagerRendererFilter.java:191)
at org.eclipse.e4.ui.workbench.renderers.swt.MenuManagerRendererFilter.updateElementVisibility(MenuManagerRendererFilter.java:202)
at org.eclipse.ui.internal.WorkbenchWindow$8.run(WorkbenchWindow.java:710)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:37)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:182)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4043)
at org.eclipse.swt.widgets.Display.observerProc(Display.java:3628)
at org.eclipse.swt.internal.cocoa.OS.objc_msgSendSuper(Native Method)
at org.eclipse.swt.widgets.Display.applicationNextEventMatchingMask(Display.java:5138)
at org.eclipse.swt.widgets.Display.applicationProc(Display.java:5562)
at org.eclipse.swt.internal.cocoa.OS.objc_msgSendSuper(Native Method)
at org.eclipse.swt.widgets.Widget.callSuper(Widget.java:232)
at org.eclipse.swt.widgets.Widget.mouseDownSuper(Widget.java:1142)
at org.eclipse.swt.widgets.Tree.mouseDownSuper(Tree.java:2144)
at org.eclipse.swt.widgets.Widget.mouseDown(Widget.java:1134)
at org.eclipse.swt.widgets.Control.mouseDown(Control.java:2639)
at org.eclipse.swt.widgets.Tree.mouseDown(Tree.java:2111)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:5917)
at org.eclipse.swt.internal.cocoa.OS.objc_msgSendSuper(Native Method)
at org.eclipse.swt.widgets.Widget.callSuper(Widget.java:232)
at org.eclipse.swt.widgets.Widget.windowSendEvent(Widget.java:2115)
at org.eclipse.swt.widgets.Shell.windowSendEvent(Shell.java:2411)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:6041)
at org.eclipse.swt.internal.cocoa.OS.objc_msgSendSuper(Native Method)
at org.eclipse.swt.widgets.Display.applicationSendEvent(Display.java:5280)
at org.eclipse.swt.widgets.Display.applicationProc(Display.java:5432)
at org.eclipse.swt.internal.cocoa.OS.objc_msgSend(Native Method)
at org.eclipse.swt.internal.cocoa.NSApplication.sendEvent(NSApplication.java:128)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3710)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1170)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1059)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:153)
at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:667)
at org.eclipse.ui.internal.Workbench$$Lambda$91/1204383532.run(Unknown Source)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:597)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:148)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:388)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:243)
at java.base@9.0.4/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base@9.0.4/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base@9.0.4/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base@9.0.4/java.lang.reflect.Method.invoke(Method.java:564)
at app//org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:656)
at app//org.eclipse.equinox.launcher.Main.basicRun(Main.java:592)
at app//org.eclipse.equinox.launcher.Main.run(Main.java:1498)
4. Another stacktrace was published to genuitec AERI: https://aer.ctrlflow.com/genuitec/reporters/#!/submissions/0hs8U0BJradn40hgBUghuZVjZCBWbVtR3zHFNWRxgkI2Z4I5LkjcYa96T5Kon83T Again Deaver somehow invoked some part of CodeMix stuck, this time during icon generation.
5. After restart, looking for CSS classes in workspace stuck on 99.41% for a long time, I don’t know how to check what is going on
6. I’m experiencing lag during writing even on small vue file (300 lines), heap status growing even if I do nothing. I haven’t such lags with PDT text editorAttachments:
You must be logged in to view attached files.
Brian FernandesModeratorDawid,
I will say that we’ve been working with, and testing, development with CodeMix in such cases, Vue.js included, and can’t reproduce these issues in our tests. Clearly this isn’t the case for your environment, and it is disappointing that the fixes we made did not address these primary problems.
Our team will keep looking at the problem, and we’ll contact you if we need further information, or have a fix. Thank you for providing such immediate feedback on the update, very valuable and much appreciated.
-
AuthorPosts