Oops when attempting register new project against team with no admins
This bug report was converted into a question: question #557408: Oops when attempting register new project against team with no admins.
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Launchpad itself |
Fix Released
|
Critical
|
Colin Watson |
Bug Description
12:33 < wgrant> beuno: It's because ~ubuntuone-hackers has no admins
12:33 < wgrant> It's trying to send the commercial subscription trial email to the team admins.
12:34 < wgrant> It should fall back to you, but it's buggy.
12:35 < wgrant> So, either create the project with a different owner and transfer it later, or get beuno to add
12:35 < wgrant> And file a bug :)
12:35 < beowulf> wgrant: will do, thanks!
12:36 < beuno> wgrant, where is it missing?
12:36 < beuno> I see myself as the owner
12:36 < wgrant> https:/
12:36 < wgrant> You're an owner, but not a direct member.
12:36 < wgrant> I guess you're a member via one of the subteams
12:37 < beuno> this is not confusing at all!
12:37 < beuno> done, I think
12:37 < wgrant> (ownership doesn't imply membership, eg. the CC manages the TB but shouldn't have TB privileges)
12:37 < beuno> beowulf, try now?
12:38 < beowulf> beuno: jonas isn't in that team?
12:39 < beowulf> beuno: wgrant: works now, thanks :)
Related branches
- Launchpad code reviewers: Pending requested
-
Diff: 29 lines (+5/-2)2 files modifiedlib/lp/registry/model/person.py (+2/-0)
lib/lp/registry/tests/test_team.py (+3/-2)
- William Grant: Approve (code)
-
Diff: 96 lines (+32/-5)4 files modifiedlib/lp/registry/interfaces/person.py (+6/-1)
lib/lp/registry/model/person.py (+2/-0)
lib/lp/registry/tests/test_subscribers.py (+20/-1)
lib/lp/registry/tests/test_team.py (+4/-3)
Changed in launchpad: | |
importance: | Undecided → Critical |
status: | New → Triaged |
tags: | added: email oops projects teams trivial |
Changed in launchpad: | |
status: | Triaged → In Progress |
assignee: | nobody → Chris Johnston (cjohnston) |
Changed in launchpad: | |
assignee: | Chris Johnston (cjohnston) → nobody |
status: | In Progress → Triaged |
Changed in launchpad: | |
status: | Triaged → Fix Released |
Changed in launchpad: | |
status: | Fix Released → Triaged |
affects: | launchpad → ubuntu |
affects: | ubuntu → launchpad |
Changed in launchpad: | |
status: | Triaged → In Progress |
status: | In Progress → Invalid |
Changed in launchpad: | |
status: | New → Triaged |
Changed in launchpad: | |
status: | Triaged → Invalid |
Changed in launchpad: | |
status: | Invalid → Triaged |
Changed in launchpad: | |
status: | Triaged → In Progress |
assignee: | nobody → Colin Watson (cjwatson) |
tags: |
added: qa-ok removed: qa-needstesting |
Changed in launchpad: | |
status: | Fix Committed → Fix Released |
OOPS-7ebcbbde547fc61bed6ae43093d436a8
AssertionError: No To: header
Traceback (most recent call last): publish, line 132, in publish callObject( request, obj) webapp. publication, line 464, in callObject getPositionalAr guments( ), request) publish, line 107, in mapply e.metaconfigure .SimpleViewClas s from /srv/launchpad. net/production/ launchpad- rev-16901/ lib/lp/ registry/ browser/ ../templates/ product- new.pt instance at 0x1543d5d0> publish, line 113, in debug_call webapp. publisher, line 440, in __call__ initialize( ) browser. pillar, line 259, in initialize PillarViewMixin , self).initialize() browser. multistep, line 114, in initialize initialize( ) browser. product, line 1953, in initialize ProjectAddStepT wo, self).initialize() browser. launchpadform, line 136, in initialize form_result = form_action. success( data) handler( self.form, self, data) browser. multistep, line 194, in continue_action action( data) browser. product, line 2164, in main_action product( data) browser. product, line 2149, in create_product project) model.product, line 1855, in createProduct _setLicenses( licenses, reset_project_ reviewed= False) model.product, line 1061, in _setLicenses LicensesModifie dEvent( self)) event) event, line 24, in dispatch component. subscribers( event, None) _api, line 136, in subscribers subscribers( objects, interface) registry, line 321, in subscribers subscribers( objects, provided) adapter, line 583, in subscribers n(*objects) event, line 32, in objectEventNotify component. subscribers( (event. object, event), None) _api, line 136, in subscribers subscribers( objects, interface) registry, line 321, in subscribers subscribers( objects, provided) adapter, line 583, in subscribers n(*objects) subscribers, line 34, in product_ licenses_ modified n.send( ) subscribers, line 109, in send {'Reply- To': commercial_ address} ) mail.sendmail, line 197, in simple_sendmail mail.sendmail, line 317, in send self.makeMessag e(), self.envelope_to, bulk=self.bulk)
Module zope.publisher.
result = publication.
Module lp.services.
return mapply(ob, request.
Module zope.publisher.
return debug_call(obj, args)
- __traceback_info__: <security proxied zope.browserpag
Module zope.publisher.
return obj(*args)
Module lp.services.
self.
Module lp.registry.
super(
Module lp.app.
view.
Module lp.registry.
super(
Module lp.app.
self.
Module zope.formlib.form, line 620, in success
return self.success_
Module lp.app.
return self.main_
Module lp.registry.
self.product = self.create_
Module lp.registry.
project=
Module lp.registry.
product.
Module lp.registry.
notify(
Module zope.event, line 31, in notify
subscriber(
Module zope.component.
zope.
Module zope.component.
return sitemanager.
Module zope.component.
return self.adapters.
Module zope.interface.
subscriptio
Module zope.component.
zope.
Module zope.component.
return sitemanager.
Module zope.component.
return self.adapters.
Module zope.interface.
subscriptio
Module lp.registry.
notificatio
Module lp.registry.
subject, message, headers=
Module lp.services.
return ctrl.send()
Module lp.services.
return sendmail(
Module lp.service...