Package: python3-defaults Version: 3.2~rc1-2 Severity: important Tag: patch
I tried building deb package which requires Python 3.2 and has private modules (.py files), but received error as follows: dh_python3 -V 3.2-3.3 /usr/share/blender/2.56/scripts D: dh_python3:359: argv: ['/usr/bin/dh_python3', '-V', '3.2-3.3', '/usr/share/blender/2.56/scripts'] D: dh_python3:360: options: {'recommends': None, 'verbose': False, 'package': None, 'regexpr': None, 'guess_deps': True, 'skip_private': False, 'O': None, 'suggests': None, 'depends': None, 'vrange': ((3, 2), (3, 3)), 'no_package': None, 'arch': None} D: dh_python3:361: args: ['/usr/share/blender/2.56/scripts'] D: dh_python3:371: processing package blender2.5-gnome-support... D: dh_python3:285: package blender2.5-gnome-support details = {'compile': False, 'requires.txt': set(), 'shebangs': set(), 'private_dirs': {}, 'ext': set()} D: dh_python3:371: processing package blender2.5... D: dh_python3:285: package blender2.5 details = {'compile': False, 'requires.txt': set(), 'shebangs': set(), 'private_dirs': {'/usr/share/blender/2.56/scripts': {'compile': True}}, 'ext': set()} Traceback (most recent call last): File "/usr/bin/dh_python3", line 438, in <module> main() File "/usr/bin/dh_python3", line 378, in main dependencies.parse(stats, options) File "/usr/share/python3/debpython/depends.py", line 111, in parse if details['ext']: KeyError: 'ext' make[1]: *** [override_dh_python3] Error 1 make[1]: Leaving directory `/tmp/buildd/blender2.5-2.56.1+svn35400' make: *** [binary] Error 2 dpkg-buildpackage: error: fakeroot debian/rules binary gave error exit status 2 The following patch should fix the bug. diff -ur python3-defaults-3.2.orig/debpython/depends.py python3-defaults-3.2/debpython/depends.py --- python3-defaults-3.2.orig/debpython/depends.py 2010-12-24 04:47:49.000000000 +0900 +++ python3-defaults-3.2/debpython/depends.py 2011-03-08 20:14:12.981253997 +0900 @@ -108,7 +108,7 @@ # no hardcoded versions, but there's something to compile self.depend(MINPYCDEP) args = '' - if details['ext']: + if details.get('ext', False): # use smallest and largest version to set range extensions = sorted(details['ext']) vr = (extensions[0], extensions[-1]) @@ -116,7 +116,7 @@ vr = options.vrange if vr: args += "-V %s" % vrange_str(vr) - if details['ext']: + if details.get('ext', False): self.depend('|'.join("python%s" %\ vrepr(i) for i in details['ext'])) else: # pure modules only IRIE -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org