X-Git-Url: https://git.madduck.net/etc/taskwarrior.git/blobdiff_plain/52ee36a43f1ab4c46ab7c7c1fbaba7a1c374d5e3..751f8d376a042c6148e8c161f813ebd967c24e52:/tasklib/backends.py?ds=inline diff --git a/tasklib/backends.py b/tasklib/backends.py index adfb9a4..0fe3f98 100644 --- a/tasklib/backends.py +++ b/tasklib/backends.py @@ -1,4 +1,5 @@ import abc +import copy import datetime import json import logging @@ -6,6 +7,7 @@ import os import re import six import subprocess +import copy from .task import Task, TaskQuerySet from .filters import TaskWarriorFilter @@ -80,7 +82,7 @@ class TaskWarriorException(Exception): pass -class TaskWarrior(object): +class TaskWarrior(Backend): VERSION_2_1_0 = six.u('2.1.0') VERSION_2_2_0 = six.u('2.2.0') @@ -155,7 +157,7 @@ class TaskWarrior(object): else: escaped_serialized_value = six.u("'{0}'").format(serialized_value) - format_default = lambda: six.u("{0}:{1}").format(field, + format_default = lambda task: six.u("{0}:{1}").format(field, escaped_serialized_value) format_func = getattr(self, 'format_{0}'.format(field), @@ -186,8 +188,8 @@ class TaskWarrior(object): old_dependencies = task._original_data.get('depends', set()) - added = self['depends'] - old_dependencies - removed = old_dependencies - self['depends'] + added = task['depends'] - old_dependencies + removed = old_dependencies - task['depends'] # Removed dependencies need to be prefixed with '-' return 'depends:' + ','.join( @@ -217,6 +219,8 @@ class TaskWarrior(object): "datetime, its type is not supported: {}" .format(type(value))) + return localized + @property def filter_class(self): return TaskWarriorFilter