def check_args(parser, namespace): arches = namespace.selected_arches target_repo = getattr(namespace, "target_repo", None) if target_repo is not None: all_arches = target_repo.known_arches else: all_arches = set() if arches is None: arches = (set(), all_arches) disabled, enabled = arches if not enabled: # enable all non-prefix arches enabled = set(arch for arch in all_arches if '-' not in arch) arches = set(enabled).difference(set(disabled)) if all_arches: unknown_arches = arches.difference(all_arches) if unknown_arches: parser.error('unknown arch%s: %s (valid arches: %s)' % ( _pl(unknown_arches, plural='es'), ', '.join(unknown_arches), ', '.join(sorted(all_arches)))) namespace.arches = tuple(sorted(arches))
def feed(self, pkg, reporter): if not self.iuse_handler.ignore: iuse = pkg.iuse_stripped.difference( self.iuse_handler.allowed_iuse(pkg)) if iuse: reporter.add_report( MetadataError( pkg, "iuse", "iuse unknown flag%s: [ %s ]" % (_pl(iuse), ", ".join(iuse))))
def _setup_arches(namespace, attr): default_repo = namespace.config.get_default('repo') try: known_arches = { arch for r in namespace.repo.trees for arch in r.config.known_arches } except AttributeError: try: # binary/vdb repos use known arches from the default repo known_arches = default_repo.config.known_arches except AttributeError: # TODO: remove fallback for tests after fixing default repo pull # from faked config known_arches = set() arches = known_arches if namespace.arch is not None: disabled_arches, enabled_arches = namespace.arch disabled_arches = set(disabled_arches) enabled_arches = set(enabled_arches) unknown_arches = disabled_arches.difference( known_arches) | enabled_arches.difference(known_arches) if unknown_arches: unknown = ', '.join(map(repr, sorted(unknown_arches))) known = ', '.join(sorted(known_arches)) plural = _pl(unknown_arches, plural='es') argparser.error( f'unknown arch{plural}: {unknown} (choices: {known})') if enabled_arches: arches = arches.intersection(enabled_arches) if disabled_arches: arches = arches - disabled_arches prefix_arches = set(x for x in arches if '-' in x) native_arches = arches.difference(prefix_arches) arches = native_arches if namespace.prefix: arches = arches.union(prefix_arches) if namespace.stable: try: stable_arches = { arch for r in namespace.repo.trees for arch in r.config.profiles.arches('stable') } except AttributeError: # binary/vdb repos use stable arches from the default repo stable_arches = default_repo.config.profiles.arches('stable') arches = arches.intersection(stable_arches) namespace.known_arches = known_arches namespace.prefix_arches = prefix_arches namespace.native_arches = native_arches namespace.arches = arches
def short_desc(self): eclass_migration = [] for old_eclass, new_eclass in self.eclasses: if new_eclass: update_path = f'migrate to {new_eclass}' else: update_path = 'no replacement' eclass_migration.append(f'{old_eclass} ({update_path})') return "uses deprecated eclass%s: [ %s ]" % (_pl( eclass_migration, plural='es'), ', '.join(eclass_migration))
def _setup_arches(namespace, attr): default_repo = namespace.config.get_default('repo') try: known_arches = {arch for r in namespace.repo.trees for arch in r.config.known_arches} except AttributeError: try: # binary/vdb repos use known arches from the default repo known_arches = default_repo.config.known_arches except AttributeError: # TODO: remove fallback for tests after fixing default repo pull # from faked config known_arches = set() arches = known_arches if namespace.arch is not None: disabled_arches, enabled_arches = namespace.arch disabled_arches = set(disabled_arches) enabled_arches = set(enabled_arches) unknown_arches = disabled_arches.difference(known_arches) | enabled_arches.difference(known_arches) if unknown_arches: unknown = ', '.join(map(repr, sorted(unknown_arches))) known = ', '.join(sorted(known_arches)) plural = _pl(unknown_arches, plural='es') argparser.error(f'unknown arch{plural}: {unknown} (choices: {known})') if enabled_arches: arches = arches.intersection(enabled_arches) if disabled_arches: arches = arches - disabled_arches prefix_arches = set(x for x in arches if '-' in x) native_arches = arches.difference(prefix_arches) arches = native_arches if namespace.prefix: arches = arches.union(prefix_arches) if namespace.stable: try: stable_arches = {arch for r in namespace.repo.trees for arch in r.config.profiles.arches('stable')} except AttributeError: # binary/vdb repos use stable arches from the default repo stable_arches = default_repo.config.profiles.arches('stable') arches = arches.intersection(stable_arches) namespace.known_arches = known_arches namespace.prefix_arches = prefix_arches namespace.native_arches = native_arches namespace.arches = arches
def long_desc(self): return "%s on line%s %s" % (self.short_desc, _pl( self.lines), ', '.join(str(x) for x in self.lines))
def desc(self): return "mismatched package name%s: [ %s ]" % ( _pl(self.ebuilds), ', '.join(self.ebuilds))
def short_desc(self): return "unused eclass%s in master repo(s): %s" % (_pl( self.eclasses, 'es'), ', '.join(self.eclasses))
def desc(self): return "%r: unknown USE flag%s: [ %s ]" % (self.path, _pl( self.flags), ', '.join(map(repr, self.flags)))
def desc(self): return f'directly committed with stable keyword%s: [ %s ]' % (_pl( self.keywords), ', '.join(self.keywords))
def short_desc(self): return ( f"slot({self.slot}) no change in {self.period} days for unstable " "keyword%s: [ %s ]" % (_pl(self.keywords), ', '.join(self.keywords)))
def desc(self): categories = ', '.join(self.categories) y = _pl(self.categories, singular='y', plural='ies') return f'unknown categor{y}: {categories}'
def desc(self): return "unused license%s in master repo(s): %s" % (_pl( self.licenses), ', '.join(self.licenses))
def desc(self): return "slot(%s) keywords are overshadowed by version%s: %s" % ( self.slot, _pl(self.later_versions), ', '.join( self.later_versions))
def desc(self): return "use.desc unused flag%s in master repo(s): %s" % (_pl( self.flags), ', '.join(self.flags))
def desc(self): return "unused eclass%s in master repo(s): %s" % (_pl( self.eclasses, plural='es'), ', '.join(self.eclasses))
def desc(self): return "unused mirror%s in master repo(s): %s" % (_pl( self.mirrors), ', '.join(self.mirrors))
def desc(self): return "metadata.xml unused local USE flag%s: [ %s ]" % ( _pl(self.flags), ', '.join(self.flags))
def desc(self): return "license group %r has unknown license%s: [ %s ]" % ( self.group, _pl(self.licenses), ', '.join(self.licenses))
def short_desc(self): return "'%s' link should use https:// on line%s: %s" % ( self.link, _pl(self.lines), ', '.join(map(str, self.lines)))
def desc(self): return "use.desc unused flag%s: %s" % (_pl(self.flags), ', '.join( self.flags))
def desc(self): return "%r: unknown package%s: [ %s ]" % (self.path, _pl( self.packages), ', '.join(map(repr, self.packages)))
def desc(self): return "distfile%s missing from Manifest: [ %s ]" % ( _pl(self.files), ', '.join(self.files), )
def desc(self): return "%r: unknown package USE flag%s: [ '%s[%s]' ]" % ( self.path, _pl(self.flags), self.package, ','.join(self.flags))
def desc(self): return "unknown distfile%s in Manifest: [ %s ]" % ( _pl(self.files), ', '.join(self.files), )
def desc(self): return "%r: unknown package keyword%s: %s: [ %s ]" % ( self.path, _pl(self.keywords), self.package, ', '.join( map(repr, self.keywords)))
def desc(self): return "unnecessary file%s in Manifest: [ %s ]" % ( _pl(self.files), ', '.join(self.files), )
def desc(self): files = ', '.join(map(repr, self.filenames)) y = _pl(self.filenames, singular='y', plural='ies') return f'unknown entr{y}: {files}'
def desc(self): return "for arch%s: [ %s ], all versions are unstable: [ %s ]" % ( _pl(self.arches, plural='es'), ', '.join(self.arches), ', '.join(self.versions))
def desc(self): return "invalid package name%s: [ %s ]" % ( _pl(self.ebuilds), ', '.join(self.ebuilds))
def short_desc(self): return "stabled arch%s: [ %s ], potential%s: [ %s ]" % ( _pl(self.stable, plural='es'), ', '.join(self.stable), _pl(self.keywords), ', '.join(self.keywords))