l.b.i.s.ISpecification(INewSpecification, INewSpecificationTarget, IHasOwner, ICanBeMentored, IHasLinkedBranches) : interface documentation

Part of lp.blueprints.interfaces.specification View In Hierarchy

Known implementations: lp.blueprints.model.specification.Specification

A Specification.
Int id Undocumented
Choice priority Undocumented
Datetime datecreated Undocumented
PublicPersonChoice owner Undocumented
Choice product Undocumented
Choice distribution Undocumented
Choice productseries Choose a series in which you would like to deliver this feature. Selecting '(no value)' will clear the goal.
Choice distroseries Choose a series in which you would like to deliver this feature. Selecting '(no value)' will clear the goal.
Choice milestone The milestone in which we would like this feature to be delivered.
Attribute goal The series for which this feature is a goal.
Choice goalstatus Whether or not the drivers have accepted this feature as a goal for the targeted series.
Attribute goal_proposer The person who nominated the spec for this series.
Attribute date_goal_proposed The date of the nomination.
Attribute goal_decider The person who approved or declined the spec a a goal.
Attribute date_goal_decided The date the spec was approved or declined as a goal.
Text whiteboard Any notes on the status of this spec you would like to make. Your changes will override the current text.
Bool direction_approved Check this to indicate that the drafter and assignee have satisfied the approver that they are headed in the right basic direction with this specification.
Int man_days An estimate of the number of developer days it will take to implement this feature. Please only provide an estimate if you are relatively confident in the number.
Choice implementation_status The state of progress being made on the actual implementation or delivery of this feature.
Choice superseded_by The specification which supersedes this one. Note that selecting a specification here and pressing Continue will change the specification status to Superseded.
Attribute starter The person who first set the state of the spec to the values that we consider mark it as started.
Attribute date_started The date when this spec was marked started.
Attribute completer The person who finally set the state of the spec to the values that we consider mark it as complete.
Attribute date_completed The date when this spec was marked complete. Note that complete also includes "obsolete" and superseded. Essentially, it is the state where no more work will be done on the feature.
Attribute subscriptions The set of subscriptions to this spec.
Attribute subscribers The set of subscribers to this spec.
Attribute sprints The sprints at which this spec is discussed.
Attribute sprint_links The entries that link this spec to sprints.
Attribute feedbackrequests The set of feedback requests queued.
Attribute dependencies Specs on which this spec depends.
Attribute blocked_specs Specs for which this spec is a dependency.
Attribute all_deps All the dependencies, including dependencies of dependencies.
Attribute all_blocked All specs blocked on this, and those blocked on the blocked ones.
Attribute linked_branches The entries that link the branches to the spec.
Attribute informational Is True if this spec is purely informational and requires no implementation.
Attribute is_complete Is True if this spec is already completely implemented. Note that it is True for informational specs, since they describe general functionality rather than specific code to be written. It is also true of obsolete and superseded specs, since there is no longer any need to schedule work for them.
Attribute is_incomplete Is True if this work still needs to be done. Is in fact always the opposite of is_complete.
Attribute is_blocked Is True if this spec depends on another spec which is still incomplete.
Attribute is_started Is True if the spec is in a state which we consider to be "started". This looks at the delivery attribute, and also considers informational specs to be started when they are approved.
Method retarget Retarget the spec to a new product or distribution. One of
Method getSprintSpecification Get the record that links this spec to the named sprint.
Method getFeedbackRequests Return the requests for feedback for a given person on this
Method notificationRecipientAddresses Return the list of email addresses that receive notifications.
Method proposeGoal Propose this spec for a series or distroseries.
Method acceptBy Mark the spec as being accepted for its current series goal.
Method declineBy Mark the spec as being declined as a goal for the proposed
Attribute has_accepted_goal Is true if this specification has been proposed as a goal for a specific series, and the drivers of that series have accepted the goal.
Method updateLifecycleStatus Mark the specification as started, and/or complete, if appropriate.
Method getDelta Return a dictionary of things that changed between this spec and
Method subscription Return the subscription for this person to this spec, or None.
Method subscribe Subscribe this person to the feature specification.
Method unsubscribe Remove the person's subscription to this spec.
Method getSubscriptionByName Return a subscription based on the person's name, or None.
Method isSubscribed Is person subscribed to this spec?
Method queue Put this specification into the feedback queue of the given person,
Method unqueue Remove the feedback request by the requester for this spec, from
Method linkSprint Put this spec on the agenda of the sprint.
Method unlinkSprint Remove this spec from the agenda of the sprint.
Method createDependency Create a dependency for this spec on the spec provided.
Method removeDependency Remove any dependency of this spec on the spec provided.
Method getBranchLink Return the SpecificationBranch link for the branch, or None.

Inherited from INewSpecification:

SpecNameField name May contain lower-case letters, numbers, and dashes. It will be used in the specification url. Examples: mozilla-type-ahead-find, postgres-smart-serial.
Title title Describe the feature as clearly as possible in up to 70 characters. This title is displayed in every feature list or report.
SpecURLField specurl The URL of the specification. This is usually a wiki page.
Summary summary A single-paragraph description of the feature. This will also be displayed in most feature listings.
Choice definition_status The current status of the process to define the feature and get approval for the implementation plan.
PublicPersonChoice assignee The person responsible for implementing the feature.
PublicPersonChoice drafter The person responsible for drafting the specification.
PublicPersonChoice approver The person responsible for approving the specification, and for reviewing the code when it's ready to be landed.

