-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 25 Oct 2009, at 23:30, aharrisreid wrote:

>
> I am very much new to Python, and one of my first projects is a simple
> data-based website.  However, looking to the future, I am
> starting with Python 3.1 (I can hear many of you shouting "don't -
> start with 2.6"), so I need to know - is Pylons compatible with 3.1
> yet.  If not, are plans in the pipeline?


Apart from the WSGI hiatus described by Mike, the Pylons code itself  
is compatible with Python 3.1, however none of the libraries on which  
Pylons depends have been yet been ported to run under 3.1. It's not so  
much a case of an active "plans in the pipeline" but rather a passive  
wait for the 3rd party library authors to implement the ports:

Ports required for Pylons 0.9.7 dependencies:

simplejson
decorator
nose

Routes
WebHelpers
Beaker
Mako
WebError

WebOb
WebTest
Paste
PasteDeploy
PasteScript
FormEncode
Tempita


Coincidentally, I've been pushing 3.1 around this weekend. I  
bootstrapped myself up with a 3.1 environment (virtualenv3, setuptools  
for 3.1, easy_install-3.1, nosetests3) and ran the standard 2to3-3.1  
preprocessor on the dependency libs. Heroically ignoring varying  
degrees of brittleness and failing, erroring tests I was able to  
compile and install them all and did eventually manage to get Paster/ 
Pylons to run and serve the welcome screen.

According to Mike Bayer, SQLAlchemy 0.6 is 3.1 compatible, it uses a  
customized 2to3 preprocessor but it isn't quite an out-of-the-box  
easy_install and the sqlite tests are failing (on my set-up at least).

I'm not sure why the general migration to 3.1 is going so slowly given  
that many people seem very keen to get max speed.

3.1 is quicker than 2.6.1 for me. I'm seeing 1.50 usec/pass from  
Python 3.1 and 2.21 usec/pass from Python 2.6.1 when this trivial  
example is executed from within a TextMate buffer on my intel PowerBook:

import timeit
s = """\
try:
     str.__bool__
except AttributeError:
     pass
"""
t = timeit.Timer(stmt=s)
print("%.2f usec/pass" %
      (1000000 * t.timeit(number=100000)/100000))


1.50 usec/pass vs 2.21 usec/pass is worth having IMO.

Cheers,

Graham

http://www.linkedin.com/in/ghiggins




-----BEGIN PGP SIGNATURE-----

iEYEARECAAYFAkrlWxgACgkQOsmLt1NhivxXnACgoOAel1htC6HKCD4NPpY696mJ
C8oAoN0aBmrWy8TOekq9D00ObvJsVzH+iQCVAgUBSuVbGFnrWVZ7aXD1AQJAJgP/
aVRYO7KmLXldUhTOHiCKgTajlViY2WnkuQaEsCjbo3cAojPQVQ8hnrNHX2nb1rsG
zA9fCH72OQZRmPlk/dJYziaiUHXyM+c1kob58HMLbRBAU/zue+z1adq808iKNu9R
XoJMLqN9VQeF1oax9PTE0EfSVTh/dBnuRaek/crvOY4=
=dBAI
-----END PGP SIGNATURE-----


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"pylons-discuss" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/pylons-discuss?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to