From b502e1eef6535dda9d720683f762d82feefa0329 Mon Sep 17 00:00:00 2001 From: Yannis Spiliopoulos Date: Mon, 23 Jan 2017 13:35:53 -0500 Subject: [PATCH] Fix python3 only dependency Use backports version of shutil_get_terminal_size for python versions earlier than 3.3 --- pipenv/cli.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/pipenv/cli.py b/pipenv/cli.py index b8113e45..0e23602d 100644 --- a/pipenv/cli.py +++ b/pipenv/cli.py @@ -3,6 +3,10 @@ import json import os import sys import distutils.spawn +if sys.version_info < (3, 3): + from backports.shutil_get_terminal_size import shutil_get_terminal_size +else: + from shutil import get_terminal_size as shutil_get_terminal_size import shutil import signal @@ -424,7 +428,7 @@ def shell(): # Grab current terminal dimensions to replace the hardcoded default # dimensions of pexpect - terminal_dimensions = shutil.get_terminal_size() + terminal_dimensions = shutil_get_terminal_size() c = pexpect.spawn( "{0} -c '. {1}; exec {0} -i'".format( @@ -444,7 +448,7 @@ def shell(): # Must be defined here to have the shell process in its context, since we # can't pass it as an argument def sigwinch_passthrough(sig, data): - terminal_dimensions = shutil.get_terminal_size() + terminal_dimensions = shutil_get_terminal_size() c.setwinsize(terminal_dimensions.lines, terminal_dimensions.columns) signal.signal(signal.SIGWINCH, sigwinch_passthrough)