Can you use the `@wraps` format here? Also, please use `@wraps(fn, assigned=available_attrs(fn))` to not fall into the trap of http://bugs.python.org/issue3445? It's needed to have consistent behavior when wrapping methods (instead of functions). `available_attrs` can be found in `django.utils.decorators.available_attrs`