py=2, py<3.5 compatibility
https://github.com/iterative/dvc/blob/5c76b46b460e00d3bb5c3f2ea87b19d961491f12/dvc/logger.py#L161

is invalid for `python<3.5`.
diff --git a/dvc/logger.py b/dvc/logger.py
index 44fcacca4..8e11f0e62 100644
--- a/dvc/logger.py
+++ b/dvc/logger.py
@@ -2,7 +2,7 @@
 
 from __future__ import unicode_literals
 
-from dvc.utils.compat import str, StringIO
+from dvc.utils.compat import str, StringIO, RecursionError
 from dvc.progress import Tqdm
 
 import logging
diff --git a/dvc/utils/compat.py b/dvc/utils/compat.py
index 5b17c7708..911664f07 100644
--- a/dvc/utils/compat.py
+++ b/dvc/utils/compat.py
@@ -18,6 +18,11 @@ is_py3 = _ver[0] == 3
 # simplified version of ipython_genutils/encoding.py
 DEFAULT_ENCODING = sys.getdefaultencoding()
 
+if _ver[:2] < (3, 5):
+    RecursionError = RuntimeError
+else:
+    RecursionError = RecursionError
+
 
 def no_code(x, encoding=None):
     return x
['dvc/utils/compat.py', 'dvc/logger.py']