Gentoo Archives: gentoo-commits

From: Brian Dolbec <dolsen@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/portage:repoman commit in: pym/repoman/modules/scan/metadata/
Date: Tue, 03 May 2016 17:43:46
Message-Id: 1462297099.621a6852099848474ed2c0880eae52ebd85f1703.dolsen@gentoo
1 commit: 621a6852099848474ed2c0880eae52ebd85f1703
2 Author: Brian Dolbec <dolsen <AT> gentoo <DOT> org>
3 AuthorDate: Tue May 3 17:38:19 2016 +0000
4 Commit: Brian Dolbec <dolsen <AT> gentoo <DOT> org>
5 CommitDate: Tue May 3 17:38:19 2016 +0000
6 URL: https://gitweb.gentoo.org/proj/portage.git/commit/?id=621a6852
7
8 repoman/modules/.../pkgmetadata.py: Improve whole document validation
9
10 Change to using assertValid() and add the error causing validation to fail to the qa tracker
11 error.
12
13 pym/repoman/modules/scan/metadata/pkgmetadata.py | 10 ++++++++--
14 1 file changed, 8 insertions(+), 2 deletions(-)
15
16 diff --git a/pym/repoman/modules/scan/metadata/pkgmetadata.py b/pym/repoman/modules/scan/metadata/pkgmetadata.py
17 index b231370..7390b5b 100644
18 --- a/pym/repoman/modules/scan/metadata/pkgmetadata.py
19 +++ b/pym/repoman/modules/scan/metadata/pkgmetadata.py
20 @@ -202,8 +202,14 @@ class PkgMetadata(ScanBase, USEFlagChecks):
21 # Only carry out if in package directory or check forced
22 if not metadata_bad:
23 validator = etree.XMLSchema(file=self.metadata_xsd)
24 - if not validator.validate(_metadata_xml):
25 - self.qatracker.add_error("metadata.bad", xpkg + "/metadata.xml")
26 + try:
27 + validator.assertValid(_metadata_xml)
28 + except etree.DocumentInvalid as error:
29 + self.qatracker.add_error(
30 + "metadata.bad",
31 + xpkg + "/metadata.xml: %s"
32 + % (str(error))
33 + )
34 del metadata_bad
35 self.muselist = frozenset(self.musedict)
36 return False