def __iter__(self): for atom in VersionedInstalled.__iter__(self): pkgs = self.repos.match(atom) if not pkgs: # pkg is installed but no longer in any repo, just ignore it. continue assert len(pkgs) == 1, 'I do not know what I am doing: %r' % (pkgs,) pkg = pkgs[0] if self.eclasses.isdisjoint(pkg.data.get('_eclasses_', ())): yield atom
def __iter__(self): for atom in VersionedInstalled.__iter__(self): pkgs = self.repos.match(atom) if not pkgs: # pkg is installed but no longer in any repo, just ignore it. continue assert len( pkgs) == 1, 'I do not know what I am doing: %r' % (pkgs, ) pkg = pkgs[0] if self.eclasses.isdisjoint(pkg.data.get('_eclasses_', ())): yield atom
def __iter__(self): for atom in VersionedInstalled.__iter__(self): pkgs = self.portdir.match(atom) if not pkgs: # This thing is in the vdb but no longer in portdir # (or someone misconfigured us to use a bogus # portdir). Just ignore it. continue assert len(pkgs) == 1, 'I do not know what I am doing: %r' % (pkgs,) pkg = pkgs[0] if self.eclasses.isdisjoint(pkg.data.get('_eclasses_', ())): yield atom
def __init__(self, vdb, portdir, eclasses): VersionedInstalled.__init__(self, vdb) self.portdir = portdir self.eclasses = frozenset(eclasses)
def __init__(self, vdb, repos, eclasses): VersionedInstalled.__init__(self, vdb) self.repos = RepositoryGroup(repos) self.eclasses = frozenset(eclasses)