At 11:15 AM 6/22/2006 -0400, Jim Fulton wrote:
I find this a bit mysterious. I thought easy_install wouldn't search the find links and index if existing distributions meet a requirement unless --upgrade was used.
--upgrade means "look for things remotely, even if you can satisfy the requirements locally"
Is special consideration given to file URLs?
Yes, in that they are considered "local".
If I supply the upgrade option, I get:
[jim@ds9 tmp]$ /usr/local/python/2.4/bin/easy_install -q \ -f file:///home/jim/tmp/links/index.html -m -U - deggs demo Couldn't find index page for 'demo' (maybe misspelled?) Scanning index of all packages (this may take a while)
[jim@ds9 tmp]$ ls eggs demo-1.0-py2.4.egg demo-1.1-py2.4.egg demoneeded-1.0-py2.4.egg
So when I said upgrade, the index was checked, but when I installed the distributions initially, it wasn't. Why? Why is upgrade handled differently from an initial install.
Because upgrade really just overrides easy_install's preference to only look at the local machine to resolve dependencies.
Also, it's a bit surprising that I didn't get the available upgrade for demoneeded. Is that intended? Are there plans for a recursive upgrade option?
The answer to both questions is "more or less." :) It's intended only in the sense that that's just what it does, and I don't plan to change it. There are plans for recursive upgrade of some kind, but not to be added to easy_install. Instead, that would be part of "nest", whenever I actually get some work done on it.
"nest" is supposed to be part of setuptools 0.7, but 0.6 final isn't out yet.