diff options
author | Flavian Hautbois <flavianh@sicara.com> | 2019-07-26 01:30:33 (GMT) |
---|---|---|
committer | Terry Jan Reedy <tjreedy@udel.edu> | 2019-07-26 01:30:33 (GMT) |
commit | 76b645124b3aaa34bc664eece43707c01ef1b382 (patch) | |
tree | 10aaa3e7e89080bd68128c4de544050599d261bf /Lib/tkinter/__init__.py | |
parent | c4cda4369f4b8f33082890d16dfc364a90658ef6 (diff) | |
download | cpython-76b645124b3aaa34bc664eece43707c01ef1b382.zip cpython-76b645124b3aaa34bc664eece43707c01ef1b382.tar.gz cpython-76b645124b3aaa34bc664eece43707c01ef1b382.tar.bz2 |
bpo-29446: tkinter 'import *' only imports what it should (GH-14864)
Add __all__ to tkinter.__init__ and submodules. Replace 'import *'
with explicit imports in some submodules.
Diffstat (limited to 'Lib/tkinter/__init__.py')
-rw-r--r-- | Lib/tkinter/__init__.py | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/Lib/tkinter/__init__.py b/Lib/tkinter/__init__.py index 57d5b25..9626a27 100644 --- a/Lib/tkinter/__init__.py +++ b/Lib/tkinter/__init__.py @@ -32,13 +32,13 @@ tk.mainloop() import enum import sys +import types import _tkinter # If this fails your Python may not be configured for Tk TclError = _tkinter.TclError from tkinter.constants import * import re - wantobjects = 1 TkVersion = float(_tkinter.TK_VERSION) @@ -4569,5 +4569,9 @@ def _test(): root.mainloop() +__all__ = [name for name, obj in globals().items() + if not name.startswith('_') and not isinstance(obj, types.ModuleType) + and name not in {'wantobjects'}] + if __name__ == '__main__': _test() |