X-Git-Url: https://git.madduck.net/etc/taskwarrior.git/blobdiff_plain/96a5360582493699cf77a1a0b65aa83e42bb1743..97eff0b3747614feaf9522d1338106ac98978c40:/tasklib/backends.py?ds=sidebyside diff --git a/tasklib/backends.py b/tasklib/backends.py index 440cfe4..3241dd4 100644 --- a/tasklib/backends.py +++ b/tasklib/backends.py @@ -94,7 +94,8 @@ class TaskWarrior(Backend): VERSION_2_4_4 = six.u('2.4.4') VERSION_2_4_5 = six.u('2.4.5') - def __init__(self, data_location=None, create=True, taskrc_location='~/.taskrc'): + def __init__(self, data_location=None, create=True, + taskrc_location='~/.taskrc'): self.taskrc_location = os.path.expanduser(taskrc_location) # If taskrc does not exist, pass / to use defaults and avoid creating @@ -132,7 +133,10 @@ class TaskWarrior(Backend): overrides.update(config_override or dict()) for item in overrides.items(): command_args.append('rc.{0}={1}'.format(*item)) - command_args.extend([x.decode('utf-8') for x in args]) + command_args.extend([ + x.decode('utf-8') if isinstance(x, six.binary_type) + else six.text_type(x) for x in args + ]) return command_args def _get_version(self): @@ -211,7 +215,8 @@ class TaskWarrior(Backend): if self.version < self.VERSION_2_4_0: return task._data['description'] else: - return six.u("description:'{0}'").format(task._data['description'] or '') + return six.u("description:'{0}'").format(task._data['description'] + or '') def convert_datetime_string(self, value): @@ -248,7 +253,7 @@ class TaskWarrior(Backend): ) config = dict() - config_regex = re.compile(r'^(?P[^\s]+)\s+(?P[^\s].+$)') + config_regex = re.compile(r'^(?P[^\s]+)\s+(?P[^\s].*$)') for line in raw_output: match = config_regex.match(line) @@ -274,6 +279,7 @@ class TaskWarrior(Backend): error_msg = stderr.strip() else: error_msg = stdout.strip() + error_msg += u'\nCommand used: ' + u' '.join(command_args) raise TaskWarriorException(error_msg) # Return all whole triplet only if explicitly asked for