commit:     335c650e29df70f5cd376f5d7d87718b448a78e7
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Wed Jan 10 20:22:33 2018 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Thu Jan 11 19:37:47 2018 +0000
URL:        https://gitweb.gentoo.org/proj/portage.git/commit/?id=335c650e

repoman: Add a new 'badinexp' warning class for exp profiles

Add a new 'badinexp' (+ 'badmaskedinexp') warning class that is likewise
'badindev' but for 'exp' profiles. This will allow us to more
proactively inform developers of exp profile breakages without actually
making them fatal errors like they are now.

Reviewed-by: Zac Medico <zmedico <AT> gentoo.org>

 repoman/man/repoman.1                              | 8 ++++++++
 repoman/pym/repoman/modules/scan/depend/profile.py | 2 ++
 repoman/pym/repoman/qa_data.py                     | 8 ++++++++
 3 files changed, 18 insertions(+)

diff --git a/repoman/man/repoman.1 b/repoman/man/repoman.1
index 813bdae21..b2542b0c7 100644
--- a/repoman/man/repoman.1
+++ b/repoman/man/repoman.1
@@ -288,6 +288,10 @@ ebuilds)
 User-visible ebuilds with unsatisfied dependencies (matched against *visible*
 ebuilds) in developing arch
 .TP
+.B dependency.badinexp
+User-visible ebuilds with unsatisfied dependencies (matched against *visible*
+ebuilds) in experimental arch
+.TP
 .B dependency.badmasked
 Masked ebuilds with unsatisfied dependencies (matched against *all* ebuilds)
 .TP
@@ -295,6 +299,10 @@ Masked ebuilds with unsatisfied dependencies (matched 
against *all* ebuilds)
 Masked ebuilds with unsatisfied dependencies (matched against *all* ebuilds) in
 developing arch
 .TP
+.B dependency.badmaskedinexp
+Masked ebuilds with unsatisfied dependencies (matched against *all* ebuilds) in
+experimental arch
+.TP
 .B dependency.badtilde
 Uses the ~ dep operator with a non-zero revision part, which is useless (the
 revision is ignored)

diff --git a/repoman/pym/repoman/modules/scan/depend/profile.py 
b/repoman/pym/repoman/modules/scan/depend/profile.py
index cf3d9a8f4..30d839af0 100644
--- a/repoman/pym/repoman/modules/scan/depend/profile.py
+++ b/repoman/pym/repoman/modules/scan/depend/profile.py
@@ -163,6 +163,8 @@ class ProfileDependsChecks(ScanBase):
 
                                if prof.status == "dev":
                                        suffix = suffix + "indev"
+                               elif prof.status == "exp":
+                                       suffix = suffix + "inexp"
 
                                for mytype in Package._dep_keys:
 

diff --git a/repoman/pym/repoman/qa_data.py b/repoman/pym/repoman/qa_data.py
index fed798f9f..c6abe1760 100644
--- a/repoman/pym/repoman/qa_data.py
+++ b/repoman/pym/repoman/qa_data.py
@@ -42,6 +42,12 @@ qahelp = {
        "dependency.badmaskedindev": (
                "Masked ebuilds with unsatisfied dependencies"
                " (matched against *all* ebuilds) in developing arch"),
+       "dependency.badinexp": (
+               "User-visible ebuilds with unsatisfied dependencies"
+               " (matched against *visible* ebuilds) in experimental arch"),
+       "dependency.badmaskedinexp": (
+               "Masked ebuilds with unsatisfied dependencies"
+               " (matched against *all* ebuilds) in experimental arch"),
        "dependency.badtilde": (
                "Uses the ~ dep operator with a non-zero revision part,"
                " which is useless (the revision is ignored)"),
@@ -249,6 +255,8 @@ qawarnings = set((
        "dependency.badmasked",
        "dependency.badindev",
        "dependency.badmaskedindev",
+       "dependency.badinexp",
+       "dependency.badmaskedinexp",
        "dependency.badtilde",
        "dependency.missingslot",
        "dependency.perlcore",

Reply via email to