Hi,
I am one such author and I wanted to share my experience. I have ported my code and test suites for 3 applications to run on Django 1.3-1.5dev and Python 2.6, 2.7 and 3.2 (1.5dev only).
have many users/active deployments and so made good candidates for this work.
For the most part these were fairly easy to port. Adding unicode_literals everywhere was most of the work. There were a few places where I needed to make use of django.utils.six.
If you are trying to support Django 1.4 then you can't really use this recommendation without backporting the decorator because of the way it was written to be no-op for
Python 3 rather than Python 2. I understand why this decision was made and in the long run it is the right decision. For now I think app maintainers will have a bit of pain without
some of these features being backported to a 1.4.X release. You do have the option of using the hack you referenced (which I am doing) or a similar conditional import
along with conditional __str__/__unicode__ which this decorator was meant to avoid. It's certainly not hard to do but it feels dirty.
My work now has been focused on getting the tests to pass and now they do. Another piece will be to actually deploy a project using one of these app.
I'll be continuing to do this work while at DjangoCon and I'll happily chime in any other stumbling blocks I run into while I port some other larger applications.
Best,
Mark