diff options
Diffstat (limited to 'pym/gentoolkit')
-rw-r--r-- | pym/gentoolkit/eshowkw/keywords_header.py | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/pym/gentoolkit/eshowkw/keywords_header.py b/pym/gentoolkit/eshowkw/keywords_header.py index ce3e8d4..6557f60 100644 --- a/pym/gentoolkit/eshowkw/keywords_header.py +++ b/pym/gentoolkit/eshowkw/keywords_header.py @@ -142,12 +142,16 @@ class keywords_header: break # sort by, in order (to match Bugzilla): - # 1. arch, then ~arch - # 2. profile stability - # 3. short keywords, then long (prefix, fbsd) - # 4. keyword name in reverse component order - normal.sort(key=lambda kw: (kw in self.__TESTING_KW_ARCHS, - levels.get(kw, 99), kw.count('-'), list(reversed(kw.split('-'))))) + # 1. non-prefix, then prefix (stable output between -P and not) + # 2. arch, then ~arch + # 3. profile stability + # 4. short keywords, then long (prefix, fbsd) + # 5. keyword name in reverse component order + normal.sort(key=lambda kw: (self.__isPrefix(kw), + kw in self.__TESTING_KW_ARCHS, + levels.get(kw, 99), + kw.count('-'), + list(reversed(kw.split('-'))))) return normal def __readAdditionalFields(self): |