--- a/eric7/PluginManager/PluginManager.py Wed Jun 15 09:44:07 2022 +0200 +++ b/eric7/PluginManager/PluginManager.py Thu Jun 16 18:28:59 2022 +0200 @@ -13,10 +13,10 @@ import types import importlib import contextlib +import datetime +import pathlib -from PyQt6.QtCore import ( - pyqtSignal, QObject, QDate, QFile, QFileInfo, QUrl, QIODevice -) +from PyQt6.QtCore import pyqtSignal, QObject, QFile, QUrl, QIODevice from PyQt6.QtGui import QPixmap from PyQt6.QtNetwork import ( QNetworkAccessManager, QNetworkRequest, QNetworkReply @@ -1247,18 +1247,18 @@ return elif period in [1, 2, 3]: - lastModified = QFileInfo(self.pluginRepositoryFile).lastModified() - if lastModified.isValid() and lastModified.date().isValid(): - lastModifiedDate = lastModified.date() - now = QDate.currentDate() - if ( - (period == 1 and lastModifiedDate.day() == now.day()) or - (period == 2 and lastModifiedDate.daysTo(now) < 7) or - (period == 3 and (lastModifiedDate.daysTo(now) < - lastModifiedDate.daysInMonth())) - ): - # daily, weekly, monthly - return + lastModified = datetime.datetime.fromtimestamp( + pathlib.Path(self.pluginRepositoryFile).stat().st_mtime + ) + now = datetime.datetime.now() + delta = now - lastModified + if ( + (period == 1 and lastModified.date().day == now.date().day) or + (period == 2 and delta.days < 7) or + (period == 3 and delta.days < 30) + ): + # daily, weekly, monthly + return self.downLoadRepositoryFile()