Bug#1095835: python-debian: failed to extract gpg signature information
Gianfranco Costamagna
locutusofborg at debian.org
Wed Feb 12 14:59:08 GMT 2025
Source: python-debian
Version: 0.1.52
Hello, for some reasons:
pull-debian-source uwsgi-plugin-ruby
Found uwsgi-plugin-ruby 0.0.2 in sid
Downloading uwsgi-plugin-ruby_0.0.2.dsc from deb.debian.org (0.002 MiB)
[=====================================================>]100%
Traceback (most recent call last):
File "/usr/bin/pull-debian-source", line 14, in <module>
PullPkg.main(distro="debian", pull="source")
File "/usr/lib/python3/dist-packages/ubuntutools/pullpkg.py", line 111, in main
cls(*args, **kwargs).pull()
File "/usr/lib/python3/dist-packages/ubuntutools/pullpkg.py", line 449, in pull
for key in srcpkg.dsc.keys():
^^^^^^^^^^
File "/usr/lib/python3/dist-packages/ubuntutools/archive.py", line 318, in dsc
self._check_dsc_signature()
File "/usr/lib/python3/dist-packages/ubuntutools/archive.py", line 374, in _check_dsc_signature
gpg_info = self.dsc.get_gpg_info(
^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/debian/deb822.py", line 1191, in get_gpg_info
self.gpg_info = GpgInfo.from_sequence(self.raw_text,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/debian/deb822.py", line 1358, in from_sequence
return cls.from_output(out.decode('utf-8'),
^^^^^^^^^^^^^^^^^^^
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x94 in position 1135: invalid start byte
Now, dumping the signature:
b'[GNUPG:] NEWSIG\ [redacted] KEYEXPIRED [redacted] KEY_CONSIDERED [redacted] 0\n[GNUPG:] EXPKEYSIG [redacted]\n[GNUPG:] NOTATION_NAME [redacted]\n[GNUPG:] NOTATION_DATA \x94\xf9H7\x91\xfbdW%1B\x8e2I\xf8\xd0\xd8P\xb7\xc9\xde2v\xbf\xc9\xb7\xc4V\xe0\xe8c\xc5\xa7\xeb\n[GNUPG:] VALIDSIG [redacted] 2025-01-25 [redacted] 0 4 0 1 10 01 [redacted]\n'
I can see that \x94 in NOTATION_DATA section, that is probably causing the above trace.
changing from:
return cls.from_output(out.decode('utf-8'),
err.decode('utf-8'))
to
return cls.from_output(out.decode('unicode-escape'),
err.decode('unicode-escape'))
Makes it work and validate correctly the signature. However, I don't know if this is acceptable, working, or regressing something else, this is why I don't tag "patch" :)
pull-debian-source uwsgi-plugin-ruby
Found uwsgi-plugin-ruby 0.0.2 in sid
Downloading uwsgi-plugin-ruby_0.0.2.dsc from deb.debian.org (0.002 MiB)
[=====================================================>]100%
Valid signature by 0x9FE3E9C36691A69FF53CC6842C7C3146C1A00121
NOTICE: 'uwsgi-plugin-ruby' packaging is maintained in the 'Git' version control system at:
https://salsa.debian.org/uwsgi-team/uwsgi-plugin-ruby.git
Please use:
$ git clone https://salsa.debian.org/uwsgi-team/uwsgi-plugin-ruby.git
to retrieve the latest (possibly unreleased) updates to the package.
Downloading uwsgi-plugin-ruby_0.0.2.tar.xz from deb.debian.org (0.003 MiB)
[=====================================================>]100%
thanks for having a look
Gianfranco
More information about the pkg-python-debian-maint
mailing list