Hi again!

I now have a follow-up, but this time on versions of Python to support.

In the work I am doing[1] updating the pydevconsole I was testing my changes against older versions of Python. IPython currently requires Python 2.6+ or 3.2+ and this will be the minimum versions required for the new features. During testing I tried using Python 2.1.3 (built from source on Ubuntu 12.04 64-bit) and the console does not work[2]. 

My question therefore is: What is the minimum required versions of Python (et al) that PyDev should support going forward?

I suppose this may be a question for PyDev 3+ and that PyDev should continue to support the oldest possible version.


[1] I am doing further work on GUI event loops and deeper integration of IPython
[2] xmlrpc was not part of 2.1, so pydev uses the local version, but this is the error we get:
Error stream: Traceback (most recent call last):
  File "/scratch/pydev/Pydev/plugins/org.python.pydev/pysrc/pydevconsole.py", line 21, in ?
    from pydev_imports import SimpleXMLRPCServer, Queue
  File "/scratch/pydev/Pydev/plugins/org.python.pydev/pysrc/pydev_imports.py", line 7, in ?
    import _pydev_xmlrpclib as xmlrpclib
  File "/scratch/pydev/Pydev/plugins/org.python.pydev/pysrc/_pydev_xmlrpclib.py", line 159, in ?
    _bool_is_builtin = False.__class__.__name__ == "bool"
AttributeError: 'int' object has no attribute '__class__'

On 23 August 2013 09:46, Jonah Graham <jonah@kichwacoders.com> wrote:
Hi Fabio,

I like your conclusion, especially regarding PyDev 3 vs 2 for the breakage. 

As for apache commons code, for now that is fine. If I come up with a specific and strong enough need I will re-raise it. I was aware that you had spent considerable time writing good quality utility code and don't want to get rid of any of that. (Perhaps, when you find that elusive free time ;-), you can improve the apache commons join for everyone.

(Out of curiosity, will there be a major feature set change to go along with the version change?)

Thanks, and looking forward to PyDev 3.0!

On 22 August 2013 18:13, Fabio Zadrozny <fabioz@esss.com.br> wrote:
Hi Jonah,

Ok, the poll (http://pydev.blogspot.com.br/2013/08/pydev-poll-about-minimum-javaeclipse.html) has been around for some time already, and it seems the major issue there would be support for older versions of Mac OS, where java can't be upgraded...

Anyways, I think that given the feedback, going forward to support only Java 7 and Eclipse 3.7 onwards is what we should look at...

Still, I think that this breakage should be pretty visible, so, I'd like to keep PyDev 2.x releases based on the current dependencies and go forward to breaking the dependency in PyDev 3.

The idea would be stabilizing and doing one more release on PyDev 2, creating a branch to keep it going, doing one more bugfix-only release from that branch and then creating PyDev 3 where we can start targeting Eclipse 3.7 onwards and Java 7.

Regarding the apache commons, I took a (rather quick) look at it and I don't think they replace all that's used in the PyDev StringUtils... and in some cases (i.e.: StringUtils.join), their implementation seems to be considerably slower than the current PyDev implementation which was pretty optimized, so, I'm a little wary about making that replacement... 

As for adding the apache commons, I'd like to know if you have specific things you'd like to use (if it's just one or 2 utility classes, I'm not sure it's worth the extra weight -- in that case, as their license allows, it may be worth just copying those classes).



On Wed, Aug 7, 2013 at 9:18 PM, Fabio Zadrozny <fabioz@esss.com.br> wrote:
Hi Jonah,

I'll do the following: I'll create a blog entry to ask people what they think about... personally, I think going forward is nice, but I'd like to check with the current user base if that's an issue... (at a time I know Mac OS users had problems updating to more recent versions of Java, and Eclipse 3.2 was the version used by Aptana Studio 2, but I don't think it has to be supported anymore).

So, I'll ask users to be able to give you feedback :)



On Wed, Aug 7, 2013 at 11:48 AM, Jonah Graham <jonah@kichwacoders.com> wrote:

I know that PyDev officially supports Eclipse 3.2+[1]/Java 6+ (or
5?)[2], however I would like to use some features of Java 7 (e.g.
java.nio stuff). In addition I would love to be able to use various
apache commons stuff (e.g. StringUtils[3]).

What are the issues/(other?) with supporting older versions of Eclipse/Java/etc?


[1] There is a little bit of code with correct try/catch in
PydevPlugin for supporting Eclipse 4+ if it is available.
[2] On http://pydev.org/download.html it states Jave 6+ (Java 7
recommended), but on http://pydev.org/developers.html for developers
the request is still Java 5 API?
[3] If PyDev did become dependent on apache commons, then I could go
and remove the (then) redundant code in PyDev's StringUtils?

Get 100% visibility into Java/.NET code with AppDynamics Lite!
It's a free troubleshooting tool designed for production.
Get down to code-level detail for bottlenecks, with <2% overhead.
Download for free and get started troubleshooting in minutes.
pydev-code mailing list

Introducing Performance Central, a new site from SourceForge and
AppDynamics. Performance Central is your source for news, insights,
analysis and resources for efficient Application Performance Management.
Visit us today!

pydev-code mailing list