Week in review
Here are the highlights of Django improvements this past week:
- Revision 1068: Added internationalization support! See the related blog entry and documentation. Many thanks to Hugo for this one.
- Revision 1035: Added support for "expires" in cookies. Thanks to mark at junklight dot com.
- Revision 1036: "contains", "startswith" and "endswith" are now case-sensitive in MySQL. Thanks to Simon Willison.
- Revision 1037: The "ssi" template tag now displays an error message instead of failing silently, if the DEBUG setting is set to True. Thanks to Manuzhai.
- Revision 1092: Added a "list_select_related" option to meta.Admin(). It specifies to use select_related in the change-list query. See the docs.
- Revision 1097: The "prepopulate_from" option now does the Right Thing with funky characters that can't be in URLs: It removes 'em. Thanks to ozamosi.
- Revision 1099: Made the session-data unpickler fault-tolerant, in case of funky pickled data. Thanks to kieranholland.
- Revision 1106: Made e-mail address validation much more strict and accurate. Thanks to Peter Havens for digging up the monstrous, awe-inspiring regex.
- Revision 1115: Added DATE_FORMAT, DATETIME_FORMAT and TIME_FORMAT settings, which let you specify how dates in the Django admin should be formatted. Thanks to Manuzhai again.
- Revision 1119: Site objects are now editable in the admin.
In other Django news:
- Ian Holsman wrote a piece of middleware that lets you hook into Apache's authentication to set the user in any Django app.
- Yet another Django development job in the Real World got filled. Congrats to Matt Croydon for his new gig at World Online, writing Django apps on a daily basis.
- And congrats to the folks at grono.net, a 420,000-user social-networking portal in Poland, which began its switch from Java to Django and has been thrilled with the result. Look for a detailed writeup on this soon.
- Hugo's been working on a test framework for Django.
- Luke Plant wrote CsrfMiddleware -- simple Cross Site Request Forgery protection. Chances are, this'll get included within Django core sooner rather than later.