Wed, 13 Jul 2022 14:55:47 +0200
Reformatted the source code using the 'Black' utility.
9144
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
1 | # -*- coding: utf-8 -*- |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
2 | |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
3 | # Copyright (c) 2022 Detlev Offenbach <detlev@die-offenbachs.de> |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
4 | # |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
5 | |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
6 | """ |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
7 | Module implementing a dialog to enter the virtual environment upgrade |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
8 | parameters. |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
9 | """ |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
10 | |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
11 | import re |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
12 | |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
13 | from PyQt6.QtCore import pyqtSlot, QProcess, QTimer |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
14 | from PyQt6.QtWidgets import QDialog, QDialogButtonBox |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
15 | |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
16 | from EricWidgets.EricPathPicker import EricPathPickerModes |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
17 | |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
18 | from .Ui_VirtualenvUpgradeConfigurationDialog import ( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
19 | Ui_VirtualenvUpgradeConfigurationDialog, |
9144
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
20 | ) |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
21 | |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
22 | import Globals |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
23 | import Preferences |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
24 | import Utilities |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
25 | |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
26 | |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
27 | class VirtualenvUpgradeConfigurationDialog( |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
28 | QDialog, Ui_VirtualenvUpgradeConfigurationDialog |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
29 | ): |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
30 | """ |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
31 | Class implementing a dialog to enter the virtual environment upgrade |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
32 | parameters. |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
33 | """ |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
34 | |
9144
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
35 | def __init__(self, envName, envPath, parent=None): |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
36 | """ |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
37 | Constructor |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
38 | |
9144
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
39 | @param envName name of the environment to be upgraded |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
40 | @type str |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
41 | @param envPath directory of the environment to be upgraded |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
42 | @type str |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
43 | @param parent reference to the parent widget (defaults to None) |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
44 | @type QWidget (optional) |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
45 | """ |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
46 | super().__init__(parent) |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
47 | self.setupUi(self) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
48 | |
9144
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
49 | self.pythonExecPicker.setMode(EricPathPickerModes.OPEN_FILE_MODE) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
50 | self.pythonExecPicker.setWindowTitle(self.tr("Python Interpreter")) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
51 | self.pythonExecPicker.setDefaultDirectory(Globals.getPythonExecutable()) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
52 | |
9144
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
53 | self.envNameLabel.setText(envName) |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
54 | self.envDirectoryLabel.setText(envPath) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
55 | |
9144
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
56 | self.__versionRe = re.compile(r""".*?(\d+\.\d+\.\d+).*""") |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
57 | |
9144
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
58 | self.upgradePythonCheckBox.toggled.connect(self.__updateOkButton) |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
59 | self.upgradeDepsCheckBox.toggled.connect(self.__updateOkButton) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
60 | self.pythonExecPicker.textChanged.connect(self.__updateUpgradeDepsCheckBox) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
61 | |
9144
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
62 | self.__updateUpgradeDepsCheckBox() |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
63 | |
9144
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
64 | msh = self.minimumSizeHint() |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
65 | self.resize(max(self.width(), msh.width()), msh.height()) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
66 | |
9144
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
67 | def __getPyvenvVersion(self): |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
68 | """ |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
69 | Private method to determine the version of the venv module. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
70 | |
9144
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
71 | @return tuple containing the venv modules version |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
72 | @rtype tuple of (int, int, int) |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
73 | """ |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
74 | calls = [] |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
75 | if self.pythonExecPicker.text(): |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
76 | calls.append((self.pythonExecPicker.text(), ["-m", "venv"])) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
77 | calls.extend( |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
78 | [ |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
79 | (Globals.getPythonExecutable(), ["-m", "venv"]), |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
80 | ("python3", ["-m", "venv"]), |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
81 | ("python", ["-m", "venv"]), |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
82 | ] |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
83 | ) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
84 | |
9144
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
85 | proc = QProcess() |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
86 | for prog, args in calls: |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
87 | proc.start(prog, args) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
88 | |
9144
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
89 | if not proc.waitForStarted(5000): |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
90 | # try next entry |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
91 | continue |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
92 | |
9144
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
93 | if not proc.waitForFinished(5000): |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
94 | # process hangs, kill it and try next entry |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
95 | QTimer.singleShot(2000, proc.kill) |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
96 | proc.waitForFinished(3000) |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
97 | continue |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
98 | |
9144
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
99 | if proc.exitCode() not in [0, 2]: |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
100 | # returned with error code, try next |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
101 | continue |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
102 | |
9144
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
103 | proc.start(prog, ["--version"]) |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
104 | proc.waitForFinished(5000) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
105 | output = str( |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
106 | proc.readAllStandardOutput(), |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
107 | Preferences.getSystem("IOEncoding"), |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
108 | "replace", |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
109 | ).strip() |
9144
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
110 | match = re.match(self.__versionRe, output) |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
111 | if match: |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
112 | return Globals.versionToTuple(match.group(1)) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
113 | |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
114 | return (0, 0, 0) # dummy version tuple |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
115 | |
9144
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
116 | @pyqtSlot() |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
117 | def __updateUpgradeDepsCheckBox(self): |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
118 | """ |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
119 | Private slot to set the enabled state of the button depending |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
120 | on the version of the given Python interpreter. |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
121 | """ |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
122 | pyvenvVersion = self.__getPyvenvVersion() |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
123 | if pyvenvVersion >= (3, 9, 0): |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
124 | self.upgradeDepsCheckBox.setEnabled(True) |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
125 | else: |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
126 | self.upgradeDepsCheckBox.setEnabled(False) |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
127 | self.upgradeDepsCheckBox.setChecked(False) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
128 | |
9144
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
129 | @pyqtSlot() |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
130 | def __updateOkButton(self): |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
131 | """ |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
132 | Private slot to set the enabled state of the OK button. |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
133 | """ |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
134 | self.buttonBox.button(QDialogButtonBox.StandardButton.Ok).setEnabled( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
135 | self.upgradePythonCheckBox.isChecked() |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
136 | or self.upgradeDepsCheckBox.isChecked() |
9144
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
137 | ) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
138 | |
9144
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
139 | def getData(self): |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
140 | """ |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
141 | Public method to retrieve the dialog data. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
142 | |
9144
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
143 | @return tuple containing the selected python executable, the list of |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
144 | arguments and a flag indicating to write a log file |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
145 | @rtype tuple of (str, list of str, bool) |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
146 | """ |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
147 | args = ["-m", "venv"] |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
148 | if self.upgradePythonCheckBox.isChecked(): |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
149 | args.append("--upgrade") |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
150 | if self.upgradeDepsCheckBox.isChecked(): |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
151 | args.append("--upgrade-deps") |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
152 | args.append(self.envDirectoryLabel.text()) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
153 | |
9144
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
154 | return ( |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
155 | Utilities.toNativeSeparators(self.pythonExecPicker.text()), |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
156 | args, |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
157 | self.logCheckBox.isChecked(), |
135240382a3e
Virtual Environments
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
158 | ) |