From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from pigeon.gentoo.org ([208.92.234.80] helo=lists.gentoo.org) by finch.gentoo.org with esmtp (Exim 4.60) (envelope-from ) id 1Pm4Py-00070S-CL for garchives@archives.gentoo.org; Sun, 06 Feb 2011 13:12:42 +0000 Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id B87DDE0BAC; Sun, 6 Feb 2011 13:10:00 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) by pigeon.gentoo.org (Postfix) with ESMTP id 703C8E0B9C for ; Sun, 6 Feb 2011 13:09:55 +0000 (UTC) Received: from pelican.gentoo.org (unknown [66.219.59.40]) (using TLSv1 with cipher ADH-CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 11C451B4195 for ; Sun, 6 Feb 2011 13:09:55 +0000 (UTC) Received: from localhost.localdomain (localhost [127.0.0.1]) by pelican.gentoo.org (Postfix) with ESMTP id C097780084 for ; Sun, 6 Feb 2011 13:09:53 +0000 (UTC) From: "Thomas Sachau" To: gentoo-commits@lists.gentoo.org Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Thomas Sachau" Message-ID: Subject: [gentoo-commits] proj/portage:multilib commit in: pym/portage/package/ebuild/_config/ X-VCS-Repository: proj/portage X-VCS-Files: pym/portage/package/ebuild/_config/KeywordsManager.py X-VCS-Directories: pym/portage/package/ebuild/_config/ X-VCS-Committer: tommy X-VCS-Committer-Name: Thomas Sachau X-VCS-Revision: c5d64577c61c1e8b17353f1c1e6e063f5148012f Date: Sun, 6 Feb 2011 13:09:53 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: quoted-printable X-Archives-Salt: X-Archives-Hash: bbe362c2bfdd1d84437f03305900316f commit: c5d64577c61c1e8b17353f1c1e6e063f5148012f Author: Zac Medico gentoo org> AuthorDate: Mon Jan 31 06:07:38 2011 +0000 Commit: Thomas Sachau gentoo org> CommitDate: Mon Jan 31 06:07:38 2011 +0000 URL: http://git.overlays.gentoo.org/gitweb/?p=3Dproj/portage.git;a= =3Dcommit;h=3Dc5d64577 KeywordsManager: use lists where order matters Also remove x.lstrip('~') code from from getRawMissingKeywords() since I don't understand it (was only recently added, and we can add back later if appropriate). --- .../package/ebuild/_config/KeywordsManager.py | 23 ++++++++++----= ----- 1 files changed, 12 insertions(+), 11 deletions(-) diff --git a/pym/portage/package/ebuild/_config/KeywordsManager.py b/pym/= portage/package/ebuild/_config/KeywordsManager.py index d153e95..247dcb4 100644 --- a/pym/portage/package/ebuild/_config/KeywordsManager.py +++ b/pym/portage/package/ebuild/_config/KeywordsManager.py @@ -118,11 +118,11 @@ class KeywordsManager(object): =20 mygroups =3D self.getKeywords(cpv, slot, keywords, repo) # Repoman may modify this attribute as necessary. - pgroups =3D set(global_accept_keywords.split()) + pgroups =3D global_accept_keywords.split() =20 unmaskgroups =3D self.getPKeywords(cpv, slot, repo, global_accept_keywords) - pgroups.update(unmaskgroups) + pgroups.extend(unmaskgroups) =20 # Hack: Need to check the env directly here as otherwise stacking # doesn't work properly as negative values are lost in the config @@ -130,7 +130,9 @@ class KeywordsManager(object): egroups =3D backuped_accept_keywords.split() =20 if unmaskgroups or egroups: - pgroups =3D self._getEgroups(egroups, pgroups.copy()) + pgroups =3D self._getEgroups(egroups, pgroups) + else: + pgroups =3D set(pgroups) =20 return self._getMissingKeywords(cpv, pgroups, mygroups) =20 @@ -166,18 +168,16 @@ class KeywordsManager(object): =20 mygroups =3D self.getKeywords(cpv, slot, keywords, repo) # Repoman may modify this attribute as necessary. - pgroups =3D set(global_accept_keywords.split()) + pgroups =3D global_accept_keywords.split() =20 # Hack: Need to check the env directly here as otherwise stacking # doesn't work properly as negative values are lost in the config # object (bug #139600) - # we want to use the environment keywords here, - # but stripped to it's base arch - # we want the raw keywords needed to be accepted from the ebuild if backuped_accept_keywords: egroups =3D self._getEgroups(backuped_accept_keywords.split(), - pgroups.copy()) - pgroups =3D set([x.lstrip('~') for x in egroups]) + pgroups) + else: + pgroups =3D set(pgroups) =20 missing =3D self._getMissingKeywords(cpv, pgroups, mygroups) =20 @@ -193,10 +193,11 @@ class KeywordsManager(object): @rtype: List @return: list of KEYWORDS that have been accepted """ - mygroups.update(egroups) + mygroups =3D list(mygroups) + mygroups.extend(egroups) inc_pgroups =3D set() for x in mygroups: - if x.startswith("-"): + if x[:1] =3D=3D "-": if x =3D=3D "-*": inc_pgroups.clear() else: