Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

FYI, the "experimental" thing is a community thing, not really a technical judgement. Since this is our first Python 3 release, we want to have some space to make changes between 1.5 and 1.6 that we otherwise would avoid because of our strong backwards compatibility promise. The "experimental" label is about giving ourselves that room and not surprising users if there do have to be changes in the way Py3 support works between 1.5 and 1.6.

Technically, however, it's pretty rock-solid. I'll be launching a site built on Py3/1.5 is about two weeks, and aside from constantly forgetting to `print(...)` instead of `print ...` it's been surprisingly smooth sailing.



Have you found any of the third-party Django extensions to be catching up? I'm starting a new project and would love to just start with Python3, but there are a few packages I depend on: South, lxml, pytz, simplejson, requests, django-compressor, gunicorn, jinja2, twisted, txAMQP, and django-rest-framework (amongst some other utilities actually used for development).

It would sure be great to have a list of django sub-projects and their Python3 status.

Regardless, even if we start with Python2.7 and bump up to 3.3 in a few months, this is a great step!


Of your list:

* South doesn't have Py3 support in core, but there's a fork that does and seems to work perfectly: https://bitbucket.org/aaugustin/south-python3

* lxml as of v3 seems to have py3 support (I haven't tried it, but looks like it does).

* simplejson is now in the standard library as "json", so yes there.

* requests works, since v0.10 (about a year ago).

* django-compressor is not ported; however, django-pipeline does run on Python 3 and is basically -compressor's successor. It works great.

* gunicorn works on py3 (as does uwsgi and mod_wsgi, btw.)

* jinja2 hasn't been ported yet.

* twisted is actively being ported right now, and has gotten to the point of "kinda working". You can follow along at http://twistedmatrix.com/trac/milestone/Python-3.x and http://twistedmatrix.com/trac/wiki/Plan/Python3.

* txAMQP probably can't get ported until twisted does.

* django-rest-framework has Python 3 support, I think it's fairly recent, but it works well.

This list is about typical of what I've found doing Django/Py3 work: many things are ported, a bunch more have good alternatives, and a few things are still missing.


Off the top of my head: lxml, pytz, simplejson (as json in the stdlib), requests and jinja2 work already. Twisted has someone working on Python 3 support. The others I don't know about.


That is great to hear. I am learning with Py3 and would love to use Django with it.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: