summaryrefslogtreecommitdiffstats
path: root/Lib/functools.py
diff options
context:
space:
mode:
Diffstat (limited to 'Lib/functools.py')
-rw-r--r--Lib/functools.py4
1 files changed, 4 insertions, 0 deletions
diff --git a/Lib/functools.py b/Lib/functools.py
index 89f2cf4..0873f20 100644
--- a/Lib/functools.py
+++ b/Lib/functools.py
@@ -432,6 +432,10 @@ def _make_key(args, kwds, typed,
saves space and improves lookup speed.
"""
+ # All of code below relies on kwds preserving the order input by the user.
+ # Formerly, we sorted() the kwds before looping. The new way is *much*
+ # faster; however, it means that f(x=1, y=2) will now be treated as a
+ # distinct call from f(y=2, x=1) which will be cached separately.
key = args
if kwds:
key += kwd_mark