classification
Title: Incomplete DeprecationWarning for async/await keywords
Type: Stage:
Components: Versions: Python 3.7, Python 3.6
process
Status: open Resolution:
Dependencies: Superseder:
Assigned To: Nosy List: barry, jwilk, serhiy.storchaka
Priority: normal Keywords:

Created on 2017-11-07 23:15 by barry, last changed 2017-11-08 20:01 by serhiy.storchaka.

Messages (1)
msg305798 - (view) Author: Barry A. Warsaw (barry) * (Python committer) Date: 2017-11-07 23:15
Issue bpo-26182 added DeprecationWarnings for "import async" and "import await" since both of those pseudo-keywords were to become actual reserved keywords in Python 3.7.  This latter has now happened, but the fix in bpo-26182 is incomplete.  It does not trigger warnings on "from .async import foo".

base/
    __init__.py
    async.py
    good.py

-----async.py
x = 1

-----good.py
from .async import x


$ python3.6 -W error::DeprecationWarning -c "import base.good"
$ python3.7 -c "import base.good"
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/private/tmp/x1/base/good.py", line 1
    from .async import x
              ^
SyntaxError: invalid syntax
$ cd base
$ python3.6 -W error::DeprecationWarning -c "import async"
DeprecationWarning: 'async' and 'await' will become reserved keywords in Python 3.7
History
Date User Action Args
2017-11-08 20:01:52serhiy.storchakasetnosy: + serhiy.storchaka
2017-11-07 23:28:38jwilksetnosy: + jwilk
2017-11-07 23:15:49barrycreate