Skip to content

Enums

Type-safe enumerations for TaskWarrior values.

Priority

Task priority levels.

Priority

Bases: str, Enum

Task priority levels in TaskWarrior.

Priority affects the urgency score of a task. Higher priority tasks appear first in task listings.

Attributes:

Name Type Description
HIGH

High priority ("H"). Highest urgency boost.

MEDIUM

Medium priority ("M"). Moderate urgency boost.

LOW

Low priority ("L"). Minimal urgency boost.

NONE

No priority set (""). No urgency impact.

Example

from taskwarrior import TaskInputDTO, Priority task = TaskInputDTO( ... description="Urgent task", ... priority=Priority.HIGH ... )

HIGH = 'H' class-attribute instance-attribute

MEDIUM = 'M' class-attribute instance-attribute

LOW = 'L' class-attribute instance-attribute

NONE = '' class-attribute instance-attribute

TaskStatus

Task status values.

TaskStatus

Bases: str, Enum

Task status values as defined by TaskWarrior.

TaskWarrior assigns a status to each task that reflects its current state in the task lifecycle.

Attributes:

Name Type Description
PENDING

Task is active and waiting to be completed.

COMPLETED

Task has been marked as done.

DELETED

Task has been deleted (but not purged).

WAITING

Task is hidden until its wait date.

RECURRING

Task is a recurring task template.

Example

from taskwarrior import TaskStatus task = tw.get_task(uuid) if task.status == TaskStatus.PENDING: ... print("Task is still pending")

PENDING = 'pending' class-attribute instance-attribute

COMPLETED = 'completed' class-attribute instance-attribute

DELETED = 'deleted' class-attribute instance-attribute

WAITING = 'waiting' class-attribute instance-attribute

RECURRING = 'recurring' class-attribute instance-attribute

RecurrencePeriod

Recurrence periods for recurring tasks.

RecurrencePeriod

Bases: str, Enum

Supported recurrence periods for recurring tasks.

TaskWarrior supports both standard keywords and custom duration expressions.

Standard Keywords (Recommended): - DAILY, WEEKLY, MONTHLY, YEARLY - QUARTERLY, SEMIANNUALLY - HOURLY, MINUTELY, SECONDLY

Custom Expressions (Also Valid): - "2weeks" (Every two weeks) - "3days" (Every three days) - "every 10 days" - "2months" - "6months"

Example (Standard): >>> task = TaskInputDTO(description="Daily standup", recur=RecurrencePeriod.DAILY)

Example (Custom): >>> task = TaskInputDTO(description="Bi-weekly report", recur="2weeks") # Note: Passing a string directly bypasses the Enum but is fully supported by TaskWarrior.

DAILY = 'daily' class-attribute instance-attribute

WEEKLY = 'weekly' class-attribute instance-attribute

MONTHLY = 'monthly' class-attribute instance-attribute

YEARLY = 'yearly' class-attribute instance-attribute

QUARTERLY = 'quarterly' class-attribute instance-attribute

SEMIANNUALLY = 'semiannually' class-attribute instance-attribute

HOURLY = 'hourly' class-attribute instance-attribute

MINUTELY = 'minutely' class-attribute instance-attribute

SECONDLY = 'secondly' class-attribute instance-attribute

UdaType

Data types for User Defined Attributes.

UdaType

Bases: str, Enum

Data types for User Defined Attributes.

TaskWarrior supports several data types for custom attributes. The type determines how values are validated and displayed.

Attributes:

Name Type Description
STRING

Free-form text value.

NUMERIC

Numeric value (integer or float).

DATE

Date/time value in TaskWarrior format.

DURATION

Duration value (e.g., "2hours", "1day").

UUID

UUID reference to another task.

Example

from taskwarrior.dto.uda_dto import UdaConfig, UdaType uda = UdaConfig(name="severity", uda_type=UdaType.STRING)

STRING = 'string' class-attribute instance-attribute

NUMERIC = 'numeric' class-attribute instance-attribute

DATE = 'date' class-attribute instance-attribute

DURATION = 'duration' class-attribute instance-attribute

UUID = 'uuid' class-attribute instance-attribute