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, and two, develop eggs have lower precedence to prevent you thinking that your version requirements are correct when they aren't. That is, if you depend on 1.9.dev-r1201, and that picks up your development version in place of an .egg file with the same version, you won't be able to tell that your requirement is wrong. This can occur if you are working on an SVN checkout - your develop egg has the same version as the built one, but you could have changed it. This was actually more of a happy coincidence than something I planned ahead of time, but it does occur in practice. :) 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).