Part of lp.bugs.interfaces.bugtask View In Hierarchy
Known subclasses: lp.bugs.interfaces.bugtask.IDistroBugTask, lp.bugs.interfaces.bugtask.IDistroSeriesBugTask, lp.bugs.interfaces.bugtask.INullBugTask, lp.bugs.interfaces.bugtask.IProductSeriesBugTask, lp.bugs.interfaces.bugtask.IUpstreamBugTask
Known implementations: lp.bugs.model.bugtask.BugTask
Int | id | Undocumented |
Choice | product | Undocumented |
Choice | productseries | Undocumented |
Attribute | productseriesID | The product series ID |
Choice | sourcepackagename | Undocumented |
Choice | distribution | Undocumented |
Choice | distroseries | Undocumented |
Text | statusexplanation | Undocumented |
Datetime | age | The age of this task, expressed as the length of time between the creation date and now. |
Int | task_age | The age of this task in seconds, a delta between now and the date the bug task was created. |
Bool | target_uses_malone | Undocumented |
Choice | pillar | The LP pillar (product or distribution) associated with this task. |
Attribute | other_affected_pillars | The other pillars (products or distributions) affected by this bug. This returns a list of pillars OTHER THAN the pillar associated with this particular bug. |
Field | bug_subscribers | Undocumented |
Attribute | conjoined_master | The series-specific bugtask in a conjoined relationship |
Attribute | conjoined_slave | The generic bugtask in a conjoined relationship |
Method | findSimilarBugs | Return the list of possible duplicates for this BugTask. |
Method | getConjoinedMaster | Return the conjoined master in the given bugtasks, if any. |
Method | subscribe | Subscribe this person to the underlying bug. |
Method | isSubscribed | Return True if the person is an explicit subscriber to the |
Method | transitionToMilestone | Set the BugTask milestone. |
Method | transitionToImportance | Set the BugTask importance. |
Method | setImportanceFromDebbugs | Set the Launchpad BugTask importance on the basis of a debbugs |
Method | canTransitionToStatus | Return True if the user is allowed to change the status to |
Method | transitionToStatus | Perform a workflow transition to the new_status. |
Method | userCanSetAnyAssignee | Check if the current user can set anybody sa a bugtask assignee. |
Method | userCanUnassign | Check if the current user can set assignee to None. |
Method | transitionToAssignee | Perform a workflow transition to the given assignee. |
Method | transitionToTarget | Convert the bug task to a different bug target. |
Method | updateTargetNameCache | Update the targetnamecache field in the database. |
Method | asEmailHeaderValue | Return a value suitable for an email header value for this bugtask. |
Method | getDelta | Compute the delta from old_task to this task. |
Method | getPackageComponent | Return the task's package's component or None. |
Method | userCanEditMilestone | Can the user edit the Milestone field? |
Method | userCanEditImportance | Can the user edit the Importance field? |
Inherited from IHasDateCreated:
Attribute | datecreated | The date on which I was created. |
Inherited from IHasBug:
Int | bug | Undocumented |
Inherited from ICanBeMentored:
Method | canMentor | True if this user could now offer mentoring on this piece of |
Method | isMentor | True if the user is offering mentoring for this piece of work. |
Method | offerMentoring | Record that the user is willing to mentor anyone who is trying to |
Method | retractMentoring | Remove the offer of mentoring for this work by this user. |
Inherited from IHasMentoringOffers (via ICanBeMentored):
Attribute | mentoring_offers | The list of mentoring offers related to this object. |
This method exists mainly to allow calculating the conjoined master from a cached list of bug tasks, reducing the number of db queries needed.
Parameters | bugtasks | The bugtasks to be considered when looking for the conjoined master. |
bugtasks_by_package | A cache, mapping a
ISourcePackageName to a list of bug tasks targeted to such
a package name. Both distribution and distro series tasks
should be included in this list. |
This method is required here so that MentorshipOffers can happen on IBugTask. When we move to context-less bug presentation (where the bug is at /bugs/n?task=ubuntu) then we can eliminate this if it is no longer useful.
This method is required here so that MentorshipOffers can happen on IBugTask. When we move to context-less bug presentation (where the bug is at /bugs/n?task=ubuntu) then we can eliminate this if it is no longer useful.
Set the bugtask milestone, making sure that the user is authorised to do so.
Set the bugtask importance, making sure that the user is authorised to do so.
new_status
.
Some status transitions, e.g. Triaged, require that the user be a bug supervisor or the owner of the project.
Unknown Field: new_status | new status from BugTaskStatus | |
Unknown Field: user | the user requesting the change |
For certain statuses, e.g. Confirmed, other actions will happen, like recording the date when the task enters this status.
Some status transitions require extra conditions to be met.
See canTransitionToStatus
for more details.
Unknown Field: new_status | new status from BugTaskStatus | |
Unknown Field: user | the user requesting the change |
Owners, drivers, bug supervisors and Launchpad admins can always assign to someone else. Other users can assign to someone else if a bug supervisor is not defined.
Project owner, project drivers, series drivers, bug supervisors and Launchpad admins can do this always; other users can do this only if they or their reams are the assignee.
When the bugtask assignee is changed from None to an IPerson object, the date_assigned is set on the task. If the assignee value is set to None, date_assigned is also set to None.
This method is meant to be called when an IBugTask is created or modified and will also be called from the update_stats.py cron script to ensure that the targetnamecache is properly updated when, for example, an IDistribution is renamed.
The return value is a single line of arbitrary length, so header folding should be done by the callsite, as needed.
For an upstream task, this value might look like:
product=firefox; status=New; importance=Critical; assignee=None;
See doc/bugmail-headers.txt for a complete explanation and more examples.
old_task and this task are either both IDistroBugTask's or both IUpstreamBugTask's, otherwise a TypeError is raised.
Returns an IBugTaskDelta or None if there were no changes between old_task and this task.