78 |
78 |
79 msg = "" |
79 msg = "" |
80 |
80 |
81 with EricOverrideCursor(): |
81 with EricOverrideCursor(): |
82 pip = ericApp().getObject("Pip") |
82 pip = ericApp().getObject("Pip") |
83 pyqtUpdateAvailable, pyqtVersionsData = pip.checkPackageOutdated( |
83 outdatedVersionsData = pip.checkPackagesOutdated( |
84 "pyqt6", "system>", interpreter=sys.executable |
84 ["pyqt6", "eric-ide"], "<system>", interpreter=sys.executable |
85 ) |
|
86 ericUpdateAvailable, ericVersionsData = pip.checkPackageOutdated( |
|
87 "eric-ide", "system>", interpreter=sys.executable |
|
88 ) |
85 ) |
89 |
86 |
90 if pyqtUpdateAvailable or ericUpdateAvailable: |
87 pyqtVersionsData = [ |
|
88 v for v in outdatedVersionsData if v[0].lower().startswith("pyqt6") |
|
89 ] |
|
90 ericVersionsData = [ |
|
91 v for v in outdatedVersionsData if v[0].lower().startswith("eric-ide") |
|
92 ] |
|
93 |
|
94 if bool(pyqtVersionsData) or bool(ericVersionsData): |
91 self.buttonBox.removeButton(self.__checkUpdateButton) |
95 self.buttonBox.removeButton(self.__checkUpdateButton) |
92 self.__checkUpdateButton = None |
96 self.__checkUpdateButton = None |
93 else: |
97 else: |
94 msg = self.tr("No upgrades available.") |
98 msg = self.tr("No upgrades available.") |
95 |
99 |
96 if ericUpdateAvailable: |
100 if bool(ericVersionsData): |
97 self.__upgradeEricButton = self.buttonBox.addButton( |
101 self.__upgradeEricButton = self.buttonBox.addButton( |
98 upgradeButtonTemplate.format("eric7"), |
102 upgradeButtonTemplate.format("eric7"), |
99 QDialogButtonBox.ButtonRole.ActionRole, |
103 QDialogButtonBox.ButtonRole.ActionRole, |
100 ) |
104 ) |
101 self.__upgradeEricButton.clicked.connect(self.__ui.upgradeEric) |
105 self.__upgradeEricButton.clicked.connect(self.__ui.upgradeEric) |
102 msg += headerTemplate.format("eric7") |
106 msg += headerTemplate.format("eric7") |
103 msg += tableTemplate.format(entryTemplate.format(*ericVersionsData[0])) |
107 msg += tableTemplate.format(entryTemplate.format(*ericVersionsData[0])) |
104 |
108 |
105 if pyqtUpdateAvailable: |
109 if bool(pyqtVersionsData): |
106 self.__upgradePyQtButton = self.buttonBox.addButton( |
110 self.__upgradePyQtButton = self.buttonBox.addButton( |
107 upgradeButtonTemplate.format("PyQt6"), |
111 upgradeButtonTemplate.format("PyQt6"), |
108 QDialogButtonBox.ButtonRole.ActionRole, |
112 QDialogButtonBox.ButtonRole.ActionRole, |
109 ) |
113 ) |
110 self.__upgradePyQtButton.clicked.connect(self.__ui.upgradePyQt) |
114 self.__upgradePyQtButton.clicked.connect(self.__ui.upgradePyQt) |
111 msg += headerTemplate.format("PyQt6") |
115 msg += headerTemplate.format("PyQt6") |
112 msg += tableTemplate.format( |
116 msg += tableTemplate.format( |
113 "".join(entryTemplate.format(*v) for v in pyqtVersionsData) |
117 "".join(entryTemplate.format(*v) for v in pyqtVersionsData) |
114 ) |
118 ) |
115 |
119 |
116 if ericUpdateAvailable and pyqtUpdateAvailable: |
120 if bool(ericVersionsData) and bool(pyqtVersionsData): |
117 self.__upgradeBothButton = self.buttonBox.addButton( |
121 self.__upgradeBothButton = self.buttonBox.addButton( |
118 upgradeButtonTemplate.format(self.tr("Both")), |
122 upgradeButtonTemplate.format(self.tr("Both")), |
119 QDialogButtonBox.ButtonRole.ActionRole, |
123 QDialogButtonBox.ButtonRole.ActionRole, |
120 ) |
124 ) |
121 self.__upgradeBothButton.clicked.connect(self.__ui.upgradeEricPyQt) |
125 self.__upgradeBothButton.clicked.connect(self.__ui.upgradeEricPyQt) |