[gentoo-commits] proj/portage:master commit in: pym/repoman/modules/scan/depend/

2016-05-10 Thread Mike Frysinger
commit: 70704ab3f8983dd69a4742cd4c3a0810e4eed7e5
Author: Mike Frysinger  gentoo  org>
AuthorDate: Mon Jan  4 20:51:39 2016 +
Commit: Mike Frysinger  gentoo  org>
CommitDate: Tue May 10 17:53:45 2016 +
URL:https://gitweb.gentoo.org/proj/portage.git/commit/?id=70704ab3

repoman: filter out duplicate dependencies in error messages

Some packages list the same atom multiple times (e.g. behind diff USE
flags).  If one of them throws an error, we end up listing it more than
once, and the output can get verbose/useless.

 pym/repoman/modules/scan/depend/profile.py | 13 +++--
 1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/pym/repoman/modules/scan/depend/profile.py 
b/pym/repoman/modules/scan/depend/profile.py
index 5b32f66..a714a93 100644
--- a/pym/repoman/modules/scan/depend/profile.py
+++ b/pym/repoman/modules/scan/depend/profile.py
@@ -201,13 +201,22 @@ class ProfileDependsChecks(ScanBase):
 
# we have some 
unsolvable deps
# remove ! deps, which 
always show up as unsatisfiable
-   atoms = [
+   all_atoms = [

str(atom.unevaluated_atom)
for atom in 
atoms if not atom.blocker]
 
# if we emptied out our 
list, continue:
-   if not atoms:
+   if not all_atoms:
continue
+
+   # Filter out 
duplicates.  We do this by hand (rather
+   # than use a set) so 
the order is stable and better
+   # matches the order 
that's in the ebuild itself.
+   atoms = []
+   for atom in all_atoms:
+   if atom not in 
atoms:
+   
atoms.append(atom)
+
if 
self.options.output_style in ['column']:

self.qatracker.add_error(mykey,
"%s: 
%s: %s(%s) %s"



[gentoo-commits] proj/portage:master commit in: pym/repoman/modules/scan/depend/

2016-04-29 Thread Brian Dolbec
commit: 260574004ff6c4dc5187fdf579851d920788fff4
Author: Zac Medico  gentoo  org>
AuthorDate: Mon Apr 25 17:02:26 2016 +
Commit: Brian Dolbec  gentoo  org>
CommitDate: Mon Apr 25 17:02:26 2016 +
URL:https://gitweb.gentoo.org/proj/portage.git/commit/?id=26057400

repoman: remove DependUnknown (part of ProfileDependsChecks now)

 pym/repoman/modules/scan/depend/unknown.py | 41 --
 1 file changed, 41 deletions(-)

diff --git a/pym/repoman/modules/scan/depend/unknown.py 
b/pym/repoman/modules/scan/depend/unknown.py
deleted file mode 100644
index 6667d4f..000
--- a/pym/repoman/modules/scan/depend/unknown.py
+++ /dev/null
@@ -1,41 +0,0 @@
-# -*- coding:utf-8 -*-
-
-from repoman.modules.scan.scanbase import ScanBase
-
-
-class DependUnknown(ScanBase):
-   '''Perform checks to determine unknown dependencies'''
-
-   def __init__(self, **kwargs):
-   '''Class init
-
-   @param qatracker: QATracker instance
-   '''
-   self.qatracker = kwargs.get('qatracker')
-
-   def check(self, **kwargs):
-   '''Perform unknown dependancy checks
-
-   @param ebuild: Future.result == Ebuild which we check (object).
-   @param baddepsyntax: Future.result == boolean
-   @param unknown_pkgs: set of tuples (type, atom.unevaluated_atom)
-   @returns: dictionary
-   '''
-   ebuild = kwargs.get('ebuild').get()
-   baddepsyntax = kwargs.get('baddepsyntax').get()
-   unknown_pkgs = kwargs.get('unknown_pkgs').get()
-
-   if not baddepsyntax and unknown_pkgs:
-   type_map = {}
-   for mytype, atom in unknown_pkgs:
-   type_map.setdefault(mytype, set()).add(atom)
-   for mytype, atoms in type_map.items():
-   self.qatracker.add_error(
-   "dependency.unknown", "%s: %s: %s"
-   % (ebuild.relative_path, mytype, ", 
".join(sorted(atoms
-   return False
-
-   @property
-   def runInEbuilds(self):
-   '''Ebuild level scans'''
-   return (True, [self.check])