Bug#931269: python-debian: command-line tools to print debian.changelog & debian.copyright warnings
Paul Wise
pabs at debian.org
Sun Jun 30 06:59:05 BST 2019
Source: python-debian
Severity: wishlist
User: check-all-the-things at packages.debian.org
Usertags: new-check
Control: affects -1 check-all-the-things
The debian.changelog & debian.copyright modules have a number of checks
for Debian changelog/copyright files. It would be nice to have access to these checks using a command-line tool like this prototype:
==> /usr/bin/check-python-debian <==
#!/usr/bin/python3
from debian import changelog, copyright
with open('debian/copyright') as f:
copyright.Copyright(f)
with open('debian/changelog') as f:
changelog.Changelog(f)
==> /usr/lib/python3/dist-packages/debian/changelog.py <==
if file is None:
self._parse_error('Empty changelog file.', strict)
return
if not file.strip():
self._parse_error('Empty changelog file.', strict)
return
if kv_match is None:
self._parse_error(
"Invalid key-value pair after ';': %s" % pair,
if key.lower() in all_keys:
self._parse_error(
"Repeated key-value: "
if val_match is None:
self._parse_error(
"Badly formatted urgency value: %s" %
continue
self._parse_error(
"Unexpected line while looking for %s: %s" %
if end_match.group(3) != ' ':
self._parse_error(
"Badly formatted trailer line: %s" % line, strict)
if not allow_empty_author:
self._parse_error(
"Badly formatted trailer line: %s" % line, strict)
continue
self._parse_error(
"Unexpected line while looking for %s: %s" %
and old_state != next_heading_or_eof)):
self._parse_error(
"Found eof where expected %s" % state, strict)
==> /usr/lib/python3/dist-packages/debian/copyright.py <==
else:
_complain('Non-header paragraph has neither "Files" nor '
'"License" fields', strict)
if 'Copyright' not in data:
_complain('Files paragraph missing Copyright field', strict)
if 'License' not in data:
_complain('Files paragraph missing License field', strict)
if not self.files:
_complain('Files paragraph has empty Files field', strict)
--
bye,
pabs
https://wiki.debian.org/PaulWise
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: This is a digitally signed message part
URL: <http://alioth-lists.debian.net/pipermail/pkg-python-debian-maint/attachments/20190630/36a7a881/attachment.sig>
More information about the pkg-python-debian-maint
mailing list