woob.capabilities.bugtracker

class woob.capabilities.bugtracker.Attachment(id='', url=NotLoaded, backend=None)

Bases: woob.capabilities.base.BaseObject

Attachment of an issue.

Variables

filename – (str) Filename

class woob.capabilities.bugtracker.CapBugTracker

Bases: woob.capabilities.base.Capability

Bug trackers websites.

SORT_DATE = 3
SORT_PRIORITY = 2
SORT_RATING = 1
SORT_RELEVANCE = 0
create_issue(project)

Create an empty issue on the given project.

Parameters

project (Project) – project

Returns

the created issue

Return type

Issue

get_issue(id)

Get an issue from its ID.

Parameters

id – ID of issue

Return type

Issue

get_project(id)

Get a project from its ID.

Return type

Project

iter_issues(query, sortby=0, ascending=False)

Iter issues with optionnal patterns.

Parameters

query (Query) – query

Return type

iter[Issue]

iter_projects()

Iter projects.

Return type

iter[Project]

post_issue(issue)

Post an issue to create or update it.

Parameters

issue (Issue) – issue to create or update

remove_issue(issue)

Remove an issue.

Parameters

issue (Issue) – issue

update_issue(issue, update)

Add an update to an issue.

Parameters
  • issue (Issue) – issue or id of issue

  • update (Update) – an Update object

class woob.capabilities.bugtracker.Change(id='', url=NotLoaded, backend=None)

Bases: woob.capabilities.base.BaseObject

A change of an update.

Variables
  • field – (str) What field has been changed

  • last – (str) Last value of field

  • new – (str) New value of field

class woob.capabilities.bugtracker.Issue(id='', url=NotLoaded, backend=None)

Bases: woob.capabilities.base.BaseObject

Represents an issue.

Variables
  • project – (Project) Project of this issue

  • title – (str) Title of issue

  • body – (str) Text of issue

  • creation – (date, datetime) Date when this issue has been created

  • updated – (date, datetime) Date when this issue has been updated for the last time

  • start – (date, datetime) Date when this issue starts

  • due – (date, datetime) Date when this issue is due for

  • attachments – (list, tuple) List of attached files

  • history – (list, tuple) History of updates

  • author – (User) Author of this issue

  • assignee – (User) User assigned to this issue

  • tracker – (str) Name of the tracker

  • category – (str) Name of the category

  • version – (Version) Target version of this issue

  • status – (Status) Status of this issue

  • fields – (dict) Custom fields (key,value)

  • priority – (str) Priority of the issue

  • tags – (tuple, list) Categories/Tags of the issue

  • related_issues – (list) Related issues

exception woob.capabilities.bugtracker.IssueError

Bases: woob.capabilities.base.UserError

Raised when there is an error with an issue.

class woob.capabilities.bugtracker.Project(id, name, url=None)

Bases: woob.capabilities.base.BaseObject

Represents a project.

Variables
  • name – (str) Name of the project

  • members – (list) Members of projects

  • versions – (list) List of versions available for this project

  • trackers – (list) All trackers

  • categories – (list) All categories

  • statuses – (list) Available statuses for issues

  • priorities – (list) Available priorities for issues

  • tags – (tuple, list) All tags

  • fields – (list) Custom fields names

find_status(name)

Find a status from a name.

Parameters

name (str) – Name of status

Return type

Status

find_user(id, name)

Find a user from its ID.

If not found, create a User with the specified name.

Parameters
  • id (str) – ID of user

  • name (str) – Name of user

Return type

User

find_version(id, name)

Find a version from an ID.

If not found, create a Version with the specified name.

Parameters
  • id (str) – ID of version

  • name (str) – Name of version

Return type

Version

class woob.capabilities.bugtracker.Query(id='', url=None)

Bases: woob.capabilities.base.BaseObject

Query to find an issue.

Variables
  • project – (str, str, Project) Filter on projects

  • title – (str) Filter on titles

  • author – (str, str, User) Filter on authors

  • assignee – (str, str, User) Filter on assignees

  • version – (str, str, Version) Filter on versions

  • category – (str) Filter on categories

  • status – (str, str, Status) Filter on statuses

  • tags – (tuple, list) Filter on tags

  • fields – (dict) Filter on custom fields

class woob.capabilities.bugtracker.Status(id, name, value, url=None)

Bases: woob.capabilities.base.BaseObject

Status of an issue.

VALUE_ constants are the primary status types.

Variables
  • name – (str) Name of status

  • value – (int, int) Value of status (constants VALUE_*)

VALUE_NEW = 0
VALUE_PROGRESS = 1
VALUE_REJECTED = 3
VALUE_RESOLVED = 2
class woob.capabilities.bugtracker.Update(id='', url=NotLoaded, backend=None)

Bases: woob.capabilities.base.BaseObject

Represents an update of an issue.

Variables
  • author – (User) Author of update

  • date – (date, datetime) Date of update

  • hours – (timedelta) Time activity

  • message – (str) Log message

  • attachments – (list, tuple) Files attached to update

  • changes – (list, tuple) List of changes

class woob.capabilities.bugtracker.User(id, name, url=None)

Bases: woob.capabilities.base.BaseObject

User.

Variables

name – (str) Name of user

class woob.capabilities.bugtracker.Version(id, name, url=None)

Bases: woob.capabilities.base.BaseObject

Version of a project.

Variables

name – (str) Name of version