Thread: [Pydev-code] Introduction to PyDev list
Brought to you by:
fabioz
From: Raul F. H. <ra...@em...> - 2008-11-24 13:30:50
|
Hi, I'm working on *Maemo Eclipse Integration* project ( http://maemo.org/development/documentation/ide_integration/) which provides ESbox (http://esbox.garage.maemo.org) and PluThon ( http://pluthon.garage.maemo.org) Eclipse plug-ins for developing maemo ( http://www.maemo.org) applications with C/C++ and Python. For Python support, we use PyDev plug-in as base for providing features which help Python developers to implement interesting applications for maemo platform. So far, we have implemented some important, but not too complex features on ESbox/PluThon based on PyDev. Now, we are facing difficulties to provide additional functionalities (e.g, suitable PyDev interpreter configurators), because PyDev does not offer extension points to extend some functionalities, it has some restrictions on classes/methods/attributes and other issues. As an outcomer on this list, I do not want to show a lack of respect for your good work :) Please, point me to any task or keep me away from any developing work. I'll spend part of my time to look for problems and solutions on PyDev. In addition, I'll often send reports to this list in order discuss some possible solutions and add-ons we would like to develop for PyDev with tracks in Bugzilla and patches as well. Best regards, --Raul. -- Raul Fernandes Herbster Embedded and Pervasive Computing Laboratory - http://embedded.ufcg.edu.br in cooperation with Nokia Institute of Tecnology - http://indt.org.br/ |
From: Fabio Z. <fa...@gm...> - 2008-11-25 20:50:36
|
Hi Raul, > Hi, > > I'm working on Maemo Eclipse Integration project > (http://maemo.org/development/documentation/ide_integration/) which provides > ESbox (http://esbox.garage.maemo.org) and PluThon > (http://pluthon.garage.maemo.org) Eclipse plug-ins for developing maemo > (http://www.maemo.org) applications with C/C++ and Python. For Python > support, we use PyDev plug-in as base for providing features which help > Python developers to implement interesting applications for maemo platform. > > So far, we have implemented some important, but not too complex features on > ESbox/PluThon based on PyDev. Now, we are facing difficulties to provide > additional functionalities (e.g, suitable PyDev interpreter configurators), > because PyDev does not offer extension points to extend some > functionalities, it has some restrictions on classes/methods/attributes and > other issues. Sorry, but I didn't exactly understand what you need in this area... If you want you can change/implement what you need and send as patches so that we can discuss on those. Also, just so that you know, not in the next release (which should add support for python 3.0 and 2.6), but in the other, there are plans to change the interpreter configuration quite a bit (to have per-project settings and the ability to specify environment variables for each interpreter). > > As an outcomer on this list, I do not want to show a lack of respect for > your good work :) Please, point me to any task or keep me away from any > developing work. > > I'll spend part of my time to look for problems and solutions on PyDev. In > addition, I'll often send reports to this list in order discuss some > possible solutions and add-ons we would like to develop for PyDev with > tracks in Bugzilla and patches as well. I'll be waiting for those ;-) Cheers, Fabio |
From: Raul F. H. <ra...@em...> - 2008-11-27 19:27:47
|
Hi, On Tue, Nov 25, 2008 at 5:50 PM, Fabio Zadrozny <fa...@gm...> wrote: > Hi Raul, > > > Hi, > > > > I'm working on Maemo Eclipse Integration project > > (http://maemo.org/development/documentation/ide_integration/) which > provides > > ESbox (http://esbox.garage.maemo.org) and PluThon > > (http://pluthon.garage.maemo.org) Eclipse plug-ins for developing maemo > > (http://www.maemo.org) applications with C/C++ and Python. For Python > > support, we use PyDev plug-in as base for providing features which help > > Python developers to implement interesting applications for maemo > platform. > > > > So far, we have implemented some important, but not too complex features > on > > ESbox/PluThon based on PyDev. Now, we are facing difficulties to provide > > additional functionalities (e.g, suitable PyDev interpreter > configurators), > > because PyDev does not offer extension points to extend some > > functionalities, it has some restrictions on classes/methods/attributes > and > > other issues. > > Sorry, but I didn't exactly understand what you need in this area... > If you want you can change/implement what you need and send as patches > so that we can discuss on those. Also, just so that you know, not in > the next release (which should add support for python 3.0 and 2.6), > but in the other, there are plans to change the interpreter > configuration quite a bit (to have per-project settings and the > ability to specify environment variables for each interpreter). Good news Fabio :) In fact, what I need is a per-project settings for Python interpreter (for example, define the Python interpreter for a project, not for the workspace) and also extension points to insert PythonInterpreterManagers... this maybe sound strange, but I have the following problem: *Modules, types, etc. of a certain python interpreter are obtained by running the script on host PC. But, if I want to obtain information about a certain Python interpreter on a sandboxed environment? Or on a remote device? I need to run this script on different environments and get the information to be used on PyDev (on host PC) code indexing and auto-complete features, for example. Currently, we have two Python interpreter managers (PythonInterpreterManager and JythonInterpreterManager), which are set on PydevPlugin#start(...) *How these changes impacts on current Pydev structure? []'s --Raul |
From: Fabio Z. <fa...@gm...> - 2008-11-27 22:03:04
|
> Good news Fabio :) In fact, what I need is a per-project settings for Python > interpreter (for example, define the Python interpreter for a project, not > for the workspace) and also extension points to insert > PythonInterpreterManagers... this maybe sound strange, but I have the > following problem: > Modules, types, etc. of a certain python interpreter are obtained by running > the script on host PC. But, if I want to obtain information about a certain > Python interpreter on a sandboxed environment? Or on a remote device? I need > to run this script on different environments and get the information to be > used on PyDev (on host PC) code indexing and auto-complete features, for > example. Currently, we have two Python interpreter managers > (PythonInterpreterManager and JythonInterpreterManager), which are set on > PydevPlugin#start(...) > > How these changes impacts on current Pydev structure? Well, the changes are not trivial. I still haven't started checking all that's needed for the per-project settings, but it should be available in about 2 releases (so, you don't need to worry much about that one). As for gathering additional information from an environment not available (which is actually a thing that came up recently), the current solution is having a script that'll run in that environment and have it generate python files (just with the basic structure: modules, classes, methods and docstrings) and add them as if they were files in the pythonpath (adding it to a zip file may also be nice if you're having different versions). Would that suffice for what you want? (as you'd need to create a script to gather that info someway anyway, you might as well already make it in a format that pydev already supports) Cheers, Fabio |
From: Raul F. H. <ra...@em...> - 2008-11-28 14:56:25
|
Hi, Well, the changes are not trivial. I still haven't started checking > all that's needed for the per-project settings, but it should be > available in about 2 releases (so, you don't need to worry much about > that one). And would it be possible to add an extension point to add python interpreters managers? :) > As for gathering additional information from an environment > not available (which is actually a thing that came up recently), the > current solution is having a script that'll run in that environment > and have it generate python files (just with the basic structure: > modules, classes, methods and docstrings) and add them as if they were > files in the pythonpath (adding it to a zip file may also be nice if > you're having different versions). Hum... in fact, this solves problems of auto-complete and code indexing. But, we still have a point: on PyDev, whenever a Python interpreter is selected (using the Python Interpreter dialog, which it is accessible through Window -> Preferences), it runs the script on local environment. So I cannot set it as the current Python interpreter. > Would that suffice for what you > want? (as you'd need to create a script to gather that info someway > anyway, you might as well already make it in a format that pydev > already supports) This solves auto-complete and code indexing, but I still need to define a local Python interpreter on preferences, which does not correspond with the correct one. []'s --Raul |
From: Fabio Z. <fa...@gm...> - 2008-12-03 00:14:56
|
>> Well, the changes are not trivial. I still haven't started checking >> all that's needed for the per-project settings, but it should be >> available in about 2 releases (so, you don't need to worry much about >> that one). > > And would it be possible to add an extension point to add python > interpreters managers? :) Probably... > >> >> As for gathering additional information from an environment >> not available (which is actually a thing that came up recently), the >> current solution is having a script that'll run in that environment >> and have it generate python files (just with the basic structure: >> modules, classes, methods and docstrings) and add them as if they were >> files in the pythonpath (adding it to a zip file may also be nice if >> you're having different versions). > > Hum... in fact, this solves problems of auto-complete and code indexing. > But, we still have a point: on PyDev, whenever a Python interpreter is > selected (using the Python Interpreter dialog, which it is accessible > through Window -> Preferences), it runs the script on local environment. So > I cannot set it as the current Python interpreter. > >> >> Would that suffice for what you >> want? (as you'd need to create a script to gather that info someway >> anyway, you might as well already make it in a format that pydev >> already supports) > > This solves auto-complete and code indexing, but I still need to define a > local Python interpreter on preferences, which does not correspond with the > correct one. How exactly would you run that script from your computer (not considering pydev for that... how'd you do it from the command line?) Cheers, Fabio |
From: Raul F. H. <ra...@em...> - 2008-12-03 20:38:24
|
Hi, > > >> > >> As for gathering additional information from an environment > >> not available (which is actually a thing that came up recently), the > >> current solution is having a script that'll run in that environment > >> and have it generate python files (just with the basic structure: > >> modules, classes, methods and docstrings) and add them as if they were > >> files in the pythonpath (adding it to a zip file may also be nice if > >> you're having different versions). > > > > Hum... in fact, this solves problems of auto-complete and code indexing. > > But, we still have a point: on PyDev, whenever a Python interpreter is > > selected (using the Python Interpreter dialog, which it is accessible > > through Window -> Preferences), it runs the script on local environment. > So > > I cannot set it as the current Python interpreter. > > > >> > >> Would that suffice for what you > >> want? (as you'd need to create a script to gather that info someway > >> anyway, you might as well already make it in a format that pydev > >> already supports) > > > > This solves auto-complete and code indexing, but I still need to define a > > local Python interpreter on preferences, which does not correspond with > the > > correct one. > > How exactly would you run that script from your computer (not > considering pydev for that... how'd you do it from the command line?) > For maemo applications, we need to run commands on Scratchbox, using the command "/scratchbox/login <command>". In addiction, we can execute this command also on a remote environment throught ssh (ssh user@X.X.X.Xpython2.5 ...) []'s --Raul |
From: Fabio Z. <fa...@gm...> - 2008-12-05 01:30:06
|
> For maemo applications, we need to run commands on Scratchbox, using the > command "/scratchbox/login <command>". In addiction, we can execute this > command also on a remote environment throught ssh (ssh user@X.X.X.X > python2.5 ...) Given that, how are you planning to make Pydev run that interpreter from within eclipse? Don't you feel it's easier to create an executable that runs things as if it was a local version of python.exe and gathers things from the actual remote interpreter? (making a custom interpreter won't actually solve the problem of how to execute things remotely... the execution part is pretty much separated from the interpreter configuration -- not that it can't be done, but I'm not sure it's worth it). Cheers, Fabio |