At 02:09 PM 7/9/2007 -0400, Jim Fulton wrote:
On Jul 9, 2007, at 1:45 PM, Phillip J. Eby wrote:
At 01:10 PM 7/9/2007 -0400, Jim Fulton wrote:
IMO, they shouldn't have the same precedence. IMO installations made with the develop command should have the highest precedence. After all, why would someone use the develop command if they didn't want to see the effects of changes they're making in development. Could we can change the develop command to generate a different symbol, like REALLY_DEVELOP_DIST and give it the highest precedence? (Tempted to wink, but not really kidding...) It appears that it doesn't actually generate anything atm, but I think it should.
I could have .egg-link files use a different precedence, but I wouldn't make it the highest. Develop eggs have the lowest precedence for two reasons: one, easy_install prefers to use eggs it can copy,
Why does this matter to users?
It doesn't! -- that's precisely why easy_install is free to pick the one that's easier for it. :)
I suppose that any time we select among two distributions with the same version based on precedence, we should issue a warning, at least when one of them is a develop dist.
That might indeed be doable... at least for tools like buildout and easy_install. I'm not sure it's worth doing so in pkg_resources.
This was actually more of a happy coincidence than something I planned ahead of time, but it does occur in practice. :)
It made me very unhappy when I first started working with setuptools. I use develop eggs a lot and I definately expect them to be used.
If you're not installing them with -m, they will be used, because they'll be the one in easy-install.pth.
Note that in any event, if we make platform-specific eggs have higher precedence, then platform-specific built eggs will have to take precedence over develop eggs, because "true" develop eggs are never viewed as "platform-specific" (because they have no platform name in their .egg-info directory name).
This argument sounds overly pedantic to me.
It's actually a comment about the *implementation*. Develop eggs *can't* include version or platform information in their .egg-info directory names, or it makes them useless.