diff -r fb0ef164f536 -r 698ae46f40a4 eric6/Plugins/VcsPlugins/vcsGit/git.py --- a/eric6/Plugins/VcsPlugins/vcsGit/git.py Fri Apr 02 11:59:41 2021 +0200 +++ b/eric6/Plugins/VcsPlugins/vcsGit/git.py Sat May 01 14:27:20 2021 +0200 @@ -10,6 +10,7 @@ import os import shutil import re +import contextlib from PyQt5.QtCore import QProcess, pyqtSignal, QFileInfo from PyQt5.QtWidgets import QApplication, QDialog, QInputDialog, QLineEdit @@ -772,10 +773,7 @@ @param name file/directory name to be diffed (string) """ - if isinstance(name, list): - names = name[:] - else: - names = [name] + names = name[:] if isinstance(name, list) else [name] for nam in names: if os.path.isfile(nam): editor = e5App().getObject("ViewManager").getOpenEditor(nam) @@ -1106,18 +1104,17 @@ path = line[3:].split(" -> ")[-1] name = os.path.normcase(os.path.join(repodir, path)) dirName = os.path.dirname(name) - if name.startswith(dname): - if flag in "?!": - isDir = name.endswith(("/", "\\")) - if isDir: - name = name[:-1] - if name in names: - names[name] = self.canBeAdded - if isDir: - # it's a directory - for nname in names: - if nname.startswith(name): - names[nname] = self.canBeAdded + if name.startswith(dname) and flag in "?!": + isDir = name.endswith(("/", "\\")) + if isDir: + name = name[:-1] + if name in names: + names[name] = self.canBeAdded + if isDir: + # it's a directory + for nname in names: + if nname.startswith(name): + names[nname] = self.canBeAdded if flag not in "?!": self.statusCache[name] = self.canBeCommitted self.statusCache[dirName] = self.canBeCommitted @@ -1170,10 +1167,8 @@ entries.extend(Utilities.direntries(name, True, pat)) for entry in entries: - try: + with contextlib.suppress(OSError): os.remove(entry) - except OSError: - pass def vcsCommandLine(self, name): """ @@ -1388,15 +1383,16 @@ ] ignoreName = os.path.join(name, Git.IgnoreFileName) - if os.path.exists(ignoreName): - res = E5MessageBox.yesNo( + res = ( + E5MessageBox.yesNo( self.__ui, self.tr("Create {0} file").format(ignoreName), self.tr("""<p>The file <b>{0}</b> exists already.""" """ Overwrite it?</p>""").format(ignoreName), icon=E5MessageBox.Warning) - else: - res = True + if os.path.exists(ignoreName) else + True + ) if res: try: # create a .gitignore file @@ -3576,10 +3572,7 @@ cfgFile = os.path.join(repodir, self.adminDir, "config") if not os.path.exists(cfgFile): # create an empty one - try: - with open(cfgFile, "w"): - pass - except OSError: + with contextlib.suppress(OSError), open(cfgFile, "w"): pass self.repoEditor = MiniEditor(cfgFile, "Properties") self.repoEditor.show() @@ -3598,14 +3591,10 @@ else: firstName, lastName, email = ( "Firstname", "Lastname", "email_address") - try: - with open(cfgFile, "w") as f: - f.write("[user]\n") - f.write(" name = {0} {1}\n".format(firstName, lastName)) - f.write(" email = {0}\n".format(email)) - except OSError: - # ignore these - pass + with contextlib.suppress(OSError), open(cfgFile, "w") as f: + f.write("[user]\n") + f.write(" name = {0} {1}\n".format(firstName, lastName)) + f.write(" email = {0}\n".format(email)) self.userEditor = MiniEditor(cfgFile, "Properties") self.userEditor.show()