From 5f27c4c1e70af2d266ef93adedbf9e234f1ebc2e Mon Sep 17 00:00:00 2001 From: Andreas Moog Date: Sun, 27 Nov 2011 16:47:38 +0100 Subject: [PATCH] sponsor-patch: Check permission to unsubscribe sponsors-team (LP: #896884) --- debian/changelog | 6 +++++- ubuntutools/sponsor_patch/source_package.py | 11 ++++++----- 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/debian/changelog b/debian/changelog index 5507517..8aeb5f3 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,5 +1,6 @@ ubuntu-dev-tools (0.137) UNRELEASED; urgency=low + [ Stefano Rivera ] * mk-sbuild: Make --eatmydata command line flag actually work. * Remove dgetlp. No longer needed. * Use httplib2 everywhere that we do https. The python stdlib doesn't do @@ -15,7 +16,10 @@ ubuntu-dev-tools (0.137) UNRELEASED; urgency=low * sponsor-patch: Check the bug's title, not the task, when determining source series for syncs. - -- Stefano Rivera Mon, 21 Nov 2011 09:47:00 +0200 + [ Andreas Moog ] + * sponsor-patch: Check permission to unsubscribe sponsors-team (LP: #896884) + + -- Andreas Moog Sun, 27 Nov 2011 16:47:05 +0100 ubuntu-dev-tools (0.136) unstable; urgency=low diff --git a/ubuntutools/sponsor_patch/source_package.py b/ubuntutools/sponsor_patch/source_package.py index c2f2b99..a8b7bd9 100644 --- a/ubuntutools/sponsor_patch/source_package.py +++ b/ubuntutools/sponsor_patch/source_package.py @@ -99,11 +99,12 @@ class SourcePackage(object): bug.subscribe(person=launchpad.me) Logger.info("Subscribed me to bug #%i.", bug.id) - if launchpad.load('https://api.launchpad.net/1.0/bugs/'+str(bug.id)+'/+subscription/ubuntu-sponsors').canBeUnsubscribedByUser(): - bug.unsubscribe(person=launchpad.people['ubuntu-sponsors']) - Logger.info("Unsubscribed ubuntu-sponsors from bug #%i.", bug.id) - else: - Logger.info("Couldn't unsubscribe ubuntu-sponsors from bug #%i.", bug.id) + for sub in bug.subscriptions: + if sub.person == launchpad.people('ubuntu-sponsors') and sub.canBeUnsubscribedByUser(): + bug.unsubscribe(person=launchpad.people['ubuntu-sponsors']) + Logger.info("Unsubscribed ubuntu-sponsors from bug #%i.", bug.id) + else: + Logger.info("Couldn't unsubscribe ubuntu-sponsors from bug #%i.", bug.id) Logger.normal("Successfully acknowledged sync request bug #%i.", bug.id)