From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: <gentoo-commits+bounces-609279-garchives=archives.gentoo.org@lists.gentoo.org> Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id 35CD71381F3 for <garchives@archives.gentoo.org>; Sun, 14 Jul 2013 18:40:56 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id E6537E09FF; Sun, 14 Jul 2013 18:40:54 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 6B3BCE09FF for <gentoo-commits@lists.gentoo.org>; Sun, 14 Jul 2013 18:40:54 +0000 (UTC) Received: from hornbill.gentoo.org (hornbill.gentoo.org [94.100.119.163]) (using TLSv1 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 3C13433EA4A for <gentoo-commits@lists.gentoo.org>; Sun, 14 Jul 2013 18:40:53 +0000 (UTC) Received: from localhost.localdomain (localhost [127.0.0.1]) by hornbill.gentoo.org (Postfix) with ESMTP id BBA63E468F for <gentoo-commits@lists.gentoo.org>; Sun, 14 Jul 2013 18:40:51 +0000 (UTC) From: "Arfrever Frehtes Taifersar Arahesis" <arfrever.fta@gmail.com> To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Arfrever Frehtes Taifersar Arahesis" <arfrever.fta@gmail.com> Message-ID: <1373827154.7e1e2fc9709fd30a460b9bc83c1f612d79378cca.arfrever@gentoo> Subject: [gentoo-commits] proj/portage:master commit in: bin/ X-VCS-Repository: proj/portage X-VCS-Files: bin/portageq X-VCS-Directories: bin/ X-VCS-Committer: arfrever X-VCS-Committer-Name: Arfrever Frehtes Taifersar Arahesis X-VCS-Revision: 7e1e2fc9709fd30a460b9bc83c1f612d79378cca X-VCS-Branch: master Date: Sun, 14 Jul 2013 18:40:51 +0000 (UTC) Precedence: bulk List-Post: <mailto:gentoo-commits@lists.gentoo.org> List-Help: <mailto:gentoo-commits+help@lists.gentoo.org> List-Unsubscribe: <mailto:gentoo-commits+unsubscribe@lists.gentoo.org> List-Subscribe: <mailto:gentoo-commits+subscribe@lists.gentoo.org> List-Id: Gentoo Linux mail <gentoo-commits.gentoo.org> X-BeenThere: gentoo-commits@lists.gentoo.org X-Archives-Salt: d9094ab6-5ddc-4edc-8efc-a8bde9601587 X-Archives-Hash: e7ce3261c2f2c218686f4d595488100f commit: 7e1e2fc9709fd30a460b9bc83c1f612d79378cca Author: Arfrever Frehtes Taifersar Arahesis <Arfrever <AT> Apache <DOT> Org> AuthorDate: Sun Jul 14 18:39:14 2013 +0000 Commit: Arfrever Frehtes Taifersar Arahesis <arfrever.fta <AT> gmail <DOT> com> CommitDate: Sun Jul 14 18:39:14 2013 +0000 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=7e1e2fc9 portageq: Use uses_eroot decorator. --- bin/portageq | 56 +++++++++++++++++++++++++++++++++----------------------- 1 file changed, 33 insertions(+), 23 deletions(-) diff --git a/bin/portageq b/bin/portageq index c5c37d9..990d1bf 100755 --- a/bin/portageq +++ b/bin/portageq @@ -58,6 +58,10 @@ def eval_atom_use(atom): atom = atom.evaluate_conditionals(use) return atom +def uses_eroot(function): + function.uses_eroot = True + return function + #----------------------------------------------------------------------------- # # To add functionality to this tool, add a function below. @@ -79,6 +83,7 @@ def eval_atom_use(atom): # and will automaticly add a command by the same name as the function! # +@uses_eroot def has_version(argv): """<eroot> <category/package> Return code 0 if it's available, 1 otherwise. @@ -122,9 +127,9 @@ def has_version(argv): portage.writemsg("ERROR: Invalid atom: '%s'\n" % argv[1], noiselevel=-1) return 2 -has_version.uses_eroot = True +@uses_eroot def best_version(argv): """<eroot> <category/package> Returns category/package-version (without .ebuild). @@ -161,9 +166,9 @@ def best_version(argv): print(portage.best(mylist)) except KeyError: return 1 -best_version.uses_eroot = True +@uses_eroot def mass_best_version(argv): """<eroot> [<category/package>]+ Returns category/package-version (without .ebuild). @@ -177,8 +182,9 @@ def mass_best_version(argv): print(pack+":"+portage.best(mylist)) except KeyError: return 1 -mass_best_version.uses_eroot = True + +@uses_eroot def metadata(argv): if (len(argv) < 4): print("ERROR: insufficient parameters!", file=sys.stderr) @@ -211,8 +217,8 @@ Available keys: %s """ % ','.join(sorted(x for x in portage.auxdbkeys \ if not x.startswith('UNUSED_'))) -metadata.uses_eroot = True +@uses_eroot def contents(argv): """<eroot> <category/package> List the files that are installed for a given package, with @@ -233,8 +239,9 @@ def contents(argv): treetype="vartree", vartree=vartree) writemsg_stdout(''.join('%s\n' % x for x in sorted(db.getcontents())), noiselevel=-1) -contents.uses_eroot = True + +@uses_eroot def owners(argv): """<eroot> [<filename>]+ Given a list of files, print the packages that own the files and which @@ -313,8 +320,8 @@ def owners(argv): return 0 return 1 -owners.uses_eroot = True +@uses_eroot def is_protected(argv): """<eroot> <filename> Given a single filename, return code 0 if it's protected, 1 otherwise. @@ -360,8 +367,8 @@ def is_protected(argv): return 0 return 1 -is_protected.uses_eroot = True +@uses_eroot def filter_protected(argv): """<eroot> Read filenames from stdin and write them to stdout if they are protected. @@ -420,8 +427,8 @@ def filter_protected(argv): return 0 -filter_protected.uses_eroot = True +@uses_eroot def best_visible(argv): """<eroot> [pkgtype] <atom> Returns category/package-version (without .ebuild). @@ -502,9 +509,9 @@ def best_visible(argv): writemsg_stdout("\n", noiselevel=-1) return 1 -best_visible.uses_eroot = True +@uses_eroot def mass_best_visible(argv): """<eroot> [<type>] [<category/package>]+ Returns category/package-version (without .ebuild). @@ -529,9 +536,9 @@ def mass_best_visible(argv): best_visible([root, pkgtype, pack]) except KeyError: return 1 -mass_best_visible.uses_eroot = True +@uses_eroot def all_best_visible(argv): """<eroot> Returns all best_visible packages (without .ebuild). @@ -546,9 +553,9 @@ def all_best_visible(argv): mybest=portage.best(portage.db[argv[0]]["porttree"].dbapi.match(pkg)) if mybest: print(mybest) -all_best_visible.uses_eroot = True +@uses_eroot def match(argv): """<eroot> <atom> Returns a \\n separated list of category/package-version. @@ -595,8 +602,9 @@ def match(argv): results = vardb.match(atom) for cpv in results: print(cpv) -match.uses_eroot = True + +@uses_eroot def expand_virtual(argv): """<eroot> <atom> Returns a \\n separated list of atoms expanded from a @@ -631,7 +639,6 @@ def expand_virtual(argv): return os.EX_OK -expand_virtual.uses_eroot = True def vdb_path(argv): """ @@ -650,6 +657,7 @@ def gentoo_mirrors(argv): print(portage.settings["GENTOO_MIRRORS"]) +@uses_eroot def repositories_configuration(argv): """<eroot> Returns the configuration of repositories. @@ -659,7 +667,6 @@ def repositories_configuration(argv): return 3 sys.stdout.write(portage.db[argv[0]]["vartree"].settings.repositories.config_string()) sys.stdout.flush() -repositories_configuration.uses_eroot = True def portdir(argv): @@ -730,6 +737,8 @@ def envvar(argv): else: print(portage.settings[arg]) + +@uses_eroot def get_repos(argv): """<eroot> Returns all repos with names (repo_name file) argv[0] = $EROOT @@ -739,8 +748,8 @@ def get_repos(argv): return 2 print(" ".join(reversed(portage.db[argv[0]]["vartree"].settings.repositories.prepos_order))) -get_repos.uses_eroot = True +@uses_eroot def master_repositories(argv): """<eroot> <repo_id>+ Returns space-separated list of master repositories for specified repository. @@ -760,8 +769,8 @@ def master_repositories(argv): else: print(" ".join(x.name for x in repo.masters)) -master_repositories.uses_eroot = True +@uses_eroot def get_repo_path(argv): """<eroot> <repo_id>+ Returns the path to the repo named argv[1], argv[0] = $EROOT @@ -779,8 +788,8 @@ def get_repo_path(argv): return 1 print(path) -get_repo_path.uses_eroot = True +@uses_eroot def available_eclasses(argv): """<eroot> <repo_id>+ Returns space-separated list of available eclasses for specified repository. @@ -800,8 +809,8 @@ def available_eclasses(argv): else: print(" ".join(sorted(repo.eclass_db.eclasses))) -available_eclasses.uses_eroot = True +@uses_eroot def eclass_path(argv): """<eroot> <repo_id> <eclass>+ Returns the path to specified eclass for specified repository. @@ -829,8 +838,8 @@ def eclass_path(argv): print(eclass.location) return retval -eclass_path.uses_eroot = True +@uses_eroot def license_path(argv): """<eroot> <repo_id> <license>+ Returns the path to specified license for specified repository. @@ -860,8 +869,8 @@ def license_path(argv): print(eclass_path) return retval -license_path.uses_eroot = True +@uses_eroot def list_preserved_libs(argv): """<eroot> Print a list of libraries preserved during a package update in the form @@ -883,7 +892,7 @@ def list_preserved_libs(argv): msg.append('\n') writemsg_stdout(''.join(msg), noiselevel=-1) return rValue -list_preserved_libs.uses_eroot = True + class MaintainerEmailMatcher(object): def __init__(self, maintainer_emails): @@ -906,6 +915,8 @@ class HerdMatcher(object): herds = self._herds return any(x in herds for x in metadata_xml.herds()) + +@uses_eroot def pquery(parser, pquery_option_groups, opts, args): """[options] [atom]+ Emulates a subset of Pkgcore's pquery tool. @@ -1089,14 +1100,13 @@ def pquery(parser, pquery_option_groups, opts, args): return os.EX_OK -pquery.uses_eroot = False #----------------------------------------------------------------------------- # # DO NOT CHANGE CODE BEYOND THIS POINT - IT'S NOT NEEDED! # -non_commands = frozenset(['elog', 'eval_atom_use', 'exithandler', 'main', 'usage']) +non_commands = frozenset(['elog', 'eval_atom_use', 'exithandler', 'main', 'usage', 'uses_eroot']) commands = sorted(k for k, v in globals().items() \ if k not in non_commands and isinstance(v, types.FunctionType) and v.__module__ == "__main__")