[Distutils] setup_requires not caching downloaded packages?
Barry Warsaw
barry at python.org
Fri Jun 26 23:08:24 CEST 2009
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
-------------- next part --------------
A non-text attachment was scrubbed...
Name: PGP.sig
Type: application/pgp-signature
Size: 832 bytes
Desc: This is a digitally signed message part
URL: <http://mail.python.org/pipermail/distutils-sig/attachments/20090626/acf569c9/attachment-0001.pgp>
More information about the Distutils-SIG
mailing list