mirror of
https://github.com/servo/servo.git
synced 2025-06-06 16:45:39 +00:00
Ensure virtualenv activates.
There are two changes:
* remove quoting which causes virtuaenv not activate
* check virtualenv actually activated
If the quoting added in the fix in #8394 (4ff8d3ad9c
) kicks in, it
causes virtualenv to fail to activate.
For the common case it is no op:
```python
>>> from pipes import quote
>>> print quote('common/case')
common/case
```
When the path actually needs quoting, this is what happens:
```python
>>> print quote('test spaces')
'test spaces'
>>> print quote('windows\\path')
'windows\\path'
```
Note the embedded quotes.
Virtualenv in activate_this.py uses __file__ to build the path that
should be added to PATH:
```python
>>> print os.getcwd()
C:\software\git
>>> print os.path.abspath(quote('windows\\path'))
C:\software\git\'windows\path'
>>>
```
The constructed path is not valid. Adding it at the beginning of PATH
has no effect. This issue affects any case when the call to `quote`
kicks in.
This commit is contained in:
parent
f9608022ca
commit
7002fbedd7
1 changed files with 5 additions and 2 deletions
|
@ -9,7 +9,6 @@ import platform
|
|||
import subprocess
|
||||
import sys
|
||||
from distutils.spawn import find_executable
|
||||
from pipes import quote
|
||||
|
||||
SEARCH_PATHS = [
|
||||
os.path.join("python", "mach"),
|
||||
|
@ -111,7 +110,11 @@ def _activate_virtualenv(topdir):
|
|||
except (subprocess.CalledProcessError, OSError):
|
||||
sys.exit("Python virtualenv failed to execute properly.")
|
||||
|
||||
execfile(activate_path, dict(__file__=quote(activate_path)))
|
||||
execfile(activate_path, dict(__file__=activate_path))
|
||||
|
||||
python = find_executable("python")
|
||||
if python is None or not python.startswith(virtualenv_path):
|
||||
sys.exit("Python virtualenv failed to activate.")
|
||||
|
||||
# TODO: Right now, we iteratively install all the requirements by invoking
|
||||
# `pip install` each time. If it were the case that there were conflicting
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue