Bug#764380: python-debian: deb822.Changes() fails with io.open() for signed *.changes (regression)

Stephan Sürken absurd at debian.org
Tue Oct 7 17:35:23 UTC 2014


Package: python-debian
Version: 0.1.24
Severity: important

Dear maintainers,

(s.th. like) this

---
files = debian.deb822.Changes(io.open(sys.argv[1], "r", encoding="UTF-8")).get("Files", [])
---

results in

---
Traceback (most recent call last):
  File "./c.py", line 8, in <module>
    files = debian.deb822.Changes(io.open(sys.argv[1], "r", encoding="UTF-8")).get("Files", [])
  File "/usr/lib/python2.7/dist-packages/debian/deb822.py", line 1243, in __init__
    raw_text.write(b"\n".join(gpg_pre_lines))
TypeError: 'unicode' does not have the buffer interface
---

on a signed changes file. Just using 'open()' works fine.

Not sure if this is not supposed to be used this way (?), but
it's definitely a regression (works just fine in wheezy) so code
that uses it that way in wheezy will break in jessie.

Could you please advice on this -- i.e. is it a bug, or do I
need to change my code?

Thx!

Stephan
-- System Information:
Debian Release: jessie/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 3.16-0.bpo.2-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages python-debian depends on:
ii  python-chardet  2.2.1-2
ii  python-six      1.8.0-1
pn  python:any      <none>

Versions of packages python-debian recommends:
ii  python-apt  0.9.3.10

Versions of packages python-debian suggests:
ii  gpgv  1.4.18-4

-- no debconf information



More information about the pkg-python-debian-maint mailing list