From f762242ebbdc010a330cc1803c0e415fb12d0967 Mon Sep 17 00:00:00 2001 From: Anders Kaseorg Date: Sun, 10 May 2009 17:41:03 -0400 Subject: [PATCH] * ubuntutools/lp/functions.py: - Simplify isLPTeamMember. andersk: what does super_teams do? Laney: I found super_teams using dir(launchpad.me). It returns the collection of teams that the person is a member of. I'm not sure it's actually documented. andersk: I've found the documentation to be a bit lacking. Does it count indirect memberships too? Laney: yes, it appears to. andersk: If that's right then your version is better than mine andersk: Could you prepare a branch for merging? I'd just do it directly but I'm a bit busy now so can't, and I'm afraid I'll forget --- debian/changelog | 4 ++++ ubuntutools/lp/functions.py | 16 +--------------- 2 files changed, 5 insertions(+), 15 deletions(-) diff --git a/debian/changelog b/debian/changelog index eff8a70..0822596 100644 --- a/debian/changelog +++ b/debian/changelog @@ -30,6 +30,10 @@ ubuntu-dev-tools (0.74) UNRELEASED; urgency=low - Check if user has upload privileges instead of checking for team membership when seeing if operations are permitted + [ Anders Kaseorg ] + * ubuntutools/lp/functions.py: + - Simplify isLPTeamMember. + -- Iain Lane Sun, 10 May 2009 19:13:34 +0100 ubuntu-dev-tools (0.73) karmic; urgency=low diff --git a/ubuntutools/lp/functions.py b/ubuntutools/lp/functions.py index 3c2f7d2..95eacf4 100644 --- a/ubuntutools/lp/functions.py +++ b/ubuntutools/lp/functions.py @@ -143,23 +143,9 @@ def isLPTeamMember(team): If the user is a member of the team: return True. If the user is not a member of the team: return False. - - If the team is not found: raise a TeamNotFoundException. """ - try: - - lpteam = launchpad.people[team] - - if not lpteam.is_team: - raise KeyError - - return _findMember(lpteam, launchpad.me) - - except KeyError: - - raise TeamNotFoundException("The team %s does not exist on Launchpad" % - team) + return any(t.name == team for t in launchpad.me.super_teams) def isPerPackageUploader(package): # Checks if the user has upload privileges for a certain package.