Installing fabric 0.9.2

Posted by bitaxis on 2010-09-21 00:00

I'm trying out fabric. Per fabric's documentation, I can install fabric via PyPM ( if I have ActivePython, and I do (on Windows Server 2003):

ActivePython (ActiveState Software Inc.) based on
Python 2.6.5 (r265:79063, Mar 20 2010, 14:22:52) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.

So when I tried it, I got the following:

E:\>pypm install fabric
error: "fabric" indirectly depends on multiple versions of "pycrypto" (2.0.1-1; 2.3-1). Whereas PyPM can only install a single version.

I then installed pycrypto first and tried install fabric again, and got the exact same error as above.


ActiveState Staff
Tue, 2010-09-21 14:17

Hi there - this is a known bug with PyPM which got fixed recently.

A new release of ActivePython (including the fixed version of PyPM) will soon be released. Until then, you can install Fabric using the following command:

pypm install "fabric<0.9.2"

bitaxis | Wed, 2010-10-27 14:24

Hi. Has a version of ActivePython that includes a fix for bug #87885 been released yet?

ActiveState Staff
Wed, 2010-10-27 14:56

Hi - no, not yet ... I intend to make a release by end of November though (because 2.7.1 is scheduled to be released mid-November). If you can't wait, shoot me an email at, I may be able to send you a private copy of the installer.

PS: ActivePython with PyPM (and this fix) was released yesterday, but fabric is not available for Python3 yet.

bitaxis | Tue, 2010-09-21 14:24

So I actually found a workaround in the current release of ActivePython that seems to work. Here's what I did:

C:\>pip install fabric
Downloading/unpacking fabric
  Downloading Fabric-0.9.2.tar.gz (90Kb): 90Kb downloaded
  Running egg_info for package fabric
    warning: no previously-included files matching '*' found under directory 'docs\_build'
Downloading/unpacking pycrypto<2.1 (from fabric)
  Downloading pycrypto-2.0.1.tar.gz (154Kb): 154Kb downloaded
  Running egg_info for package pycrypto
Downloading/unpacking paramiko>=1.7.6 (from fabric)
  Downloading (1.1Mb): 1.1Mb downloaded
  Running egg_info for package paramiko
    warning: no files found matching 'user_rsa_key' under directory 'demos'
    warning: no files found matching '' under directory 'demos'
Installing collected packages: fabric, paramiko, pycrypto
... skipped a lot of Visual Studio compiler output ...
Successfully installed fabric paramiko pycrypto

C:\>pip freeze
Warning: cannot find svn location for
## FIXME: could not find svn URL in dependency_links for this package:

Usage: fab [options] <command>[:arg1,arg2=val2,host=foo,hosts='h1;h2',...] ...

  -h, --help            show this help message and exit
  -V, --version         show program's version number and exit
  -l, --list            print list of possible commands and exit
  --shortlist           print non-verbose list of possible commands and exit
  -d COMMAND, --display=COMMAND
                        print detailed info about a given command and exit
  -r, --reject-unknown-hosts
                        reject unknown hosts
  -D, --disable-known-hosts
                        do not load user known_hosts file
  -u USER, --user=USER  username to use when connecting to remote hosts
  -p PASSWORD, --password=PASSWORD
                        password for use with authentication and/or sudo
  -H HOSTS, --hosts=HOSTS
                        comma-separated list of hosts to operate on
  -R ROLES, --roles=ROLES
                        comma-separated list of roles to operate on
  -i KEY_FILENAME       path to SSH private key file. May be repeated.
  -a, --no_agent        don't use the running SSH agent
  -k, --no-keys         don't load private key files from ~/.ssh/
  -f FABFILE, --fabfile=FABFILE
                        Python module file to import, e.g. '../'
  -w, --warn-only       warn, instead of abort, when commands fail
  -s SHELL, --shell=SHELL
                        specify a new shell, defaults to '/bin/bash -l -c'
  -c RCFILE, --config=RCFILE
                        specify location of config file to use
  --hide=LEVELS         comma-separated list of output levels to hide
  --show=LEVELS         comma-separated list of output levels to show