python3-rpm-4.14.2.1-6 started returning Unicode strings instead of byte strings in order to handle Unicode properly. (See bug #1693751 for more details.) As a result, a "fedpkg lint" command dies now on any repository: $ fedpkg lint Could not execute lint: decoding str is not supported I have: python3-rpm-4.14.2.1-7.fc31.x86_64 rpmlint-1.10-22.fc31.noarch fedpkg-1.36-2.fc30.noarch
python3-rpkg-1.57-8.fc31
fixed in: python3-rpkg-1.57-8.fc31
Now it does not fail. That's great. But it reports this warning when running in a full-arch package repository (e.g. rpms/libffi): $ fedpkg --release f31 lint /usr/lib/python3.7/site-packages/pyrpkg/__init__.py:1241: UnicodeWarning: decode() called on unicode string, see https://bugzilla.redhat.com/show_bug.cgi?id=1693751 return [arch.decode('utf-8') for arch in archlist] It would be great to fix it completely.
You can try another fix at python3-rpkg-1.57-9.fc31
The warning has moved: $ rpm -q python3-rpkg python3-rpkg-1.57-9.fc31.noarch $ fedpkg --release f31 lint /usr/share/rpmlint/Pkg.py:168: UnicodeWarning: decode() called on unicode string, see https://bugzilla.redhat.com/show_bug.cgi?id=1693751 s.decode('UTF-8') rpkg code is: def is_utf8_bytestr(s): try: → s.decode('UTF-8') except UnicodeError: return False return True If decode() can recognize the variable contains is a Unicode string and emit the warning, you could you the same recognition method instead of calling decode().
(In reply to Petr Pisar from comment #5) > The warning has moved: > > $ rpm -q python3-rpkg > python3-rpkg-1.57-9.fc31.noarch > > $ fedpkg --release f31 lint > /usr/share/rpmlint/Pkg.py:168: UnicodeWarning: decode() called on unicode > string, see https://bugzilla.redhat.com/show_bug.cgi?id=1693751 > s.decode('UTF-8') > That's rpmlint bug #1699789.