jenkins-bot has submitted this change and it was merged.
Change subject: [IMPROV] config2: Automatically list imports
......................................................................
[IMPROV] config2: Automatically list imports
Instead of having to remember adding the imports manually in a tuple
this automatically iterates over the global variables and generates the
list (technically a frozenset) from there.
Change-Id: Iaeea9e6e5579153d0211b7625eec607ba65b8748
---
M pywikibot/config2.py
1 file changed, 7 insertions(+), 6 deletions(-)
Approvals:
John Vandenberg: Looks good to me, approved
jenkins-bot: Verified
diff --git a/pywikibot/config2.py b/pywikibot/config2.py
index 5169b0c..6e7954d 100644
--- a/pywikibot/config2.py
+++ b/pywikibot/config2.py
@@ -29,16 +29,17 @@
from warnings import warn
+# This frozen set should contain all imported modules/variables, so it must
+# occur directly after the imports. At that point globals() only contains the
+# names and some magic variables (like __name__)
+_imports = frozenset(name for name in globals() if not name.startswith('_'))
+
class _ConfigurationDeprecationWarning(UserWarning):
"""Feature that is no longer supported."""
pass
-
-
-# Please keep _imported_modules in sync with the imports above
-_imported_modules = ('collections', 'os', 'stat', 'sys')
# IMPORTANT:
# Do not change any of the variables in this file. Instead, make
@@ -816,7 +817,7 @@
# System-level and User-level changes.
# Store current variables and their types.
_glv = dict((_key, _val) for _key, _val in globals().items()
- if _key[0] != '_' and _key not in _imported_modules)
+ if _key[0] != '_' and _key not in _imports)
_gl = list(_glv.keys())
_tp = {}
for _key in _gl:
@@ -865,7 +866,7 @@
for _key, _val in list(_uc.items()):
if _key.startswith('_'):
pass
- elif _key in _imported_modules:
+ elif _key in _imports:
pass
elif _key in _gl:
nt = type(_val)
--
To view, visit
https://gerrit.wikimedia.org/r/197444
To unsubscribe, visit
https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: Iaeea9e6e5579153d0211b7625eec607ba65b8748
Gerrit-PatchSet: 2
Gerrit-Project: pywikibot/core
Gerrit-Branch: master
Gerrit-Owner: XZise <CommodoreFabianus(a)gmx.de>
Gerrit-Reviewer: John Vandenberg <jayvdb(a)gmail.com>
Gerrit-Reviewer: Ladsgroup <ladsgroup(a)gmail.com>
Gerrit-Reviewer: Merlijn van Deen <valhallasw(a)arctus.nl>
Gerrit-Reviewer: XZise <CommodoreFabianus(a)gmx.de>
Gerrit-Reviewer: jenkins-bot <>