Ok I have submitted a patch here
http://bugs.python.org/setuptools/issue32
I have added a test where I played with two indexes: Pypi and another custom one, that hold a package version
PyPI don't.
I changed the code accordingly, and recorded all urllib2.urlopen input/output into a mapping saved in a shelve file,
so the test can work without external calls. (maybe this could be pushed in a helper in the sandbox)
I have also added a deprecation warning, but I don't know if this is something you want..
I have tested it successfully with several buildouts and I will test it more this week, together with your latest bug fixes.
Tarek