This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: typing.__all__ has drifted from actual contents
Type: Stage: resolved
Components: Library (Lib) Versions: Python 3.8
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: Nosy List: Anthony Sottile, gvanrossum, levkivskyi, miss-islington
Priority: normal Keywords: patch

Created on 2019-05-21 03:40 by Anthony Sottile, last changed 2022-04-11 14:59 by admin. This issue is now closed.

Pull Requests
URL Status Linked Edit
PR 13456 merged Anthony Sottile, 2019-05-21 03:43
PR 13662 merged Anthony Sottile, 2019-05-29 19:06
PR 13663 closed Anthony Sottile, 2019-05-29 19:13
Messages (7)
msg342975 - (view) Author: Anthony Sottile (Anthony Sottile) * Date: 2019-05-21 03:40
notably it is missing ForwardRef, OrderedDict, ChainMap in python3.8

it is missing others in other versions

I'm going to attempt to write a test which should classify things that should belong there
msg342976 - (view) Author: Anthony Sottile (Anthony Sottile) * Date: 2019-05-21 04:43
using the same heuristic as the test uses, here's what's been missing from __all__ historically

(note: I _manually_ skipped `Final` for 3.5.0-3)

===================================(3, 5, 0)===================================
+FrozenSet
+SupportsBytes
+SupportsComplex
===================================(3, 5, 1)===================================
+FrozenSet
+SupportsBytes
+SupportsComplex
===================================(3, 5, 2)===================================
+FrozenSet
+SupportsBytes
+SupportsComplex
===================================(3, 5, 3)===================================
+AsyncIterable
+AsyncIterator
+Awaitable
+Coroutine
+SupportsBytes
+SupportsComplex
===================================(3, 5, 4)===================================
+AsyncContextManager
+AsyncIterable
+AsyncIterator
+Awaitable
+ChainMap
+Coroutine
+NoReturn
===================================(3, 5, 5)===================================
+AsyncContextManager
+AsyncIterable
+AsyncIterator
+Awaitable
+ChainMap
+Coroutine
+NoReturn
===================================(3, 5, 6)===================================
+AsyncContextManager
+AsyncIterable
+AsyncIterator
+Awaitable
+ChainMap
+Coroutine
+NoReturn
===================================(3, 5, 7)===================================
+AsyncContextManager
+AsyncIterable
+AsyncIterator
+Awaitable
+ChainMap
+Coroutine
+NoReturn
===================================(3, 6, 0)===================================
+AsyncIterable
+AsyncIterator
+Awaitable
+Collection
+ContextManager
+Coroutine
+SupportsBytes
+SupportsComplex
===================================(3, 6, 1)===================================
+AsyncGenerator
+AsyncIterable
+AsyncIterator
+Awaitable
+ChainMap
+Collection
+ContextManager
+Coroutine
+SupportsBytes
+SupportsComplex
===================================(3, 6, 2)===================================
+AsyncContextManager
+AsyncGenerator
+AsyncIterable
+AsyncIterator
+Awaitable
+ChainMap
+Collection
+Coroutine
+NoReturn
===================================(3, 6, 3)===================================
+AsyncContextManager
+AsyncGenerator
+AsyncIterable
+AsyncIterator
+Awaitable
+ChainMap
+Collection
+Coroutine
+NoReturn
===================================(3, 6, 4)===================================
+AsyncContextManager
+AsyncGenerator
+AsyncIterable
+AsyncIterator
+Awaitable
+ChainMap
+Collection
+Coroutine
+NoReturn
===================================(3, 6, 5)===================================
+AsyncContextManager
+AsyncGenerator
+AsyncIterable
+AsyncIterator
+Awaitable
+ChainMap
+Collection
+Coroutine
+NoReturn
===================================(3, 6, 6)===================================
+AsyncContextManager
+AsyncGenerator
+AsyncIterable
+AsyncIterator
+Awaitable
+ChainMap
+Collection
+Coroutine
+NoReturn
===================================(3, 6, 7)===================================
+AsyncContextManager
+AsyncGenerator
+AsyncIterable
+AsyncIterator
+Awaitable
+ChainMap
+Collection
+Coroutine
+NoReturn
===================================(3, 6, 8)===================================
+AsyncContextManager
+AsyncGenerator
+AsyncIterable
+AsyncIterator
+Awaitable
+ChainMap
+Collection
+Coroutine
+NoReturn
===================================(3, 7, 0)===================================
+ChainMap
+ForwardRef
===================================(3, 7, 1)===================================
+ChainMap
+ForwardRef
===================================(3, 7, 2)===================================
+ChainMap
+ForwardRef
+OrderedDict
===================================(3, 7, 3)===================================
+ChainMap
+ForwardRef
+OrderedDict
msg343905 - (view) Author: miss-islington (miss-islington) Date: 2019-05-29 18:20
New changeset d30da5dd9a8a965cf24a22bbaff8a5b1341c2944 by Miss Islington (bot) (Anthony Sottile) in branch 'master':
bpo-36983: Fix typing.__all__ and add test for exported names (GH-13456)
https://github.com/python/cpython/commit/d30da5dd9a8a965cf24a22bbaff8a5b1341c2944
msg343906 - (view) Author: Guido van Rossum (gvanrossum) * (Python committer) Date: 2019-05-29 18:23
It looks like the backports need to be done manually. Hopefully you'll feel up to that, otherwise we can close without doing the backports.
msg343911 - (view) Author: Anthony Sottile (Anthony Sottile) * Date: 2019-05-29 18:58
yep, happy to do that -- I know I'll need to do 3.7, but should I also do 3.6? 3.5?
msg343946 - (view) Author: miss-islington (miss-islington) Date: 2019-05-30 04:05
New changeset 3a98bbf7275903a0f84d1374abd0b7f3a85950a4 by Miss Islington (bot) (Anthony Sottile) in branch '3.7':
[3.7] bpo-36983: Fix typing.__all__ and add test for exported names (GH-13456) (GH-13662)
https://github.com/python/cpython/commit/3a98bbf7275903a0f84d1374abd0b7f3a85950a4
msg343947 - (view) Author: Guido van Rossum (gvanrossum) * (Python committer) Date: 2019-05-30 04:06
Thanks! No 3.6 backport is needed after all.
History
Date User Action Args
2022-04-11 14:59:15adminsetgithub: 81164
2019-05-30 04:06:33gvanrossumsetstatus: open -> closed
resolution: fixed
messages: + msg343947

stage: patch review -> resolved
2019-05-30 04:05:38miss-islingtonsetmessages: + msg343946
2019-05-29 19:13:38Anthony Sottilesetpull_requests: + pull_request13554
2019-05-29 19:06:32Anthony Sottilesetpull_requests: + pull_request13553
2019-05-29 18:58:41Anthony Sottilesetmessages: + msg343911
2019-05-29 18:23:20gvanrossumsetmessages: + msg343906
2019-05-29 18:20:00miss-islingtonsetnosy: + miss-islington
messages: + msg343905
2019-05-21 04:43:41Anthony Sottilesetmessages: + msg342976
2019-05-21 03:43:00Anthony Sottilesetkeywords: + patch
stage: patch review
pull_requests: + pull_request13365
2019-05-21 03:41:57xtreaksetnosy: + gvanrossum, levkivskyi
2019-05-21 03:40:16Anthony Sottilecreate