Hi Zooko,

On Jun 23, 2009, at 11:42 AM, Zooko Wilcox-O'Hearn wrote:

What is the download cache?

It's where buildout caches packages it downloads and it's very handy because we can tell buildout to use a pre-defined download cache and to never download anything from the intarwebs. Except that this doesn't work for setup_requires packages, so that seems like a bug in buildout. We really don't want to add those to install_requires because the clients of our libraries don't care.

I have a guess. If you are installing with the setuptools "install" command, then the things which are "install_requires" get installed into some target location, but things which are build_requires get installed into the PWD.

Right, that's another thing I don't particularly like about setup_requires. I don't like those packages polluting my pwd.

(If you don't specify a target, then it is the system site- packages. In my build system [1], we typically don't use "install" and instead use "develop" with a --prefix argument which specifies the target. I assume virtualenv does something similar.)

I think so. We use buildout, which has the moral equivalent of 'develop'.

Therefore, a later build will have its install_requires already satisfied (if it is using the same installation target), but its build_requirements will not be satisfied.

Right.

If that's what's going on then a solution might involve pre- installing setuptools_bzr onto the build system, or patching setuptools to specify a location for build requirements and re-using that location.

We could pre-install setuptools_bzr if we built an Ubuntu package for it. I think the right thing for us is to look into patching buildout so that it can get its setup_requires from its download cache.

Cheers,
-Barry

Attachment: PGP.sig
Description: This is a digitally signed message part

_______________________________________________
Distutils-SIG maillist  -  [email protected]
http://mail.python.org/mailman/listinfo/distutils-sig

Reply via email to