diff -r 8b46571d9cc9 -r 718bc86e1c3f scripts/uninstall.py --- a/scripts/uninstall.py Tue Sep 27 14:58:59 2022 +0200 +++ b/scripts/uninstall.py Tue Sep 27 14:59:32 2022 +0200 @@ -21,7 +21,7 @@ progName = None currDir = os.getcwd() pyModDir = None -progLanguages = ["Python", "Ruby", "QSS"] +progLanguages = ["MicroPython", "Python3", "QSS"] defaultMacAppBundleName = "eric7.app" defaultMacAppBundlePath = "/Applications" settingsNameOrganization = "Eric7" @@ -197,14 +197,24 @@ if apidir: for progLanguage in progLanguages: for name in getConfig("apis"): + # step 1: programming language as given + apiname = os.path.join(apidir, progLanguage, name) + if os.path.exists(apiname): + os.remove(apiname) + # step 2: programming language as lowercase apiname = os.path.join(apidir, progLanguage.lower(), name) if os.path.exists(apiname): os.remove(apiname) for apiname in glob.glob( - os.path.join(apidir, progLanguage.lower(), "*.bas") - ): - if os.path.basename(apiname) != "eric7.bas": - os.remove(apiname) + os.path.join(apidir, progLanguage, "*.bas") + ) + glob.glob(os.path.join(apidir, progLanguage.lower(), "*.bas")): + os.remove(apiname) + + # remove empty directories + with contextlib.suppress(FileNotFoundError, OSError): + os.rmdir(os.path.join(apidir, progLanguage)) + with contextlib.suppress(FileNotFoundError, OSError): + os.rmdir(os.path.join(apidir, progLanguage.lower())) if sys.platform == "darwin": # delete the Mac app bundle