src/eric7/PipInterface/pipcleanup.py

branch
eric7
changeset 11091
3a1ba42ac50a
child 11105
ec86fc991d28
equal deleted inserted replaced
11090:f5f5f5803935 11091:3a1ba42ac50a
1 #!/usr/bin/env python3
2 # -*- coding: utf-8 -*-
3
4 # Copyright (c) 2002 - 2025 Detlev Offenbach <detlev@die-offenbachs.de>
5 #
6
7 """
8 pipcleanup
9
10 Script to delete all leftovers of upgrading packages currently in use. These
11 leftover directories are still located in the 'site-packages' directory and
12 their names start with a '~' character.
13 """
14
15 import glob
16 import os
17 import shutil
18 import sys
19 import sysconfig
20
21 def main():
22 """
23 Function implementing the main logic.
24 """
25 sitepackages = sysconfig.get_path("platlib")
26 leftovers = glob.glob("~*",root_dir=sitepackages)
27 for leftover in leftovers:
28 directory = os.path.join(sitepackages, leftover)
29 print(f"Removing '{directory}'.")
30 shutil.rmtree(directory, ignore_errors=True)
31
32 # check again for leftovers and report via exit code
33 leftovers = glob.glob("~*",root_dir=sitepackages)
34 sys.exit(1 if bool(leftovers) else 0)
35
36 if __name__ == "__main__":
37 main()

eric ide

mercurial