Caching PyPI Proxy
==================

Use proxypypi to set up a caching proxy to PyPI (https://pypy.python.org/) to:

1. make your installs reslilient against Internet/PyPI issues,
2. speed up your installs significantly (after the first one),
3. prevent problems installing packages that are removed from distribution by
   the author,
4. allow installation of packages from within a firewalled environment where
   the host performing the installation does not have Internet access, and
5. allow hosting and installation of private packages.

Usage
-----

Setup of proxypypi requires:

1. "pip install proxypypi"
2. cd to some directory you would like files to be cached in
3. proxypypi run

There are some command-line arguments (see "proxypypi -h") that allow some
run-time behaviour control. Notably "-d" which can configure the directory
to cache in.

Additionally the proxy may run in the background, in which case you need to
supply three additional command-line arguments: "-P" (PID file), "-l" (log
file) and "-o" (console output file) and use one of the daemon control commands
instead of "run". See "proxypypi -h" for the commands.

Once running you may perform pip installs using the proxy by including the
proxy in the pip command line using the "-i" argument:

   pip install -i http://proxy_host:proxy_port/simple/ package_to_install

Any packages not cached will be fetched into the cache and the install will
continue as normal.

Upgrading Cached Packages
-------------------------

This isn't done yet :-)
