On Mar 26, 2009, at 10:34 AM, andrew cooke wrote:

Philip Semanchuk wrote:
Hi all,
I'm about to start a new job at which I and others will build a
project largely in Python. I'm trying to figure out which Python
versions to use and support. I can't use Python 3.x, but I want to
prepare for it even if it is a long way off yet.

My idea is to use Python 2.6 on my development box and 2.4/2.5 on the
test machines. This would allow me to use the -3 switch on my machine
so that I keep the code relatively free of features unsupported or
deprecated in 3.x. It will also ensure that I write code backwards
compatible with older Python versions.

Does this sound sane?

i don't know the details of your constraints (what libs require 2.5 rather
than 2.6, for example).

Thanks for your thoughts, Andrew. Should I expect many 2.5-compatible libs to have trouble with 2.6?


 what you say makes sense only if you need to be
compatible with 2.4/2.5. if so, you'll find it quite tricky to produce code that is compatible across all versions - you will effectively end up
using the subset of python that is common across 2.4 to 3.

Well, right now I only need to make code that's compatible with 2.x. We need to support older versions or Python because I doubt many of our prospective users are running 2.6, and few of them will ever become users (or code contributors) if we raise the barriers too high. I think supporting as far back as 2.4 is a reasonable compromise.

I certainly agree that writing code that's compatible across 2.4 - 3.x would be awkward. Fortunately that's not my plan. I just want to leverage the -3 switch on Python 2.6 to keep an eye on how many 3.x- incompatible features I'm using. Some will be unavoidable -- print versus print() comes to mind -- but ideally when the time comes to support 3.x, we can just run 2to3 and be done.


note - my experience is with taking 3.0 code and trying to make it run on 2.6 (easy) and 2.5 (hard). i guess it is possible things are easier if
you start out with all 3 in mind.

Thanks; it's good to hear from someone who's "been there".

Cheers
Philip



My constraints:
- Need to support Linux and Windows
- I'll be developing under OS X (thank you VirtualBox!)
- Using wxPython, scipy, numpy, SWIG
- Code will eventually be open sourced

Thanks
Philip
--
http://mail.python.org/mailman/listinfo/python-list





--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to