Inherited from INewSpecificationTarget:

Choice target The project for which this proposal is being made.

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.

Inherited from IHasLinkedBranches:

Method linkBranch Associate a branch with this bug.
Method unlinkBranch Unlink a branch from this bug.
id =
Undocumented
priority =
Undocumented
datecreated =
Undocumented
owner =
Undocumented
product =
Undocumented
distribution =
Undocumented
productseries =
Choose a series in which you would like to deliver this feature. Selecting '(no value)' will clear the goal.
distroseries =
Choose a series in which you would like to deliver this feature. Selecting '(no value)' will clear the goal.
milestone =
The milestone in which we would like this feature to be delivered.
goal =
The series for which this feature is a goal.
goalstatus =
Whether or not the drivers have accepted this feature as a goal for the targeted series.
goal_proposer =
The person who nominated the spec for this series.
date_goal_proposed =
The date of the nomination.
goal_decider =
The person who approved or declined the spec a a goal.
date_goal_decided =
The date the spec was approved or declined as a goal.
whiteboard =
Any notes on the status of this spec you would like to make. Your changes will override the current text.
direction_approved =
Check this to indicate that the drafter and assignee have satisfied the approver that they are headed in the right basic direction with this specification.
man_days =
An estimate of the number of developer days it will take to implement this feature. Please only provide an estimate if you are relatively confident in the number.
implementation_status =
The state of progress being made on the actual implementation or delivery of this feature.
superseded_by =
The specification which supersedes this one. Note that selecting a specification here and pressing Continue will change the specification status to Superseded.
starter =
The person who first set the state of the spec to the values that we consider mark it as started.
date_started =
The date when this spec was marked started.
completer =
The person who finally set the state of the spec to the values that we consider mark it as complete.
date_completed =
The date when this spec was marked complete. Note that complete also includes "obsolete" and superseded. Essentially, it is the state where no more work will be done on the feature.
subscriptions =
The set of subscriptions to this spec.
subscribers =
The set of subscribers to this spec.
sprints =
The sprints at which this spec is discussed.
sprint_links =
The entries that link this spec to sprints.
feedbackrequests =
The set of feedback requests queued.
dependencies =
Specs on which this spec depends.
blocked_specs =
Specs for which this spec is a dependency.
all_deps =
All the dependencies, including dependencies of dependencies.
all_blocked =
All specs blocked on this, and those blocked on the blocked ones.
linked_branches =
The entries that link the branches to the spec.
informational =
Is True if this spec is purely informational and requires no implementation.
is_complete =
Is True if this spec is already completely implemented. Note that it is True for informational specs, since they describe general functionality rather than specific code to be written. It is also true of obsolete and superseded specs, since there is no longer any need to schedule work for them.
is_incomplete =
Is True if this work still needs to be done. Is in fact always the opposite of is_complete.
is_blocked =
Is True if this spec depends on another spec which is still incomplete.
is_started =
Is True if the spec is in a state which we consider to be "started". This looks at the delivery attribute, and also considers informational specs to be started when they are approved.
def retarget(product=None, distribution=None):
Retarget the spec to a new product or distribution. One of product or distribution must be None (but not both).
def getSprintSpecification(sprintname):
Get the record that links this spec to the named sprint.
def getFeedbackRequests(person):
Return the requests for feedback for a given person on this specification.
def notificationRecipientAddresses():
Return the list of email addresses that receive notifications.
def proposeGoal(goal, proposer):
Propose this spec for a series or distroseries.
def acceptBy(decider):
Mark the spec as being accepted for its current series goal.
def declineBy(decider):
Mark the spec as being declined as a goal for the proposed series.
has_accepted_goal =
Is true if this specification has been proposed as a goal for a specific series, and the drivers of that series have accepted the goal.
def updateLifecycleStatus(user):
Mark the specification as started, and/or complete, if appropriate.

This will verify that the state of the specification is in fact "complete" (there is a completeness test in Specification.is_complete) and then record the completer and the date_completed. If the spec is not completed, then it ensures that nothing is recorded about its completion.

It returns a SpecificationLifecycleStatus dbschema showing the overall state of the specification IF the state has changed.

def getDelta(old_spec, user):
Return a dictionary of things that changed between this spec and the old_spec.

This method is primarily used by event subscription code, to determine what has changed during an ObjectModifiedEvent.

def subscription(person):
Return the subscription for this person to this spec, or None.
def subscribe(person, essential=False):
Subscribe this person to the feature specification.
def unsubscribe(person):
Remove the person's subscription to this spec.
def getSubscriptionByName(name):
Return a subscription based on the person's name, or None.
def isSubscribed(person):
Is person subscribed to this spec?

Returns True if the user is explicitly subscribed to this spec (no matter what the type of subscription), otherwise False.

If person is None, the return value is always False.

def queue(provider, requester, queuemsg=None):
Put this specification into the feedback queue of the given person, with an optional message.
def unqueue(provider, requester):
Remove the feedback request by the requester for this spec, from the provider's feedback queue.
def linkSprint(sprint, user):
Put this spec on the agenda of the sprint.
def unlinkSprint(sprint):
Remove this spec from the agenda of the sprint.
def createDependency(specification):
Create a dependency for this spec on the spec provided.
def removeDependency(specification):
Remove any dependency of this spec on the spec provided.
def getBranchLink(branch):
Return the SpecificationBranch link for the branch, or None.
API Documentation for Launchpad, generated by pydoctor at 2010-09-27 00:00:11.