From 63970f5c610e16478c08459669dfc2e1abf8c0f2 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Tue, 25 Sep 2012 20:15:51 -0700 Subject: Use constants for hardcoded *DEPEND lists. --- bin/repoman | 12 ++++++------ pym/_emerge/FakeVartree.py | 6 ++---- pym/_emerge/Package.py | 4 +++- pym/_emerge/actions.py | 3 +-- pym/_emerge/depgraph.py | 7 ++----- pym/portage/dep/_slot_operator.py | 10 ++++------ pym/portage/emaint/modules/move/move.py | 4 ++-- pym/portage/package/ebuild/doebuild.py | 6 +++--- 8 files changed, 23 insertions(+), 29 deletions(-) diff --git a/bin/repoman b/bin/repoman index 6951bbe91..6caf791de 100755 --- a/bin/repoman +++ b/bin/repoman @@ -1872,11 +1872,11 @@ for x in effective_scanlist: inherited_wxwidgets_eclass = "wxwidgets" in inherited operator_tokens = set(["||", "(", ")"]) type_list, badsyntax = [], [] - for mytype in ("DEPEND", "HDEPEND", "RDEPEND", "PDEPEND", - "LICENSE", "PROPERTIES", "PROVIDE"): + for mytype in Package._dep_keys + ("LICENSE", "PROPERTIES", "PROVIDE"): mydepstr = myaux[mytype] - buildtime = mytype in ('DEPEND', 'HDEPEND') + buildtime = mytype in Package._buildtime_keys + runtime = mytype in Package._runtime_keys token_class = None if mytype.endswith("DEPEND"): token_class=portage.dep.Atom @@ -1889,7 +1889,7 @@ for x in effective_scanlist: badsyntax.append(str(e)) if atoms and mytype.endswith("DEPEND"): - if mytype in ("RDEPEND", "PDEPEND") and \ + if runtime and \ "test?" in mydepstr.split(): stats[mytype + '.suspect'] += 1 fails[mytype + '.suspect'].append(relative_path + \ @@ -1932,7 +1932,7 @@ for x in effective_scanlist: fails['wxwidgets.eclassnotused'].append( (relative_path + ": %ss on x11-libs/wxGTK" " without inheriting wxwidgets.eclass") % mytype) - elif mytype in ("PDEPEND", "RDEPEND"): + elif runtime: if not is_blocker and \ atom.cp in suspect_rdepend: stats[mytype + '.suspect'] += 1 @@ -2153,7 +2153,7 @@ for x in effective_scanlist: if prof.status == "dev": suffix=suffix+"indev" - for mytype in ("DEPEND", "HDEPEND", "PDEPEND", "RDEPEND"): + for mytype in Package._dep_keys: mykey = "dependency.bad" + suffix myvalue = myaux[mytype] diff --git a/pym/_emerge/FakeVartree.py b/pym/_emerge/FakeVartree.py index b3c913348..5fde8e16b 100644 --- a/pym/_emerge/FakeVartree.py +++ b/pym/_emerge/FakeVartree.py @@ -75,8 +75,7 @@ class FakeVartree(vartree): self.dbapi.aux_get = self._aux_get_wrapper self.dbapi.match = self._match_wrapper self._aux_get_history = set() - self._portdb_keys = ["EAPI", "DEPEND", "HDEPEND", - "KEYWORDS", "PDEPEND", "RDEPEND"] + self._portdb_keys = Package._dep_keys + ("EAPI", "KEYWORDS") self._portdb = portdb self._global_updates = None @@ -287,8 +286,7 @@ def grab_global_updates(portdb): return retupdates def perform_global_updates(mycpv, mydb, myupdates): - aux_keys = ["DEPEND", "EAPI", "HDEPEND", - "RDEPEND", "PDEPEND", 'repository'] + aux_keys = Package._dep_keys + ("EAPI", 'repository') aux_dict = dict(zip(aux_keys, mydb.aux_get(mycpv, aux_keys))) eapi = aux_dict.pop('EAPI') repository = aux_dict.pop('repository') diff --git a/pym/_emerge/Package.py b/pym/_emerge/Package.py index 00d00fe25..b60f74486 100644 --- a/pym/_emerge/Package.py +++ b/pym/_emerge/Package.py @@ -41,7 +41,9 @@ class Package(Task): "repository", "PROPERTIES", "RESTRICT", "SLOT", "USE", "_mtime_", "DEFINED_PHASES", "REQUIRED_USE"] - _dep_keys = ('DEPEND', 'HDEPEND' 'PDEPEND', 'RDEPEND',) + _dep_keys = ('DEPEND', 'HDEPEND', 'PDEPEND', 'RDEPEND') + _buildtime_keys = ('DEPEND', 'HDEPEND') + _runtime_keys = ('PDEPEND', 'RDEPEND') _use_conditional_misc_keys = ('LICENSE', 'PROPERTIES', 'RESTRICT') UNKNOWN_REPO = _unknown_repo diff --git a/pym/_emerge/actions.py b/pym/_emerge/actions.py index af7ae8f7e..f7ec07ab4 100644 --- a/pym/_emerge/actions.py +++ b/pym/_emerge/actions.py @@ -1147,7 +1147,6 @@ def calc_depclean(settings, trees, ldpath_mtimes, graph = digraph() del cleanlist[:] - dep_keys = ["DEPEND", "HDEPEND", "RDEPEND", "PDEPEND"] runtime = UnmergeDepPriority(runtime=True) runtime_post = UnmergeDepPriority(runtime_post=True) buildtime = UnmergeDepPriority(buildtime=True) @@ -1160,7 +1159,7 @@ def calc_depclean(settings, trees, ldpath_mtimes, for node in clean_set: graph.add(node, None) - for dep_type in dep_keys: + for dep_type in Package._dep_keys: depstr = node.metadata[dep_type] if not depstr: continue diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py index dee3f1f91..4d731fb0d 100644 --- a/pym/_emerge/depgraph.py +++ b/pym/_emerge/depgraph.py @@ -503,8 +503,6 @@ class _dynamic_depgraph_config(object): class depgraph(object): pkg_tree_map = RootConfig.pkg_tree_map - - _dep_keys = ["DEPEND", "RDEPEND", "PDEPEND", "HDEPEND"] def __init__(self, settings, trees, myopts, myparams, spinner, frozen_config=None, backtrack_parameters=BacktrackParameter(), allow_backtracking=False): @@ -1682,8 +1680,7 @@ class depgraph(object): eapi_attrs = _get_eapi_attrs(pkg.metadata["EAPI"]) edepend={} - depkeys = ["DEPEND","RDEPEND","PDEPEND","HDEPEND"] - for k in depkeys: + for k in Package._dep_keys: edepend[k] = metadata[k] if not pkg.built and \ @@ -2848,7 +2845,7 @@ class depgraph(object): return [pkg.slot_atom for pkg in greedy_pkgs] blockers = {} - blocker_dep_keys = ["DEPEND", "PDEPEND", "RDEPEND", "HDEPEND"] + blocker_dep_keys = Package._dep_keys for pkg in greedy_pkgs + [highest_pkg]: dep_str = " ".join(pkg.metadata[k] for k in blocker_dep_keys) try: diff --git a/pym/portage/dep/_slot_operator.py b/pym/portage/dep/_slot_operator.py index 9fe19fc59..d7933b592 100644 --- a/pym/portage/dep/_slot_operator.py +++ b/pym/portage/dep/_slot_operator.py @@ -3,13 +3,11 @@ from portage.dep import Atom, paren_enclose, use_reduce from portage.exception import InvalidData - -_dep_keys = ('DEPEND', 'HDEPEND', 'PDEPEND', 'RDEPEND') -_runtime_keys = ('PDEPEND', 'RDEPEND') +from _emerge.Package import Package def find_built_slot_operator_atoms(pkg): atoms = {} - for k in _dep_keys: + for k in Package._dep_keys: atom_list = list(_find_built_slot_operator(use_reduce(pkg.metadata[k], uselist=pkg.use.enabled, eapi=pkg.metadata['EAPI'], token_class=Atom))) @@ -43,11 +41,11 @@ def evaluate_slot_operator_equal_deps(settings, use, trees): target_vardb = trees[trees._target_eroot]["vartree"].dbapi vardbs = [target_vardb] deps = {} - for k in _dep_keys: + for k in Package._dep_keys: deps[k] = use_reduce(metadata[k], uselist=use, eapi=eapi, token_class=Atom) - for k in _runtime_keys: + for k in Package._runtime_keys: _eval_deps(deps[k], vardbs) if running_vardb is not target_vardb: diff --git a/pym/portage/emaint/modules/move/move.py b/pym/portage/emaint/modules/move/move.py index 5e1d99492..29ff33005 100644 --- a/pym/portage/emaint/modules/move/move.py +++ b/pym/portage/emaint/modules/move/move.py @@ -3,14 +3,14 @@ import portage from portage import os - +from _emerge.Package import Package class MoveHandler(object): def __init__(self, tree, porttree): self._tree = tree self._portdb = porttree.dbapi - self._update_keys = ["DEPEND", "HDEPEND", "RDEPEND", "PDEPEND", "PROVIDE"] + self._update_keys = ["PROVIDE"] + list(Package._dep_keys) self._master_repo = \ self._portdb.getRepositoryName(self._portdb.porttree_root) diff --git a/pym/portage/package/ebuild/doebuild.py b/pym/portage/package/ebuild/doebuild.py index b50b452ea..04d0808ae 100644 --- a/pym/portage/package/ebuild/doebuild.py +++ b/pym/portage/package/ebuild/doebuild.py @@ -93,6 +93,9 @@ _phase_func_map = { "pretend": "pkg_pretend", } +_vdb_use_conditional_keys = Package._dep_keys + \ + ('LICENSE', 'PROPERTIES', 'PROVIDE', 'RESTRICT',) + def _doebuild_spawn(phase, settings, actionmap=None, **kwargs): """ All proper ebuild phases which execute ebuild.sh are spawned @@ -1735,9 +1738,6 @@ def _post_src_install_write_metadata(settings): errors='strict') as f: f.write(_unicode_decode(v + '\n')) -_vdb_use_conditional_keys = ('DEPEND', 'HDEPEND', 'LICENSE', 'PDEPEND', - 'PROPERTIES', 'PROVIDE', 'RDEPEND', 'RESTRICT',) - def _preinst_bsdflags(mysettings): if bsd_chflags: # Save all the file flags for restoration later. -- cgit v1.2.3-1-g7c22