Package: python3-debian Version: 0.1.34 Severity: important Dear Maintainer,
When using debian_support.PackageFile with python3, it reports: ``` In [1]: from debian import debian_support In [2]: list(debian_support.PackageFile('/var/lib/apt/lists/mirrors.ustc.edu.cn_debian_dists_buster_main_binary-amd64_Packages')) --------------------------------------------------------------------------- AttributeError Traceback (most recent call last) <ipython-input-2-a7a4671a89a0> in <module>() ----> 1 list(debian_support.PackageFile('/var/lib/apt/lists/mirrors.ustc.edu.cn_debian_dists_buster_main_binary-amd64_Packages')) /usr/lib/python3/dist-packages/debian/debian_support.py in __iter__(self) 394 395 def __iter__(self): --> 396 line = self.file.readline().decode() 397 self.lineno += 1 398 pkg = [] AttributeError: 'str' object has no attribute 'decode' ``` The default file is open in text i/o, thus it produces str objects. If I use it in python2, it reports: ``` >>> from debian import debian_support >>> list(debian_support.PackageFile('/var/lib/apt/lists/mirrors.ustc.edu.cn_debian_dists_buster_main_binary-amd64_Packages')) Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/usr/lib/python2.7/dist-packages/debian/debian_support.py", line 416, in __iter__ line = self.file.readline().decode() UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 13: ordinal not in range(128) ``` The packages file has utf-8 characters, so you should use decode('utf-8')... -- System Information: Debian Release: buster/sid APT prefers testing-debug APT policy: (500, 'testing-debug'), (500, 'testing'), (100, 'unstable'), (1, 'experimental') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 4.19.0-4-amd64 (SMP w/4 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US:en (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) Versions of packages python3-debian depends on: ii python3 3.7.2-1 ii python3-chardet 3.0.4-3 ii python3-six 1.12.0-1 Versions of packages python3-debian recommends: ii python3-apt 1.8.4 Versions of packages python3-debian suggests: ii gpgv 2.2.12-1 -- no debconf information