Gentoo Archives: gentoo-commits

From: Brian Dolbec <dolsen@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/portage:repoman commit in: repoman/pym/repoman/modules/scan/metadata/
Date: Tue, 27 Jun 2017 21:36:10
Message-Id: 1498598970.2ceec91cec02b94cad84fddaf29bbe884baa1b6d.dolsen@gentoo
1 commit: 2ceec91cec02b94cad84fddaf29bbe884baa1b6d
2 Author: Louis Sautier <sautier.louis <AT> gmail <DOT> com>
3 AuthorDate: Mon Jun 19 12:31:50 2017 +0000
4 Commit: Brian Dolbec <dolsen <AT> gentoo <DOT> org>
5 CommitDate: Tue Jun 27 21:29:30 2017 +0000
6 URL: https://gitweb.gentoo.org/proj/portage.git/commit/?id=2ceec91c
7
8 Repoman: detect inconsistent metadata.xml indentation
9
10 repoman/pym/repoman/modules/scan/metadata/pkgmetadata.py | 10 ++++++++++
11 1 file changed, 10 insertions(+)
12
13 diff --git a/repoman/pym/repoman/modules/scan/metadata/pkgmetadata.py b/repoman/pym/repoman/modules/scan/metadata/pkgmetadata.py
14 index 92c74e6f8..6a0f501ec 100644
15 --- a/repoman/pym/repoman/modules/scan/metadata/pkgmetadata.py
16 +++ b/repoman/pym/repoman/modules/scan/metadata/pkgmetadata.py
17 @@ -3,8 +3,10 @@
18 '''Package Metadata Checks operations'''
19
20 import sys
21 +import re
22
23 from itertools import chain
24 +from collections import Counter
25
26 try:
27 from lxml import etree
28 @@ -96,6 +98,14 @@ class PkgMetadata(ScanBase, USEFlagChecks):
29 self.muselist = frozenset(self.musedict)
30 return False
31
32 + indentation_chars = Counter()
33 + for l in etree.tostring(_metadata_xml).splitlines():
34 + indentation_chars.update(re.match(b"\s*", l).group(0))
35 + if len(indentation_chars) > 1:
36 + self.qatracker.add_error("metadata.warning", "%s/metadata.xml: %s" %
37 + (xpkg, "inconsistent use of tabs and spaces in indentation")
38 + )
39 +
40 xml_encoding = _metadata_xml.docinfo.encoding
41 if xml_encoding.upper() != metadata_xml_encoding:
42 self.qatracker.add_error(