[Pydev-code] Upgrade to PyDev 4.5 floods console with exceptions when com.pydev plugins are present
Brought to you by:
fabioz
From: Mark L. <mid...@ve...> - 2016-01-19 16:47:50
|
My RCP app was using http://pydev.org/updates for PyDev, which was upgraded yesterday (I think) from PyDev 4.4 to 4.5. I'm using 4.4 now after switching to https://dl.bintray.com/fabioz/pydev/all/, but I'd like to run with 4.5, and I have a problem with it. When I launch the app, the console gets flooded with numerous instances of the stack trace below. The line of my code that leads to the exception (MidasActivator line 339) is this IInterpreterManager manager = ... manager.setInfos(new IInterpreterInfo[] {xmpyInterp}, null, new NullProgressMonitor()); I'm updating the python interpreter there after adding a pypredef location. This doesn't happen in PyDev 4.4. Also it doesn't happen in PyDev 4.5 if I omit the com.python.pydev plug-ins from my product (specifically com.python.pydev.analysis). In that case, I get an NPE when PyDev checks if the interpreters are synced with the environment. I can prevent that exception my implementing a contribution to extension org.python.pydev.pydev_interpreter_info_builder which does nothing. So I don't know if I've got something in my code that is incompatible with PyDev 4.5, or is implementing an info builder extension that does nothing the expected pattern? I would think that including the com.python.pydev plug-ins is expected, in whch case I need to figure out why I get exceptions when I do. !ENTRY org.python.pydev.shared_core 4 4 2016-01-19 11:24:53.650 !MESSAGE Did not expect to find item below node: Assign[targets=[Name[id=this, ctx=Store, reserved=false]], value=null] (module: __init__.py). !STACK 0 java.lang.RuntimeException: Did not expect to find item below node: Assign[targets=[Name[id=this, ctx=Store, reserved=false]], value=null] (module: __init__.py). at org.python.pydev.core.log.Log.log(Log.java:54) at org.python.pydev.parser.fastparser.FastDefinitionsParser.endScopesInStack(FastDefinitionsParser.java:589) at org.python.pydev.parser.fastparser.FastDefinitionsParser.handleNewLine(FastDefinitionsParser.java:380) at org.python.pydev.parser.fastparser.FastDefinitionsParser.extractBody(FastDefinitionsParser.java:249) at org.python.pydev.parser.fastparser.FastDefinitionsParser.parse(FastDefinitionsParser.java:676) at com.python.pydev.analysis.additionalinfo.AbstractAdditionalTokensInfo.addAstInfo(AbstractAdditionalTokensInfo.java:310) at com.python.pydev.analysis.additionalinfo.AbstractAdditionalInfoWithBuild.restoreInfoForModuleManager(AbstractAdditionalInfoWithBuild.java:258) at com.python.pydev.analysis.additionalinfo.AdditionalSystemInterpreterInfo.recreateAllInfo(AdditionalSystemInterpreterInfo.java:179) at com.python.pydev.analysis.additionalinfo.builders.InterpreterObserver.notifyDefaultPythonpathRestored(InterpreterObserver.java:35) at org.python.pydev.ui.interpreters.AbstractInterpreterManager.restorePythopathForInterpreters(AbstractInterpreterManager.java:726) at org.python.pydev.ui.interpreters.AbstractInterpreterManager.setInfos(AbstractInterpreterManager.java:643) at gov.midas.ide.ui.MidasActivator.configurePydevPredfinedCompletion(MidasActivator.java:339) at gov.midas.ide.ui.MidasActivator.start(MidasActivator.java:109) at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:771) at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:1) at java.security.AccessController.doPrivileged(Native Method) at org.eclipse.osgi.internal.framework.BundleContextImpl.startActivator(BundleContextImpl.java:764) at org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:721) at org.eclipse.osgi.internal.framework.EquinoxBundle.startWorker0(EquinoxBundle.java:941) at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.startWorker(EquinoxBundle.java:318) at org.eclipse.osgi.container.Module.doStart(Module.java:571) at org.eclipse.osgi.container.Module.start(Module.java:439) at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1582) at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1562) at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1533) at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1476) at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1) at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340) |