Opened at 2009-06-22T16:41:34Z
Last modified at 2009-07-03T20:08:15Z
#745 closed defect
Debian package: Missing dependency on Debian/etch — at Version 8
Reported by: | [4-tea-2] | Owned by: | [4-tea-2] |
---|---|---|---|
Priority: | major | Milestone: | 1.5.0 |
Component: | packaging | Version: | 1.4.1 |
Keywords: | debian, packaging | Cc: | |
Launchpad Bug: |
Description (last modified by zooko)
Starting tahoe after upgrading a Debian/etch system to use the Debian Tahoe package 1.4.1-r3916 fails with this error message:
tahoe@{hostname}:~$ tahoe start Traceback (most recent call last): File "/usr/bin/tahoe", line 2, in <module> from allmydata.scripts import runner File "/usr/lib/python2.5/site-packages/allmydata/scripts/runner.py", line 9, in <module> pkg_resources.require('allmydata-tahoe') File "/usr/lib/python2.5/site-packages/pkg_resources.py", line 626, in require needed = self.resolve(parse_requirements(requirements)) File "/usr/lib/python2.5/site-packages/pkg_resources.py", line 524, in resolve raise DistributionNotFound(req) # XXX put more info here pkg_resources.DistributionNotFound: pysqlite>=2.0.5
Perhaps including python-pysqlite2 as a dependency in debian/control would fix this?
Change History (8)
comment:1 Changed at 2009-06-22T16:42:23Z by [4-tea-2]
comment:2 Changed at 2009-06-24T04:09:48Z by warner
- Component changed from unknown to packaging
- Milestone changed from undecided to 1.5.0
- Owner changed from nobody to zooko
Hrm, on python2.5, it's not supposed to declare a dependency on pysqlite (since 2.5 comes with sqlite in the standard library).
Zooko?
comment:3 Changed at 2009-06-24T04:17:03Z by warner
#728 was for adding this change. I grepped the current source code and the pysqlite requirement is guarded by an if sys.version_info < (2,5). Could you make sure that sys.version_info looks correct on your system, and that this conditional is doing the right thing?
comment:4 Changed at 2009-06-25T15:59:20Z by zooko
- Owner changed from zooko to [4-tea-2]
Assigning to [4-tea-2] to investigate.
comment:5 Changed at 2009-06-25T15:59:33Z by zooko
- Keywords debian packaging added
comment:6 Changed at 2009-06-30T18:58:19Z by warner
Incidentally, when Zooko asked me about adding this dependency declaration, I agreed to it only with the condition that it not cause exactly this sort of problem (setuptools has taught me to not trust its dependency calculations: I am constantly seeing it rebuild things which are already installed). If this turns out to be some sort of deep problem, I'll recommend that we remove the declaration.
comment:7 Changed at 2009-06-30T19:21:33Z by zooko
setuptools installs requirements that are already installed (#657 ("python ./setup.py test" rebuilds packages), #717 (unnecessary rebuild of dependencies when tahoe-deps/ is present)), but I don't think I've seen it install something which wasn't required. My guess is that [4-tea-2] installed a .deb which didn't declare a dependency on sqlite2 (possibly because the .deb is in error? Or because it was a .deb for python 2.6?), and then ran it with Python 2.5.
[4-tea-2]: which .deb of Tahoe-LAFS did you install?
Thanks!
comment:8 Changed at 2009-07-02T20:34:31Z by zooko
- Description modified (diff)
Formatted original report with wiki quoting.
Sorry, I forgot to mention that installing python-pysqlite2 manually fixed the problem.