ipython/ipython

Built-in magic commands do not escape spaces in path

开放

#12,896 创建于 2021年4月8日

 (2 条评论) (0 个反应) (0 位负责人)Python (4,400 个派生)batch import
bughelp wantedmagics

仓库指标

星标
 (16,095 个星标)
PR 合并指标
 (平均合并 11天 1小时) (30 天内合并 22 个 PR)

描述

It does work with shell commands (e.g. !pip instead of %pip), but when using the magic commands spaces are not escaped.

In macOS Big Sur, a brand new virtualenv with spaces in its path:

$ pip list
Package          Version
---------------- -------
appnope          0.1.2  
backcall         0.2.0  
decorator        5.0.6  
ipykernel        5.5.3  
ipython          7.22.0 
ipython-genutils 0.2.0  
jedi             0.18.0 
jupyter-client   6.1.12 
jupyter-core     4.7.1  
parso            0.8.2  
pexpect          4.8.0  
pickleshare      0.7.5  
pip              19.2.3 
prompt-toolkit   3.0.18 
ptyprocess       0.7.0  
Pygments         2.8.1  
PyQt5            5.15.4 
PyQt5-Qt5        5.15.2 
PyQt5-sip        12.8.1 
python-dateutil  2.8.1  
pyzmq            22.0.3 
qtconsole        5.0.3  
QtPy             1.9.0  
setuptools       41.2.0 
six              1.15.0 
tornado          6.1    
traitlets        5.0.5  
wcwidth          0.2.5  

$ ipython
Python 3.8.2 (default, Jun  2 2020, 13:57:42) 
Type 'copyright', 'credits' or 'license' for more information
IPython 7.22.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]: !pip --version
pip 19.2.3 from /Users/microbit-carlos/workspace/deleteme/really-delete/path with spaces/.venv/lib/python3.8/site-packages/pip (python 3.8)

In [2]: %pip --version
zsh:1: no such file or directory: /Users/microbit-carlos/workspace/deleteme/really-delete/path
Note: you may need to restart the kernel to use updated packages.

In [3]: pip --version
zsh:1: no such file or directory: /Users/microbit-carlos/workspace/deleteme/really-delete/path
Note: you may need to restart the kernel to use updated packages.

Closest open issue i've found is this one, but in that it looks like the spaces are escaped incorrectly? https://github.com/ipython/ipython/issues/11138

贡献者指南