eric7/PipInterface/PipFreezeDialog.py

branch
eric7
changeset 8976
ca442cd49b9e
parent 8881
54e42bc2437a
equal deleted inserted replaced
8975:ae4c3da05550 8976:ca442cd49b9e
64 @param e close event 64 @param e close event
65 @type QCloseEvent 65 @type QCloseEvent
66 """ 66 """
67 e.accept() 67 e.accept()
68 68
69 @pyqtSlot(bool) 69 @pyqtSlot()
70 def on_localCheckBox_clicked(self, checked): 70 def on_localCheckBox_clicked(self):
71 """ 71 """
72 Private slot handling the switching of the local mode. 72 Private slot handling the switching of the local mode.
73 73 """
74 @param checked state of the local check box 74 self.__refresh()
75 @type bool 75
76 @pyqtSlot()
77 def on_userCheckBox_clicked(self):
78 """
79 Private slot handling the switching of the user-site mode.
76 """ 80 """
77 self.__refresh() 81 self.__refresh()
78 82
79 @pyqtSlot(str) 83 @pyqtSlot(str)
80 def on_requirementsFilePicker_textChanged(self, txt): 84 def on_requirementsFilePicker_textChanged(self, txt):
133 """ 137 """
134 self.requirementsEdit.clear() 138 self.requirementsEdit.clear()
135 self.__requirementsAvailable = False 139 self.__requirementsAvailable = False
136 self.__environmentName = venvName 140 self.__environmentName = venvName
137 141
138 interpreter = self.__pip.getVirtualenvInterpreter(venvName) 142 fileName = (
139 if not interpreter: 143 Utilities.toNativeSeparators(self.requirementsFilePicker.text())
140 return 144 if self.requirementsFilePicker.text() else
141 145 ""
142 args = ["-m", "pip", "freeze"] 146 )
143 if self.localCheckBox.isChecked():
144 args.append("--local")
145 if self.requirementsFilePicker.text():
146 fileName = Utilities.toNativeSeparators(
147 self.requirementsFilePicker.text())
148 if os.path.exists(fileName):
149 args.append("--requirement")
150 args.append(fileName)
151 147
152 with EricOverrideCursor(): 148 with EricOverrideCursor():
153 success, output = self.__pip.runProcess(args, interpreter) 149 specifiers = self.__pip.getFrozenPackages(
150 venvName, localPackages=self.localCheckBox.isChecked(),
151 usersite=self.userCheckBox.isChecked(), requirement=fileName)
154 152
155 if success: 153 if specifiers:
156 self.requirementsEdit.setPlainText(output) 154 self.requirementsEdit.setPlainText(
155 "\n".join(specifiers) + "\n")
157 self.__requirementsAvailable = True 156 self.__requirementsAvailable = True
158 else: 157 else:
159 self.requirementsEdit.setPlainText( 158 self.requirementsEdit.setPlainText(self.tr(
160 self.tr("No output generated by 'pip freeze'.")) 159 "No package specifiers generated by 'pip freeze'.")
160 )
161 161
162 self.__updateButtons() 162 self.__updateButtons()
163 163
164 self.__requirementsEdited = False 164 self.__requirementsEdited = False
165 165

eric ide

mercurial