Django sprint wrap (for me)
I don’t know whether anyone else is going to continue on for the rest of the night, but I’m exhausted and I’ve got to be at work in the morning.
Today, for me, consisted of reading every open ticket in Trac and doing as much triage as I could; a lot of duplicates got closed, a lot of similar issues got consolidated, a lot of ancient tickets which have either been fixed or invalidated were marked as such.
Some highlights of the last 36 hours:
- Contenttypes documentation was added.
Models grew a
pkproperty which always reads/sets the field designated the primary key for the model.
Forms gained an
is_multipart()method for detecting whether you need to mark them as such in your HTML (in order to handle file uploads).
never_cachedecorator is now documented.
- The documentation for authenticating against Django from mod_python was updated with a recipe for Apache 2.2.
- The auth system now uses hashlib when available to do password checks.
A Peruvian “localflavor” module was added (
django.contrib.localflavorcontains locale-specific form and validation utilities).
And the big one: sessions now use configurable backends for persistence, with a file-based store and a cache-based store included in addition to the original database-backed one. There’s still tuning to be done there, but once it’s humming along this will allow high-traffic sites to see some significant performance improvements by moving away from the DB-backed sessions store.
Fredrik had a script scraping Django’s Trac regularly throughout the sprint, and posted these final numbers when I told him I’d triaged the last open ticket:
- 237 commits
- 413 tickets closed
- 1152 tickets edited
- 226 wiki changes
- 297 new attachments in Trac
- 120 new tickets
- 2445 total changes
We really ought to do this more often.
Post fun sprint stories in the comments if you’ve got ‘em, or your favorite improvement/bugfix; with that many changes going on, I know there’s interesting stuff I didn’t see as it flew by on the timeline :)