mirror of
https://github.com/python/cpython.git
synced 2025-08-27 04:05:34 +00:00
bpo-46771: Remove two controversial lines from Task.cancel() (GH-31623)
Also from the _asyncio C accelerator module, and adjust one test that the change caused to fail. For more discussion see the discussion starting here: https://github.com/python/cpython/pull/31394#issuecomment-1053545331 (Basically, @asvetlov proposed to return False from cancel() when there is already a pending cancellation, and I went along, even though it wasn't necessary for the task group implementation, and @agronholm has come up with a counterexample that fails because of this change. So now I'm changing it back to the old semantics (but still bumping the counter) until we can have a proper discussion about this.)
This commit is contained in:
parent
08deed1af5
commit
7d611b4cab
3 changed files with 17 additions and 6 deletions
|
@ -514,7 +514,11 @@ class BaseTaskTests:
|
|||
self.assertTrue(t.cancel())
|
||||
self.assertTrue(t.cancelling())
|
||||
self.assertIn(" cancelling ", repr(t))
|
||||
self.assertFalse(t.cancel())
|
||||
|
||||
# Since we commented out two lines from Task.cancel(),
|
||||
# this t.cancel() call now returns True.
|
||||
# self.assertFalse(t.cancel())
|
||||
self.assertTrue(t.cancel())
|
||||
|
||||
with self.assertRaises(asyncio.CancelledError):
|
||||
loop.run_until_complete(t)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue