#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]

Sorry, I forgot to mention that installing python-pysqlite2 manually fixed the problem.

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.

Note: See TracTickets for help on using tickets.