src/eric7/VirtualEnv/VirtualenvUpgradeConfigurationDialog.py

Sun, 18 Dec 2022 19:33:46 +0100

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Sun, 18 Dec 2022 19:33:46 +0100
branch
eric7
changeset 9624
b47dfa7a137d
parent 9473
3f23dbf37dbe
child 9653
e67609152c5e
permissions
-rw-r--r--

Refactored the Utilities and Globals modules in order to enhance the maintainability.

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

eric ide

mercurial