diff options
-rw-r--r-- | meta/lib/oe/buildhistory_analysis.py | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/meta/lib/oe/buildhistory_analysis.py b/meta/lib/oe/buildhistory_analysis.py index 103cfb41b1..bef6cd4138 100644 --- a/meta/lib/oe/buildhistory_analysis.py +++ b/meta/lib/oe/buildhistory_analysis.py | |||
@@ -15,7 +15,8 @@ import git | |||
15 | 15 | ||
16 | 16 | ||
17 | # How to display fields | 17 | # How to display fields |
18 | list_fields = ['DEPENDS', 'RDEPENDS', 'RRECOMMENDS', 'PACKAGES', 'FILES', 'FILELIST', 'USER_CLASSES', 'IMAGE_CLASSES', 'IMAGE_FEATURES', 'IMAGE_LINGUAS', 'IMAGE_INSTALL', 'BAD_RECOMMENDATIONS'] | 18 | list_fields = ['DEPENDS', 'RDEPENDS', 'RRECOMMENDS', 'FILES', 'FILELIST', 'USER_CLASSES', 'IMAGE_CLASSES', 'IMAGE_FEATURES', 'IMAGE_LINGUAS', 'IMAGE_INSTALL', 'BAD_RECOMMENDATIONS'] |
19 | list_order_fields = ['PACKAGES'] | ||
19 | numeric_fields = ['PKGSIZE', 'IMAGESIZE'] | 20 | numeric_fields = ['PKGSIZE', 'IMAGESIZE'] |
20 | # Fields to monitor | 21 | # Fields to monitor |
21 | monitor_fields = ['RDEPENDS', 'RRECOMMENDS', 'PACKAGES', 'FILELIST', 'PKGSIZE', 'IMAGESIZE'] | 22 | monitor_fields = ['RDEPENDS', 'RRECOMMENDS', 'PACKAGES', 'FILELIST', 'PKGSIZE', 'IMAGESIZE'] |
@@ -52,12 +53,15 @@ class ChangeRecord: | |||
52 | else: | 53 | else: |
53 | prefix = '' | 54 | prefix = '' |
54 | 55 | ||
55 | if self.fieldname in list_fields: | 56 | if self.fieldname in list_fields or self.fieldname in list_order_fields: |
56 | aitems = self.oldvalue.split() | 57 | aitems = self.oldvalue.split() |
57 | bitems = self.newvalue.split() | 58 | bitems = self.newvalue.split() |
58 | removed = list(set(aitems) - set(bitems)) | 59 | removed = list(set(aitems) - set(bitems)) |
59 | added = list(set(bitems) - set(aitems)) | 60 | added = list(set(bitems) - set(aitems)) |
60 | out = '%s:%s%s' % (self.fieldname, ' removed "%s"' % ' '.join(removed) if removed else '', ' added "%s"' % ' '.join(added) if added else '') | 61 | if removed or added: |
62 | out = '%s:%s%s' % (self.fieldname, ' removed "%s"' % ' '.join(removed) if removed else '', ' added "%s"' % ' '.join(added) if added else '') | ||
63 | else: | ||
64 | out = '%s changed order' % self.fieldname | ||
61 | elif self.fieldname in numeric_fields: | 65 | elif self.fieldname in numeric_fields: |
62 | aval = int(self.oldvalue or 0) | 66 | aval = int(self.oldvalue or 0) |
63 | bval = int(self.newvalue or 0) | 67 | bval = int(self.newvalue or 0) |
@@ -237,6 +241,13 @@ def compare_dict_blobs(path, ablob, bblob, report_all): | |||
237 | percentchg = 100 | 241 | percentchg = 100 |
238 | if percentchg < monitor_numeric_threshold: | 242 | if percentchg < monitor_numeric_threshold: |
239 | continue | 243 | continue |
244 | elif (not report_all) and key in list_fields: | ||
245 | alist = astr.split() | ||
246 | alist.sort() | ||
247 | blist = bstr.split() | ||
248 | blist.sort() | ||
249 | if ' '.join(alist) == ' '.join(blist): | ||
250 | continue | ||
240 | chg = ChangeRecord(path, key, astr, bstr, key in monitor_fields) | 251 | chg = ChangeRecord(path, key, astr, bstr, key in monitor_fields) |
241 | changes.append(chg) | 252 | changes.append(chg) |
242 | return changes | 253 | return changes |