Re: [Pydev-code] Python versions to support (was: Re: Java 7 and Apache Commons)
Brought to you by:
fabioz
From: Fabio Z. <fa...@es...> - 2013-08-24 11:57:37
|
On Sat, Aug 24, 2013 at 7:33 AM, Jonah Graham <jo...@ki...>wrote: > Hi again! > Hi Jonah :) > 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. > I think that the core PyDev (i.e.: code analysis, code-completion, editor, etc) should support at least Jython 2.1+ and Python 2.4+. Now, if there are advanced features which require more current versions of Python to work, I don't think this is a big issue. So, related to the shell, I think the basic features should work with those same versions, but if there are advanced features that require 2.6+ (such as an advanced IPython integration) I think this is Ok. Now, related to the features you're adding, I think it's Ok to require IPython, but if it's not available on the system, the shell should still work for users that don't want to install IPython (i.e.: the current Qt/wx integration should probably be kept working without needing IPython). Cheers, Fabio p.s.: Related to the PyDev 3 feature-set, I think the main thing at this point will be the way that PyDev deals with the configured interpreter (which is the most voted feature at this point: https://sw-brainwy.rhcloud.com/tracker/PyDev/80) and probably virtualenv support, but PyDev development is very incremental, so, even things still added on PyDev 2.x (such as the recent code-completion based on types) could probably be enough for raising the version. > Thanks > Jonah > > [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 <jo...@ki...> 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! >> Jonah >> >> >> On 22 August 2013 18:13, Fabio Zadrozny <fa...@es...> 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). >>> >>> Cheers, >>> >>> Fabio >>> >>> On Wed, Aug 7, 2013 at 9:18 PM, Fabio Zadrozny <fa...@es...>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 :) >>>> >>>> Cheers, >>>> >>>> Fabio >>>> >>>> >>>> >>>> >>>> On Wed, Aug 7, 2013 at 11:48 AM, Jonah Graham <jo...@ki...>wrote: >>>> >>>>> Hello, >>>>> >>>>> 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? >>>>> >>>>> Thoughts/comments? >>>>> Thanks, >>>>> Jonah >>>>> >>>>> [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. >>>>> >>>>> http://pubads.g.doubleclick.net/gampad/clk?id=48897031&iu=/4140/ostg.clktrk >>>>> _______________________________________________ >>>>> pydev-code mailing list >>>>> pyd...@li... >>>>> https://lists.sourceforge.net/lists/listinfo/pydev-code >>>>> >>>> >>>> >>> >>> >>> ------------------------------------------------------------------------------ >>> 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! >>> >>> http://pubads.g.doubleclick.net/gampad/clk?id=48897511&iu=/4140/ostg.clktrk >>> >>> _______________________________________________ >>> pydev-code mailing list >>> pyd...@li... >>> https://lists.sourceforge.net/lists/listinfo/pydev-code >>> >>> >> > > > ------------------------------------------------------------------------------ > 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! > http://pubads.g.doubleclick.net/gampad/clk?id=48897511&iu=/4140/ostg.clktrk > _______________________________________________ > pydev-code mailing list > pyd...@li... > https://lists.sourceforge.net/lists/listinfo/pydev-code > > |