Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Optimize ensure_str and ensure_binary. (benjaminp#331)
We found that large applications that have undergone a 2 -> 3 migration and wound up with a lot of six.ensure_str and six.ensure_binary calls could save 1-2% CPU usage by optimizing these for the common case. Further optimization could be done by replacing them with extension module implementations - assumed out of scope for the pure Python six project itself. Ideally all of these calls and use of six in people's code would be removed after there all need for any Python 2 compatibility is gone. But completing that kind of type cleanup requires a lot of human engineering time. This lowers the ongoing costs in the interim. Contributed by YouTube.
- Loading branch information