Raymond Hettinger
14adbd4598
bpo-36650: Fix handling of empty keyword args in C version of lru_cache. (GH-12881)
2019-04-20 07:20:44 -10:00
Serhiy Storchaka
42a139ed88
bpo-36492: Deprecate passing some arguments as keyword arguments. (GH-12637)
...
Deprecated passing the following arguments as keyword arguments:
- "func" in functools.partialmethod(), weakref.finalize(),
profile.Profile.runcall(), cProfile.Profile.runcall(),
bdb.Bdb.runcall(), trace.Trace.runfunc() and
curses.wrapper().
- "function" in unittest.addModuleCleanup() and
unittest.TestCase.addCleanup().
- "fn" in the submit() method of concurrent.futures.ThreadPoolExecutor
and concurrent.futures.ProcessPoolExecutor.
- "callback" in contextlib.ExitStack.callback(),
contextlib.AsyncExitStack.callback() and
contextlib.AsyncExitStack.push_async_callback().
- "c" and "typeid" in the create() method of multiprocessing.managers.Server
and multiprocessing.managers.SharedMemoryServer.
- "obj" in weakref.finalize().
Also allowed to pass arbitrary keyword arguments (even "self" and "func")
if the above arguments are passed as positional argument.
2019-04-01 09:16:35 +03:00
Raymond Hettinger
d8080c0119
bpo-35780: Fix errors in lru_cache() C code (GH-11623)
2019-01-26 03:02:00 -05:00
madman-bob
e25d5fc18e
bpo-32321: Add pure Python fallback for functools.reduce (GH-8548)
2018-10-25 16:02:10 +02:00
Carl Meyer
d658deac60
bpo-21145: Add cached_property decorator in functools ( #6982 )
...
Robust caching of calculated properties is
harder than it looks at first glance, so add
a solid, well-tested implementation to the
standard library.
2018-08-28 17:11:56 +10:00
INADA Naoki
56d8f57b83
bpo-33967: Fix wrong use of assertRaises (GH-8306)
2018-07-17 13:44:47 +09:00
Zackery Spytz
9e9b2c32a3
bpo-33967: Remove use of deprecated assertRaisesRegexp() (GH-8261)
...
It was added in test_functools at 445f1b3
.
2018-07-12 12:57:05 +09:00
Dong-hee Na
445f1b35ce
bpo-33967: Fix singledispatch raised IndexError when no args (GH-8184)
2018-07-10 16:26:36 +09:00
Ethan Smith
c651275afe
bpo-32380: Create functools.singledispatchmethod ( #6306 )
2018-05-26 13:38:33 -07:00
Mike
53f7a7c281
bpo-32297: Few misspellings found in Python source code comments. ( #4803 )
...
* Fix multiple typos in code comments
* Add spacing in comments (test_logging.py, test_math.py)
* Fix spaces at the beginning of comments in test_logging.py
2017-12-14 13:04:53 +02:00
Łukasz Langa
e56975351b
bpo-32227: functools.singledispatch supports registering via type annotations ( #4733 )
2017-12-11 13:56:31 -08:00
INADA Naoki
9811e80fd0
bpo-31581: Reduce the number of imports for functools (GH-3757)
2017-09-30 16:13:02 +09:00
Antoine Pitrou
a6a4dc816d
bpo-31370: Remove support for threads-less builds ( #3385 )
...
* Remove Setup.config
* Always define WITH_THREAD for compatibility.
2017-09-07 18:56:24 +02:00
Ville Skyttä
49b2734bf1
Spelling fixes ( #2902 )
2017-08-03 09:00:59 +03:00
Serhiy Storchaka
2e576f5aec
bpo-30144: Import collections ABC from collections.abc rather than collections. ( #1263 )
2017-04-24 09:05:00 +03:00
Michael Seifert
6c3d527468
bpo-29800: Fix crashes in partial.__repr__ if the keys of partial.keywords are not strings ( #649 )
2017-03-15 07:26:33 +02:00
Serhiy Storchaka
9639e4ab6d
bpo-29532: Altering a kwarg dictionary passed to functools.partial() ( #190 )
...
no longer affects a partial object after creation.
2017-02-20 14:04:30 +02:00
Serhiy Storchaka
617c7753ce
Issue #28969 : Fixed race condition in C implementation of functools.lru_cache.
...
KeyError could be raised when cached function with full cache was
simultaneously called from differen threads with the same uncached arguments.
2017-01-12 19:42:20 +02:00
Serhiy Storchaka
42e1ea9a10
Issue #28969 : Fixed race condition in C implementation of functools.lru_cache.
...
KeyError could be raised when cached function with full cache was
simultaneously called from differen threads with the same uncached arguments.
2017-01-12 19:12:21 +02:00
Serhiy Storchaka
67796521dd
Issue #28969 : Fixed race condition in C implementation of functools.lru_cache.
...
KeyError could be raised when cached function with full cache was
simultaneously called from differen threads with the same uncached arguments.
2017-01-12 18:34:33 +02:00
Raymond Hettinger
605a4476f8
Add test for ea064ff3c10f
2017-01-09 07:50:19 -08:00
Raymond Hettinger
ac7c5acf9b
merge
2017-01-08 17:29:21 -08:00
Raymond Hettinger
4ee39141e8
Issue #29203 : functools.lru_cache() now respects PEP 468
2017-01-08 17:28:20 -08:00
Raymond Hettinger
5eed36fab4
Issue #29200 : Fix test to use self.assertEqual instead of py.test style tests
2017-01-07 20:53:09 -08:00
Raymond Hettinger
d191ef25c1
Issue #29200 : Add test for lru cache only calling __hash__ once
2017-01-07 20:44:48 -08:00
Raymond Hettinger
c28dbd0452
merge
2016-12-16 13:59:32 -08:00
Raymond Hettinger
af56e0e70f
Issue #28991 : Fix obscure reentrancy bug in functools.lru_cache().
2016-12-16 13:57:40 -08:00
Xavier de Gaye
7522ef402c
Issue #26939 : Add the support.setswitchinterval() function to fix
...
test_functools hanging on the Android armv7 qemu emulator.
2016-12-08 11:06:56 +01:00
Yury Selivanov
0a66a1cdd6
Merge 3.6 (issue #28653 )
2016-11-09 18:56:26 -05:00
Yury Selivanov
46a02db90b
Issue #28653 : Fix a refleak in functools.lru_cache.
2016-11-09 18:55:45 -05:00
Serhiy Storchaka
e3d504090c
Extend the test to lower pickle protocols.
2016-09-22 11:42:38 +03:00
Serhiy Storchaka
92bb90a9ff
Extend the test to lower pickle protocols.
2016-09-22 11:39:25 +03:00
Nick Coghlan
457fc9a69e
Issue #27137 : align Python & C implementations of functools.partial
...
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.
2016-09-10 20:00:02 +10:00
Guido van Rossum
f0666949fd
Issue 27598: Add Collections to collections.abc.
...
Patch by Ivan Levkivskyi, docs by Neil Girdhar.
2016-08-23 10:47:07 -07:00
Benjamin Peterson
ab078e9ed1
Backed out changeset af29d89083b3 ( closes #25548 ) ( closes #27498 )
2016-07-13 21:13:29 -07:00
Serhiy Storchaka
8918b89e61
Issue #25455 : Clean up reference loops created in tests for recursive
...
functools.partial objects.
2016-06-12 15:53:09 +03:00
Serhiy Storchaka
46fe29de31
Issue #25455 : Clean up reference loops created in tests for recursive
...
functools.partial objects.
2016-06-12 15:45:14 +03:00
Serhiy Storchaka
b62ff6eb57
Issue #25455 : Fixed a crash in repr of recursive functools.partial objects.
2016-06-12 11:51:26 +03:00
Serhiy Storchaka
179f960d47
Issue #25455 : Fixed a crash in repr of recursive functools.partial objects.
2016-06-12 11:44:06 +03:00
Kushal Das
5801ecb440
Issue #25548 : Showing memory address of class objects in repl
2016-06-04 16:21:13 -07:00
Martin Panter
3e04d5b306
Issue #27076 : Merge spelling from 3.5
2016-05-26 06:03:19 +00:00
Martin Panter
46f50726a0
Issue #27076 : Doc, comment and tests spelling fixes
...
Most fixes to Doc/ and Lib/ directories by Ville Skyttä.
2016-05-26 05:35:26 +00:00
Guido van Rossum
16ca06b8cb
Add collections.Reversible. Patch by Ivan Levkivskyi. Fixes issue #25987 .
2016-04-04 10:59:29 -07:00
Serhiy Storchaka
3874128519
Issue #25945 : Fixed bugs in functools.partial.
...
Fixed a crash when unpickle the functools.partial object with wrong state.
Fixed a leak in failed functools.partial constructor.
"args" and "keywords" attributes of functools.partial have now always types
tuple and dict correspondingly.
2016-02-02 18:45:17 +02:00
Serhiy Storchaka
e4d65e3aab
Issue #25447 : Copying the lru_cache() wrapper object now always works,
...
independedly from the type of the wrapped object (by returning the original
object unchanged).
2015-12-28 23:58:07 +02:00
Serhiy Storchaka
45120f272b
Issue #25447 : The lru_cache() wrapper objects now can be copied and pickled
...
(by returning the original object unchanged).
2015-10-24 09:49:56 +03:00
Berker Peksag
9b93c6b5df
Issue #25137 : Add a note to whatsnew/3.5.rst for nested functools.partial calls
...
Also, properly skip the test_nested_optimization test for partial subclasses
and add a test for the suggested usage.
2015-09-22 13:08:16 +03:00
Yury Selivanov
77a8cd65be
Issue #23572 : Fixed functools.singledispatch on classes with falsy metaclasses.
...
Patch by Ethan Furman.
2015-08-18 14:20:00 -04:00
Serhiy Storchaka
391af751f2
Issue #14373 : Other attempt to fix threaded test for lru_cache().
2015-06-08 12:44:18 +03:00
Serhiy Storchaka
e7070f09bc
Issue #14373 : C implementation of functools.lru_cache() now can be used with
...
methods.
2015-06-08 11:19:24 +03:00
Serhiy Storchaka
77cb197aaa
Issue #14373 : Fixed threaded test for lru_cache(). Added new threaded test.
2015-06-08 11:14:31 +03:00
Serhiy Storchaka
bf2b3b72d3
Use test.support.start_threads() in threaded lru_cache tests.
2015-05-30 15:49:17 +03:00
Serhiy Storchaka
46c5611948
Backed out changeset: b0a0b9b59012
2015-05-24 21:53:49 +03:00
Larry Hastings
8252cc9832
Backed out changeset 57776eee74f2
2015-05-23 14:56:23 -07:00
Serhiy Storchaka
1c858c352b
Issue #14373 : Added C implementation of functools.lru_cache(). Based on
...
patches by Matt Joiner and Alexey Kachayev.
2015-05-23 22:42:49 +03:00
Benjamin Peterson
dae2ef1cfa
merge 3.4
2015-05-09 00:29:08 -04:00
Benjamin Peterson
65bcdd7195
ensure .keywords is always a dict
2015-05-09 00:25:18 -04:00
Zachary Ware
38c707e7e0
Issue #21741 : Update 147 test modules to use test discovery.
...
I have compared output between pre- and post-patch runs of these tests
to make sure there's nothing missing and nothing broken, on both
Windows and Linux. The only differences I found were actually tests
that were previously *not* run.
2015-04-13 15:00:43 -05:00
Alexander Belopolsky
e49af34151
Issue #7830 : Flatten nested functools.partial.
2015-03-01 15:08:17 -05:00
Serhiy Storchaka
90caf017ee
Issue #19681 : Test the repr of partial with more than one keyword argument.
2015-02-15 16:22:11 +02:00
Serhiy Storchaka
0aa74e10bb
Issue #19681 : Test the repr of partial with more than one keyword argument.
2015-02-15 16:20:47 +02:00
Serhiy Storchaka
697a526fa1
Issue #23132 : Improve performance and introspection support of comparison
...
methods created by functool.total_ordering.
2015-01-01 15:23:12 +02:00
Serhiy Storchaka
bad1257c96
Issue #22777 : Test pickling with all protocols.
2014-12-15 14:03:42 +02:00
Raymond Hettinger
4d58897fdb
Issue 22184: Early detection and reporting of missing lru_cache parameters
2014-08-12 12:44:52 -07:00
Serhiy Storchaka
b12cb6a550
Issue #19535 : Fixed test_docxmlrpc, test_functools, test_inspect, and
...
test_statistics when python is run with -OO.
2013-12-08 18:16:18 +02:00
Zachary Ware
101d9e7250
Issue 19572: More silently skipped tests explicitly skipped.
2013-12-08 00:44:27 -06:00
Zachary Ware
9fe6d86709
Issue 19572: More silently skipped tests explicitly skipped.
2013-12-08 00:20:35 -06:00
Christian Heimes
d062892542
Issue #19681 : Apply a quick and minimal band-aid.
...
The flaky buildbots make it hard to detect real issue. This is just a temporary fix until we agree
on a permanent solution.
2013-11-22 01:22:47 +01:00
Nick Coghlan
f4cb48a72b
Issue #4331 : Added functools.partialmethod
...
Initial patch by Alon Horev
2013-11-03 16:41:46 +10:00
Nick Coghlan
f05d981f58
Close #10042 : functools.total_ordering now handles NotImplemented
...
(Patch by Katie Miller)
2013-10-02 00:02:03 +10:00
Nick Coghlan
24c05bc154
Close issue 17482: don't overwrite __wrapped__
2013-07-15 21:13:08 +10:00
Łukasz Langa
3720c77e30
Issue #18244 : Adopt C3-based linearization in functools.singledispatch for improved ABC support
2013-07-01 16:00:38 +02:00
Łukasz Langa
7f7a67aac8
Fixed #18150 : duplicate test inside TestSingleDispatch
...
Thanks to Vajrasky Kok for the patch
2013-06-07 22:25:27 +02:00
Łukasz Langa
6f69251980
Add reference implementation for PEP 443
...
PEP accepted: http://mail.python.org/pipermail/python-dev/2013-June/126734.html
2013-06-05 12:20:24 +02:00
Raymond Hettinger
6c2078d545
merge
2013-03-04 02:58:40 -05:00
Raymond Hettinger
0392342673
Add test for RLock in the lru_cache().
2013-03-04 02:52:50 -05:00
Serhiy Storchaka
ca4220be1f
Issue #17122 : Fix and cleanup test_functools.py.
2013-02-05 22:12:59 +02:00
Serhiy Storchaka
b6a53404b7
Issue #6083 : Fix multiple segmentation faults occured when PyArg_ParseTuple
...
parses nested mutating sequence.
2013-02-04 12:57:16 +02:00
Serhiy Storchaka
1d0bb9c8f9
Issue #6083 : Fix multiple segmentation faults occured when PyArg_ParseTuple
...
parses nested mutating sequence.
2013-02-04 12:54:04 +02:00
Serhiy Storchaka
19c4e0df29
Issue #6083 : Fix multiple segmentation faults occured when PyArg_ParseTuple
...
parses nested mutating sequence.
2013-02-04 12:47:24 +02:00
Serhiy Storchaka
a4fdd599e2
Fix skip conditions in some docstings tests.
2013-01-28 13:26:25 +02:00
Serhiy Storchaka
8e0ae2a4f0
Fix skip conditions in some docstings tests.
2013-01-28 13:25:44 +02:00
Serhiy Storchaka
f011881d7d
Issue #17041 : Fix testing when Python is configured with the
...
--without-doc-strings.
2013-01-27 20:04:26 +02:00
Serhiy Storchaka
26f1166510
Issue #17041 : Fix testing when Python is configured with the
...
--without-doc-strings.
2013-01-27 20:03:39 +02:00
Serhiy Storchaka
9d0add0c7e
Issue #17041 : Fix testing when Python is configured with the
...
--without-doc-strings.
2013-01-27 19:47:45 +02:00
Antoine Pitrou
3354327113
Fix whitespace.
2012-11-13 21:36:21 +01:00
Antoine Pitrou
b5b3714168
Issue #12428 : Add a pure Python implementation of functools.partial().
...
Patch by Brian Thorne.
2012-11-13 21:35:40 +01:00
Meador Inge
ff7f64ca0e
Issue #13544 : Add __qualname__ to functools.WRAPPER_ASSIGNMENTS.
...
Patch by Filip Gruszczyński.
2011-12-11 22:37:31 -06:00
Raymond Hettinger
cd9fdfd652
Issue 13227: Option to make the lru_cache() type specific (suggested by Andrew Koenig).
2011-10-20 08:57:45 -07:00
Raymond Hettinger
d8886fc831
Merge
2011-10-16 00:00:51 -07:00
Raymond Hettinger
4b779b3785
Issue 13177: Make tracebacks more readable by avoiding chained exceptions in the lru_cache.
2011-10-15 23:50:42 -07:00
Raymond Hettinger
e7a2430dde
Fix __hash__ in functools.cmp_to_key() to work with collections.Hashable.
2011-05-03 11:16:36 -07:00
Raymond Hettinger
003be52932
Fix __hash__ in functools.cmp_to_key() to work with collections.Hashable.
2011-05-03 11:01:32 -07:00
Raymond Hettinger
7ab9e22e34
Issue #11707 : Fast C version of functools.cmp_to_key()
2011-04-05 02:33:54 -07:00
Raymond Hettinger
23f9fc3448
Issue #10042 : Fixed the total_ordering decorator to handle cross-type
...
comparisons that could lead to infinite recursion.
2011-01-08 07:01:56 +00:00
Alexander Belopolsky
41e422a4ff
Issue #4113 : Added custom __repr__ method to functools.partial.
2010-12-01 20:05:49 +00:00
Raymond Hettinger
c79fb0e52d
Issue 10593: Adopt Nick's suggestion for an lru_cache with maxsize=None.
2010-12-01 03:45:41 +00:00
Raymond Hettinger
7496b4171e
Add example, tighten text, and minor clean-ups.
2010-11-30 19:15:45 +00:00
Nick Coghlan
234515afe5
Issue 10586: change the new functools.lru_cache implementation to expose the maximum and current cache sizes through the public statistics API. This API is now a single function that returns a named tuple.
2010-11-30 06:19:46 +00:00
Ezio Melotti
b3aedd4862
#9424 : Replace deprecated assert* methods in the Python test suite.
2010-11-20 19:04:17 +00:00