From 7ed4347de538f1420445e0473ced754878bf865e Mon Sep 17 00:00:00 2001 From: Andreas Moog Date: Sun, 27 Nov 2011 15:54:53 +0100 Subject: [PATCH] sponsor-patch: Check permission to unsubscribe sponsors-team (LP: #896884) --- debian/changelog | 6 +++++- ubuntutools/sponsor_patch/source_package.py | 7 +++++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/debian/changelog b/debian/changelog index afbf2cf..51ced06 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 @@ -11,7 +12,10 @@ ubuntu-dev-tools (0.137) UNRELEASED; urgency=low non-backports pocket. Implemented by making lpapicache's getSourcePackage smarter. - -- 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 15:54:10 +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 2885713..af018fe 100644 --- a/ubuntutools/sponsor_patch/source_package.py +++ b/ubuntutools/sponsor_patch/source_package.py @@ -99,8 +99,11 @@ class SourcePackage(object): bug.subscribe(person=launchpad.me) Logger.info("Subscribed me to bug #%i.", bug.id) - bug.unsubscribe(person=launchpad.people['ubuntu-sponsors']) - Logger.info("Unsubscribed ubuntu-sponsors from 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) Logger.normal("Successfully acknowledged sync request bug #%i.", bug.id)