--- a/eric6/WebBrowser/Sync/FtpSyncHandler.py Fri Apr 02 11:59:41 2021 +0200 +++ b/eric6/WebBrowser/Sync/FtpSyncHandler.py Sat May 01 14:27:20 2021 +0200 @@ -9,6 +9,7 @@ import ftplib # secok import io +import contextlib from PyQt5.QtCore import ( pyqtSignal, QTimer, QFileInfo, QCoreApplication, QByteArray @@ -51,7 +52,7 @@ @param parent reference to the parent object (QObject) """ - super(FtpSyncHandler, self).__init__(parent) + super().__init__(parent) self.__state = "idle" self.__forceUpload = False @@ -83,10 +84,11 @@ self.__ftp = E5Ftp() # do proxy setup - if not Preferences.getUI("UseProxy"): - proxyType = E5FtpProxyType.NoProxy - else: - proxyType = Preferences.getUI("ProxyType/Ftp") + proxyType = ( + E5FtpProxyType.NoProxy + if not Preferences.getUI("UseProxy") else + Preferences.getUI("ProxyType/Ftp") + ) if proxyType != E5FtpProxyType.NoProxy: self.__ftp.setProxy( proxyType, @@ -169,11 +171,13 @@ # silently ignore parser errors urlInfo = None - if urlInfo and urlInfo.isValid() and urlInfo.isFile(): - if urlInfo.name() in self._remoteFiles.values(): - self.__remoteFilesFound[urlInfo.name()] = ( - urlInfo.lastModified() - ) + if ( + urlInfo and + urlInfo.isValid() and + urlInfo.isFile() and + urlInfo.name() in self._remoteFiles.values() + ): + self.__remoteFilesFound[urlInfo.name()] = urlInfo.lastModified() QCoreApplication.processEvents() @@ -391,11 +395,9 @@ if self.__idleTimer.isActive(): self.__idleTimer.stop() - try: + with contextlib.suppress(ftplib.all_errors): if self.__connected: self.__ftp.quit() - except ftplib.all_errors: - pass # ignore FTP errors because we are shutting down anyway self.__connected = False def __idleTimeout(self):