Python 3支持Fabric

jet*_*har 51 fabric python-3.x

fabric(http://docs.fabfile.org/en/1.7/)是否支持Python 3.根据Python 3超级大国它还没有.如果不是,如果在Python 3中使用Django 1.5,那么最佳选择是什么.

Miš*_*išo 92

似乎Fabric的Fabric3的 Python3端口支持Python 2.7和3.4+(不再支持Python <2.7).我用一段时间作为替代品,它对我没有任何问题.

所以在Fabric 2.0准备就绪之前,可以使用这个包来代替:)

pip3 install fabric3
Run Code Online (Sandbox Code Playgroud)

  • 应该更多地回答这个答案 (6认同)

Gre*_*reg 35

目前的答案已经由@ miso.belica完成

pip install -U "fabric>2.0.0"
Run Code Online (Sandbox Code Playgroud)

旧答案(截至2013年)

来自文档:

请注意,所有文档目前都是以Python 2.5用户编写的,但着眼于最终的Python 3.x兼容性

或者更具体:

最终的Python 3.x兼容性

看起来Python3对Fabric的支持有点粘,依赖于另一个开源库,paramiko与python3兼容.截至目前,主版本支持python 3.

可能值得搞乱,然后在其上构建您的结构实例,而不是从pip获取它.

  • Paramiko现在支持python 3.据推测,面料不会落后. (13认同)
  • "PYTHON 3超级大国之墙"https://python3wos.appspot.com/目前没有说. (2认同)

Jer*_*y T 17

您还可以为fabric创建一个单独的python2.7 virtualenv:

sudo virtualenv --no-site-packages -p /usr/bin/python fabric-env
source /var/www/APPNAME/fabric-env/bin/activate
sudo /var/www/APPNAME/fabric-env/bin/pip install fabric
deactivate
Run Code Online (Sandbox Code Playgroud)

然后:

/var/www/APPNAME/fabric-env/bin/fab -f /var/www/APPNAME/fabfile.py FAB_COMMAND
Run Code Online (Sandbox Code Playgroud)


Jer*_*one 7

似乎Fabric正在进行重写,而Fabric 2.0将与python 3.x兼容.至少这是我在下面的路线图之间读到的内容.但是,我找不到Fabric 2.0存储库或分支,因此,很难完全确认.

http://www.fabfile.org/roadmap.html