summaryrefslogtreecommitdiffstats
path: root/Lib/functools.py
Commit message (Collapse)AuthorAgeFilesLines
* bpo-32227: functools.singledispatch supports registering via type ↵Łukasz Langa2017-12-111-1/+17
| | | | annotations (#4733)
* bpo-31581: Reduce the number of imports for functools (GH-3757)INADA Naoki2017-09-301-5/+8
|
* bpo-31370: Remove support for threads-less builds (#3385)Antoine Pitrou2017-09-071-7/+1
| | | | | | * Remove Setup.config * Always define WITH_THREAD for compatibility.
* Conceptually, roots is a set. Also searching it as a set is a tiny bit ↵Raymond Hettinger2017-09-051-1/+1
| | | | faster (#3338)
* Add comment to explain the implications of not sorting keywords (#3331)Raymond Hettinger2017-09-051-0/+4
| | | In Python 3.6, sorted() was removed from _make_key() for the lru_cache and instead rely on guaranteed keyword argument order preservation. This makes keyword argument handling faster but it also causes multiple callers with a different keyword argument order to be cached as separate items. Depending on your point of view, this is either a performance regression (increased number of cache misses) or a performance enhancement (faster computation of keys).
* mergeRaymond Hettinger2017-01-091-4/+3
|\
| * Issue #29203: functools.lru_cache() now respects PEP 468Raymond Hettinger2017-01-091-4/+3
| |
* | Issue #28991: Address comment that the __len__ call looked unattractiveRaymond Hettinger2016-12-161-3/+4
|/
* mergeRaymond Hettinger2016-12-161-2/+4
|\
| * Issue #28991: Fix obscure reentrancy bug in functools.lru_cache().Raymond Hettinger2016-12-161-2/+4
| |
* | Issue #27137: align Python & C implementations of functools.partialNick Coghlan2016-09-101-17/+75
|/ | | | | | | | The pure Python fallback implementation of functools.partial now matches the behaviour of its accelerated C counterpart for subclassing, pickling and text representation purposes. Patch by Emanuel Barry and Serhiy Storchaka.
* Removed redundant call of update_wrapper().Serhiy Storchaka2015-10-241-1/+1
|
* Issue #23572: Fixed functools.singledispatch on classes with falsy metaclasses.Yury Selivanov2015-08-181-1/+1
| | | | Patch by Ethan Furman.
* Backed out changeset: b0a0b9b59012Serhiy Storchaka2015-05-241-99/+108
|
* Backed out changeset 57776eee74f2Larry Hastings2015-05-231-108/+99
|
* Issue #14373: Added C implementation of functools.lru_cache(). Based onSerhiy Storchaka2015-05-231-99/+108
| | | | patches by Matt Joiner and Alexey Kachayev.
* Issue #16261: Converted some bare except statements to except statementsSerhiy Storchaka2015-05-201-1/+1
| | | | with specified exception type. Original patch by Ramchandra Apte.
* Reduce the overhead in functools.total_ordering by localizing NotImplemented.Raymond Hettinger2015-05-131-12/+12
| | | | (Sugguested by Serhiy Storchaka)
* Issue #7830: Flatten nested functools.partial.Alexander Belopolsky2015-03-011-0/+8
|
* Issue #23326: Removed __ne__ implementations. Since fixing default __ne__Serhiy Storchaka2015-01-311-2/+0
| | | | implementation in issue #21408 they are redundant.
* No need to rebuild a constant dictionary on every call. Move convert ↵Raymond Hettinger2015-01-141-16/+17
| | | | mapping to module level.
* Minor speed-up. Use local variable instead of a global lookup.Raymond Hettinger2015-01-071-10/+10
|
* mergeRaymond Hettinger2015-01-061-76/+81
|\
| * Issue #23132: Mitigate regression in speed and clarity in ↵Raymond Hettinger2015-01-061-64/+78
| | | | | | | | functools.total_ordering.
* | Issue #23132: Improve performance and introspection support of comparisonSerhiy Storchaka2015-01-011-41/+50
| | | | | | | | methods created by functool.total_ordering.
* | mergeRaymond Hettinger2014-08-121-0/+6
|\ \ | |/
| * Issue 22184: Early detection and reporting of missing lru_cache parametersRaymond Hettinger2014-08-121-0/+6
| |
* | Issue #22032: __qualname__ instead of __name__ is now always used to formatSerhiy Storchaka2014-07-221-1/+1
|/ | | | fully qualified class names of Python implemented classes.
* Issue #20976: pyflakes: Remove unused importsVictor Stinner2014-03-201-1/+1
|
* inspect.signature: Add support for 'functools.partialmethod' #20223Yury Selivanov2014-01-271-0/+1
|
* Fix functools.partialmethod docs and __all__Nick Coghlan2013-11-041-1/+1
|
* Issue #4331: Added functools.partialmethodNick Coghlan2013-11-031-2/+76
| | | | Initial patch by Alon Horev
* Close #10042: functools.total_ordering now handles NotImplementedNick Coghlan2013-10-011-12/+82
| | | | (Patch by Katie Miller)
* Close issue 17482: don't overwrite __wrapped__Nick Coghlan2013-07-151-1/+3
|
* Issue #18200: Back out usage of ModuleNotFoundError (8d28d44f3a9a)Brett Cannon2013-07-041-3/+3
|
* Issue #18244: Adopt C3-based linearization in functools.singledispatch for ↵Łukasz Langa2013-07-011-43/+135
| | | | improved ABC support
* Issue #18200: Update the stdlib (except tests) to useBrett Cannon2013-06-141-3/+3
| | | | ModuleNotFoundError.
* Add reference implementation for PEP 443Łukasz Langa2013-06-051-4/+124
| | | | PEP accepted: http://mail.python.org/pipermail/python-dev/2013-June/126734.html
* mergeRaymond Hettinger2013-03-091-2/+2
|\
| * Sync-up with 3.4 to make maintenance easier.Raymond Hettinger2013-03-091-9/+7
| |
* | mergeRaymond Hettinger2013-03-091-12/+35
|\ \ | |/
| * Improve comments and variable names.Raymond Hettinger2013-03-091-14/+37
| |
* | MergeRaymond Hettinger2013-03-041-1/+1
|\ \ | |/
| * Another nit.Raymond Hettinger2013-03-041-1/+1
| |
* | mergeRaymond Hettinger2013-03-041-7/+11
|\ \ | |/
| * Fix other re-entrancy nits for the lru_cache.Raymond Hettinger2013-03-041-7/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Keep references for oldkey and oldvalue so they can't trigger a __del__ method to reenter our thread. Move the cache[key]=link step to the end, after the link data is in a consistent state. Under exotic circumstances, the cache[key]=link step could trigger reentrancy (i.e. the key would have to have a hash exactly equal to that for another key in the cache and the key would need a __eq__ method that makes a reentrant call our cached function).
* | MergeRaymond Hettinger2013-03-021-1/+4
|\ \ | |/
| * Remove dependency on dummy_threading (to solve a bootstrap problem).Raymond Hettinger2013-03-021-1/+4
| |
* | MergeRaymond Hettinger2013-03-011-3/+3
|\ \ | |/
| * Don't deadlock on a reentrant call.Raymond Hettinger2013-03-011-3/+3
| |