Porting Django apps to Python 3
summary
Django 1.5 adds Python 3 support and Django 1.6 declares it stable; migration strategy uses single-source Python‑3-first code with shims (six, django.utils.encoding) rather than two separate codebases and 2to3. Case studies: a Python‑3-only site (python.org preview) costs about 20% extra time but ships; a reusable app (django-sitetree) ports with a single commit. Use tox for test matrix, prefer Postgres, deploy with mod_wsgi/uwsgi or Gunicorn; many popular packages already port or have alternatives.
AI-written summary · about
chapters (11)
- 0:00Introduction
- 1:15Python 3 Support
- 7:05Databases
- 9:00Deployment
- 10:27Django 3rd party dependencies
- 17:45Python 3 only
- 27:03Django dependencies
- 31:07Writing tests
- 34:07Cost
- 36:22Single app
- 39:52Running tests
related talks
26mPython 2 is dead! Drag your old code into the modern age
41mPorting a Project from Python 2 to 3
33mTransitioning from PHP to Django on the sly
43mPython 3: ten years later
31mPython 3 for People Who Haven't Been Paying Attention
45m"It will be easy" - The Trials of Updating a Product from Python 2 to 3
36mA Python Takeover
45mWriting Python 2/3 compatible code
