diff options
| author | Giampaolo Rodola <g.rodola@gmail.com> | 2017-05-05 22:50:53 +0200 |
|---|---|---|
| committer | Giampaolo Rodola <g.rodola@gmail.com> | 2017-05-05 22:50:53 +0200 |
| commit | ac81153b664e468428bb9c550dbea03d3087f8cc (patch) | |
| tree | 44eb23996277aa27cb1dc0ee494d6a19986acaff /scripts | |
| parent | eb3be3d3ab2e55e79121ba8e0f183b60343f73da (diff) | |
| download | psutil-ac81153b664e468428bb9c550dbea03d3087f8cc.tar.gz | |
make.bat uninstall: remove files from site-packages dir
Diffstat (limited to 'scripts')
| -rwxr-xr-x | scripts/internal/winmake.py | 28 |
1 files changed, 14 insertions, 14 deletions
diff --git a/scripts/internal/winmake.py b/scripts/internal/winmake.py index 0408b80c..e813f33c 100755 --- a/scripts/internal/winmake.py +++ b/scripts/internal/winmake.py @@ -17,6 +17,7 @@ import fnmatch import functools import os import shutil +import site import ssl import subprocess import sys @@ -252,19 +253,13 @@ def install(): @cmd def uninstall(): """Uninstall psutil""" - try: - import psutil - except ImportError: - clean() - return + # Uninstalling psutil on Windows seems to be tricky. + # On "import psutil" tests may import a psutil version living in + # C:\PythonXY\Lib\site-packages which is not what we want, so + # we try both "pip uninstall psutil" and manually remove stuff + # from site-packages. clean() install_pip() - sh("%s -m pip uninstall -y psutil" % PYTHON) - - # Uninstalling psutil on Windows seems to be tricky as we may have - # different versions os psutil installed. Also we don't want to be - # in the main psutil source dir as "import psutil" will always - # succeed so this really removes files from site-packages dir. here = os.getcwd() try: os.chdir('C:\\') @@ -272,12 +267,17 @@ def uninstall(): try: import psutil # NOQA except ImportError: - clean() - return - sh("%s -m pip uninstall -y psutil" % PYTHON) + break + else: + sh("%s -m pip uninstall -y psutil" % PYTHON) finally: os.chdir(here) + for dir in site.getsitepackages(): + for name in os.listdir(dir): + if name.startswith('psutil'): + rm(os.path.join(dir, name)) + @cmd def clean(): |
