Activity log for bug #782414

Date Who What changed Old value New value Message
2011-05-13 21:48:06 Zooko Wilcox-O'Hearn bug added bug
2011-05-13 21:52:43 Zooko Wilcox-O'Hearn bug watch added http://tahoe-lafs.org/trac/tahoe-lafs/ticket/1383
2011-05-13 21:52:43 Zooko Wilcox-O'Hearn bug task added foolscap
2011-05-13 22:16:16 Bug Watch Updater foolscap: status Unknown New
2011-05-13 22:18:05 Zooko Wilcox-O'Hearn bug watch added http://foolscap.lothar.com/trac/ticket/174
2011-05-13 22:19:06 Zooko Wilcox-O'Hearn affects foolscap tahoe-lafs
2011-05-13 22:19:20 Zooko Wilcox-O'Hearn bug task added foolscap
2011-05-13 22:59:00 Julian Taylor foolscap (Ubuntu): status New In Progress
2011-05-13 22:59:03 Julian Taylor foolscap (Ubuntu): assignee Julian Taylor (jtaylor)
2011-05-13 23:31:53 Bug Watch Updater foolscap: status Unknown New
2011-05-14 01:05:08 Stefano Rivera foolscap (Ubuntu): importance Undecided High
2011-05-14 01:05:12 Stefano Rivera foolscap (Ubuntu): importance High Undecided
2011-05-14 01:05:27 Stefano Rivera foolscap (Ubuntu): importance Undecided Medium
2011-05-14 06:01:28 knopki bug added subscriber Sergey Korolev
2011-05-14 23:23:44 Daira Hopwood bug added subscriber David-Sarah Hopwood
2011-05-16 20:05:31 Zooko Wilcox-O'Hearn marked as duplicate 769936
2011-05-19 03:22:28 Launchpad Janitor branch linked lp:debian/foolscap
2011-05-19 06:59:22 Launchpad Janitor foolscap (Ubuntu): status In Progress Fix Released
2011-05-19 07:12:19 Launchpad Janitor branch linked lp:ubuntu/foolscap
2011-05-19 08:06:32 Julian Taylor removed duplicate marker 769936
2011-05-19 08:27:09 Vish nominated for series Ubuntu Natty
2011-05-19 09:13:21 Launchpad Janitor branch linked lp:~jtaylor/ubuntu/natty/foolscap/foolscap-fix-782414
2011-05-19 12:18:29 Julian Taylor description The foolscap setup.py file (http://foolscap.lothar.com/trac/browser/setup.py?annotate=blame&rev=7c7b1185b68076cc6176ea41b5fc677445e1e45b#L75 ) says that if a package that requires foolscap requires an extra feature named "secure_connections" then foolscap requires pyOpenSSL. Other Python packages can then specify that they depend on "foolscap with its extra feature of 'secure_connections'". This is spelled "foolscap[secure_connections]". Tahoe-LAFS does this: http://tahoe-lafs.org/trac/tahoe-lafs/browser/trunk/src/allmydata/_auto_deps.py?annotate=blame&rev=4976#L21 Currently the packaging of foolscap in Natty claims that it doesn't know about the "secure_connections" feature: $ python Python 2.7.1+ (r271:86832, Apr 11 2011, 18:05:24) [GCC 4.5.2] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import pkg_resources >>> pkg_resources.require('foolscap') [foolscap 0.6.1 (/usr/lib/python2.7/dist-packages)] >>> pkg_resources.require('foolscap[secure_connections]') Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 654, in require needed = self.resolve(parse_requirements(requirements)) File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 557, in resolve requirements.extend(dist.requires(req.extras)[::-1]) File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 2180, in requires "%s has no such extra feature %r" % (self, ext) pkg_resources.UnknownExtra: foolscap 0.6.1 has no such extra feature 'secure_connections' This means that, for example, the tahoe-lafs executable that is packaged in Natty cannot start: $ tahoe --version Traceback (most recent call last): File "/usr/bin/tahoe", line 6, in <module> from pkg_resources import load_entry_point File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 2671, in <module> working_set.require(__requires__) File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 654, in require needed = self.resolve(parse_requirements(requirements)) File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 557, in resolve requirements.extend(dist.requires(req.extras)[::-1]) File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 2180, in requires "%s has no such extra feature %r" % (self, ext) pkg_resources.UnknownExtra: foolscap 0.6.1 has no such extra feature 'secure_connections' $ type tahoe tahoe is hashed (/usr/bin/tahoe) $ dpkg --search /usr/bin/tahoe tahoe-lafs: /usr/bin/tahoe $ apt-cache policy tahoe-lafs tahoe-lafs: Installed: 1.8.2-0ubuntu1 Candidate: 1.8.2-0ubuntu1 Version table: *** 1.8.2-0ubuntu1 0 500 http://us-east-1.ec2.archive.ubuntu.com/ubuntu/ natty/universe i386 Packages 100 /var/lib/dpkg/status By inspecting the foolscap setup.py, you can see that the stanza that declares this extra feature is inside a test for the existence of setuptools: http://foolscap.lothar.com/trac/browser/setup.py?annotate=blame&rev=7c7b1185b68076cc6176ea41b5fc677445e1e45b#L65 So the easiest way to fix this is probably to configure the Ubuntu packaging of foolscap to indicate that setuptools is a build-time requirement of foolscap, and then rebuild. This should produce the metadata file (named /usr/share/pyshared/foolscap-0.6.1.egg-info/requires.txt ) that indicates that this distribution of foolscap knows how to provide secure_connections, as long as it is in turn provided with pyOpenSSL. ProblemType: Bug DistroRelease: Ubuntu 11.04 Package: python-foolscap 0.6.1-1 ProcVersionSignature: Ubuntu 2.6.38-8.42-virtual 2.6.38.2 Uname: Linux 2.6.38-8-virtual i686 Architecture: i386 Date: Fri May 13 20:23:17 2011 Ec2AMI: ami-ccf405a5 Ec2AMIManifest: (unknown) Ec2AvailabilityZone: us-east-1a Ec2InstanceType: t1.micro Ec2Kernel: aki-407d9529 Ec2Ramdisk: unavailable PackageArchitecture: all ProcEnviron: LANG=en_US.UTF-8 SHELL=/bin/bash SourcePackage: foolscap UpgradeStatus: Upgraded to natty on 2011-05-13 (0 days ago) foolscap has accidentally dropped a build dependency on python-setuptools so the requires.txt is not installed. This leads to software breaking which use this setuptools feature to check if a package provides the [secure_connections] feature and a missing dependency on python-twisted. This is fixed by lp:~jtaylor/ubuntu/natty/foolscap/foolscap-fix-782414 TESTCASE: > python -c 'import pkg_resources; print pkg_resources.require("foolscap[secure_connections]")' What should happen: [foolscap 0.6.1 (/usr/lib/python2.7/dist-packages), pyOpenSSL 0.10 (/usr/lib/python2.7/dist-packages), Twisted 10.2.0 (/usr/lib/python2.7/dist-packages)] What happens: $ python -c 'import pkg_resources; print pkg_resources.require("foolscap[secure_connections]")' Traceback (most recent call last): File "<string>", line 1, in <module> File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 654, in require needed = self.resolve(parse_requirements(requirements)) File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 557, in resolve requirements.extend(dist.requires(req.extras)[::-1]) File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 2180, in requires "%s has no such extra feature %r" % (self, ext) pkg_resources.UnknownExtra: foolscap 0.6.1 has no such extra feature 'secure_connections' the dependency tahoe-lafs is broken by this (it is also broken by bug 782461 and bug 769935 unrelated to foolscap) original description: The foolscap setup.py file (http://foolscap.lothar.com/trac/browser/setup.py?annotate=blame&rev=7c7b1185b68076cc6176ea41b5fc677445e1e45b#L75 ) says that if a package that requires foolscap requires an extra feature named "secure_connections" then foolscap requires pyOpenSSL. Other Python packages can then specify that they depend on "foolscap with its extra feature of 'secure_connections'". This is spelled "foolscap[secure_connections]". Tahoe-LAFS does this: http://tahoe-lafs.org/trac/tahoe-lafs/browser/trunk/src/allmydata/_auto_deps.py?annotate=blame&rev=4976#L21 Currently the packaging of foolscap in Natty claims that it doesn't know about the "secure_connections" feature: $ python Python 2.7.1+ (r271:86832, Apr 11 2011, 18:05:24) [GCC 4.5.2] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import pkg_resources >>> pkg_resources.require('foolscap') [foolscap 0.6.1 (/usr/lib/python2.7/dist-packages)] >>> pkg_resources.require('foolscap[secure_connections]') Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 654, in require needed = self.resolve(parse_requirements(requirements)) File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 557, in resolve requirements.extend(dist.requires(req.extras)[::-1]) File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 2180, in requires "%s has no such extra feature %r" % (self, ext) pkg_resources.UnknownExtra: foolscap 0.6.1 has no such extra feature 'secure_connections' This means that, for example, the tahoe-lafs executable that is packaged in Natty cannot start: $ tahoe --version Traceback (most recent call last): File "/usr/bin/tahoe", line 6, in <module> from pkg_resources import load_entry_point File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 2671, in <module> working_set.require(__requires__) File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 654, in require needed = self.resolve(parse_requirements(requirements)) File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 557, in resolve requirements.extend(dist.requires(req.extras)[::-1]) File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 2180, in requires "%s has no such extra feature %r" % (self, ext) pkg_resources.UnknownExtra: foolscap 0.6.1 has no such extra feature 'secure_connections' $ type tahoe tahoe is hashed (/usr/bin/tahoe) $ dpkg --search /usr/bin/tahoe tahoe-lafs: /usr/bin/tahoe $ apt-cache policy tahoe-lafs tahoe-lafs: Installed: 1.8.2-0ubuntu1 Candidate: 1.8.2-0ubuntu1 Version table: *** 1.8.2-0ubuntu1 0 500 http://us-east-1.ec2.archive.ubuntu.com/ubuntu/ natty/universe i386 Packages 100 /var/lib/dpkg/status By inspecting the foolscap setup.py, you can see that the stanza that declares this extra feature is inside a test for the existence of setuptools: http://foolscap.lothar.com/trac/browser/setup.py?annotate=blame&rev=7c7b1185b68076cc6176ea41b5fc677445e1e45b#L65 So the easiest way to fix this is probably to configure the Ubuntu packaging of foolscap to indicate that setuptools is a build-time requirement of foolscap, and then rebuild. This should produce the metadata file (named /usr/share/pyshared/foolscap-0.6.1.egg-info/requires.txt ) that indicates that this distribution of foolscap knows how to provide secure_connections, as long as it is in turn provided with pyOpenSSL. ProblemType: Bug DistroRelease: Ubuntu 11.04 Package: python-foolscap 0.6.1-1 ProcVersionSignature: Ubuntu 2.6.38-8.42-virtual 2.6.38.2 Uname: Linux 2.6.38-8-virtual i686 Architecture: i386 Date: Fri May 13 20:23:17 2011 Ec2AMI: ami-ccf405a5 Ec2AMIManifest: (unknown) Ec2AvailabilityZone: us-east-1a Ec2InstanceType: t1.micro Ec2Kernel: aki-407d9529 Ec2Ramdisk: unavailable PackageArchitecture: all ProcEnviron: LANG=en_US.UTF-8 SHELL=/bin/bash SourcePackage: foolscap UpgradeStatus: Upgraded to natty on 2011-05-13 (0 days ago)
2011-05-19 22:54:55 Scott Kitterman bug task added foolscap (Ubuntu Natty)
2011-05-20 02:59:22 Micah Gersten foolscap (Ubuntu Natty): importance Undecided Medium
2011-05-20 02:59:22 Micah Gersten foolscap (Ubuntu Natty): status New Incomplete
2011-05-20 03:05:47 Micah Gersten foolscap (Ubuntu Natty): assignee Julian Taylor (jtaylor)
2011-05-30 11:58:53 Martin Pitt foolscap (Ubuntu Natty): status Incomplete Triaged
2011-05-30 12:02:14 Launchpad Janitor branch linked lp:ubuntu/natty/foolscap
2011-05-30 12:02:45 Martin Pitt foolscap (Ubuntu Natty): status Triaged Fix Committed
2011-06-06 08:44:38 Martin Pitt bug added subscriber Ubuntu Stable Release Updates Team
2011-06-06 08:44:41 Martin Pitt bug added subscriber SRU Verification
2011-06-06 08:44:45 Martin Pitt tags apport-bug ec2-images i386 natty apport-bug ec2-images i386 natty verification-needed
2011-06-06 09:13:17 Launchpad Janitor branch linked lp:ubuntu/natty-proposed/foolscap
2011-07-18 11:18:33 Bug Watch Updater tahoe-lafs: status New Fix Released
2011-07-20 06:02:19 Martin Pitt tags apport-bug ec2-images i386 natty verification-needed apport-bug ec2-images i386 natty verification-done
2011-07-20 07:59:03 Launchpad Janitor foolscap (Ubuntu Natty): status Fix Committed Fix Released
2012-06-19 13:55:43 Bug Watch Updater foolscap: status New Fix Released