On Fri, Jan 17, 2014 at 1:45 PM, Hannes Schmidt <hannes@ucsc.edu> wrote:
Thank you for your suggestions, Donald. They are both feasible but they feel like workarounds to me.
Manually listing transitive dependencies seems like a step backwards to me. Isn't the whole point of setuptools/distutils that each component manages its own list of dependencies? How will this scale to dozens of transitive dependencies and busy development teams where dependencies are revved frequently. I really liked what Maven did for Java and therefore liked what pip is trying to do for Python.
I haven't used --find-links yet so I may be wrong but tarring up packages and serving them by a web server is additional work that I'd rather avoid. It just creates yet another copy of the package and requires maintaining an additional server component.
I loved the fact that I could point pip directly at my source repos for both my top-level projects as well as their dependencies. That seemed like a perfect fit for an interpreted language like Python where packages are distributed in source form. Removing dependency_links makes that feature useless to me because it doesn't extend to dependencies, only top level components.
IIUC a dependency link is the same as passing --find-links=x for that URL. I understand this doesn't exactly solve your problem. Your internal projects are in private bitbucket repositories?