summaryrefslogtreecommitdiffstats
path: root/Lib/asyncio/coroutines.py
diff options
context:
space:
mode:
authorVictor Stinner <victor.stinner@gmail.com>2017-11-28 13:43:52 (GMT)
committerGitHub <noreply@github.com>2017-11-28 13:43:52 (GMT)
commit3f438a9fa0aab5a598b4c94bbc24f9d0a23d012e (patch)
treea56013ffbf9cd0c3371f3c73e35bd966b6def7f0 /Lib/asyncio/coroutines.py
parenta10dc3efcbba8aa7cc7d1a017f8b22fc4fa8e87c (diff)
downloadcpython-3f438a9fa0aab5a598b4c94bbc24f9d0a23d012e.zip
cpython-3f438a9fa0aab5a598b4c94bbc24f9d0a23d012e.tar.gz
cpython-3f438a9fa0aab5a598b4c94bbc24f9d0a23d012e.tar.bz2
asyncio: Remove asyncio/compat.py (#4606)
The asyncio/compat.py file was written to support Python < 3.5 and Python < 3.5.2. But Python 3.5 doesn't accept bugfixes anymore, only security fixes. There is no more need to backport bugfixes to Python 3.5, and so no need to have a single code base for Python 3.5, 3.6 and 3.7. Say hello (again) to "async" and "await", who became real keywords in Python 3.7 ;-)
Diffstat (limited to 'Lib/asyncio/coroutines.py')
-rw-r--r--Lib/asyncio/coroutines.py47
1 files changed, 22 insertions, 25 deletions
diff --git a/Lib/asyncio/coroutines.py b/Lib/asyncio/coroutines.py
index a87c9f9..3e305f9 100644
--- a/Lib/asyncio/coroutines.py
+++ b/Lib/asyncio/coroutines.py
@@ -9,7 +9,6 @@ import sys
import traceback
import types
-from . import compat
from . import constants
from . import events
from . import base_futures
@@ -151,35 +150,33 @@ class CoroWrapper:
def gi_code(self):
return self.gen.gi_code
- if compat.PY35:
-
- def __await__(self):
- cr_await = getattr(self.gen, 'cr_await', None)
- if cr_await is not None:
- raise RuntimeError(
- "Cannot await on coroutine {!r} while it's "
- "awaiting for {!r}".format(self.gen, cr_await))
- return self
+ def __await__(self):
+ cr_await = getattr(self.gen, 'cr_await', None)
+ if cr_await is not None:
+ raise RuntimeError(
+ "Cannot await on coroutine {!r} while it's "
+ "awaiting for {!r}".format(self.gen, cr_await))
+ return self
- @property
- def gi_yieldfrom(self):
- return self.gen.gi_yieldfrom
+ @property
+ def gi_yieldfrom(self):
+ return self.gen.gi_yieldfrom
- @property
- def cr_await(self):
- return self.gen.cr_await
+ @property
+ def cr_await(self):
+ return self.gen.cr_await
- @property
- def cr_running(self):
- return self.gen.cr_running
+ @property
+ def cr_running(self):
+ return self.gen.cr_running
- @property
- def cr_code(self):
- return self.gen.cr_code
+ @property
+ def cr_code(self):
+ return self.gen.cr_code
- @property
- def cr_frame(self):
- return self.gen.cr_frame
+ @property
+ def cr_frame(self):
+ return self.gen.cr_frame
def __del__(self):
# Be careful accessing self.gen.frame -- self.gen might not exist.