summaryrefslogtreecommitdiffstats
path: root/contrib/python/python-dateutil/py2/dateutil/__init__.py
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/python/python-dateutil/py2/dateutil/__init__.py')
-rw-r--r--contrib/python/python-dateutil/py2/dateutil/__init__.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/contrib/python/python-dateutil/py2/dateutil/__init__.py b/contrib/python/python-dateutil/py2/dateutil/__init__.py
index 0defb82e21f..a2c19c06fe1 100644
--- a/contrib/python/python-dateutil/py2/dateutil/__init__.py
+++ b/contrib/python/python-dateutil/py2/dateutil/__init__.py
@@ -1,4 +1,6 @@
# -*- coding: utf-8 -*-
+import sys
+
try:
from ._version import version as __version__
except ImportError:
@@ -6,3 +8,17 @@ except ImportError:
__all__ = ['easter', 'parser', 'relativedelta', 'rrule', 'tz',
'utils', 'zoneinfo']
+
+def __getattr__(name):
+ import importlib
+
+ if name in __all__:
+ return importlib.import_module("." + name, __name__)
+ raise AttributeError(
+ "module {!r} has not attribute {!r}".format(__name__, name)
+ )
+
+
+def __dir__():
+ # __dir__ should include all the lazy-importable modules as well.
+ return [x for x in globals() if x not in sys.modules] + __all__