id,summary,reporter,owner,description,type,status,priority,milestone,component,version,resolution,keywords,cc,launchpad_bug 709,"hard to run against alternate dependencies, e.g. trunk version of Foolscap",warner,warner,"For the #653 work I'm doing now (which requires a change to foolscap: [http://foolscap.lothar.com/trac/ticket/105 foolscap#105]), I need to run a Tahoe trunk tree against a Foolscap trunk tree (to test changes I'm considering putting into the upcoming foolscap release). The normal way to do this (which used to work before we switched to setuptools) was: {{{ PYTHONPATH=~/foolscap/trunk make test }}} I tried to do this yesterday, and here are the problems I ran into: * the Foolscap .egg that was built in support/lib overrides anything else on PYTHONPATH, so I must delete the .egg first * on OS-X, there's also an .egg put in the root of the tahoe tree (the #657 problem), so I must delete that one too * ""make test"" takes forever (#591) and rebuilds a Foolscap .egg before running any tests, so I use ""make quicktest"" instead * A Foolscap source tree (in my {{{~/foolscap/trunk}}} directory) does not appear to qualify as fulfilling the setuptools dependency for {{{foolscap[secure_connections]>=0.3.1}}}. {{{src/allmydata/scripts/runner.py}}} has a line which does {{{pkg_resources.require('allmydata-tahoe')}}}, and that throws a !DistributionNotFound exception. I commented that line out. * the {{{pkg_resources.load_entry_point}}}-based support/bin/tahoe script does an implicit {{{pkg_resources.require}}}, also failing because it thinks it doesn't have Foolscap available. I think the only way I can work around this is to use ""setup.py develop TARGETDIR"" on my Foolscap tree, and then set PYTHONPATH to point at TARGETDIR instead of {{{~/foolscap/trunk}}}. This is annoying. I really wish that PYTHONPATH could be used as it was originally intended, and that these eggs weren't getting in the way. ",defect,closed,major,1.11.0,packaging,1.4.1,fixed,setuptools,,821000