ralphbean/bugwarrior — pull request #67 by kostajh (2013-04-11 14:20:21+00:00)
Title: Provide option to use TaskWarriorExperimental

This is a follow up to #64, and as a bonus #52 is also resolved if bugwarrior is used in 'experimental' mode.

To use:

0. Update to TaskWarrior 2.2.0 stable as that is what this has been tested against.

1. Backup your task completed, pending, and undo files! :)

2. In the `[general]` section of your `.bugwarriorrc`, add `experimental = True`

3. Create a bugwarrior taskrc file at `~/.bugwarrior_taskrc`. Create a `.bugwarrior-tasks` directory (probably next to your existing `.tasks` directory). The contents of the `~/.bugwarrior_taskrc` file should be:

> data.location=/path/to/.bugwarrior-tasks
>json.array=true
>color=off
>verbose=nothing
>taskw.experimental=true

4. Run `bugwarrior-pull`.

A run through of what happens:

1. Bugwarrior will load the `~/.bugwarrior_taskrc` that you created.
2. All tasks will be synced to the `data.location` defined in Bugwarriors taskrc.
3. `task merge` is called, which will update or create tasks in the primary TaskWarrior database. `task done` is called to complete any tasks in the primary TaskWarrior database, since `task merge` won't complete tasks, just update/create.
4. `task delete` is called on all tasks in Bugwarrior's task database. (They are not permanently removed from completed.data, just marked as deleted.) This is what fixes #52.

It's worth noting that annotation updates won't be handled due to limitations in TaskWarrior but this will hopefully be fixed in TW 2.3.0.