Commit graph

213 commits

Author SHA1 Message Date
Dustin J. Mitchell
634aaadb73 Reorganize handling of task data
This abandons field-by-field compatibility with the TaskWarrior TDB2
format, which wasn't a sustainable strategy anyway.

Instead, tasks are represented as a TaskMap with custom key formats.  In
this commit, there are only a few allowed keys, with room to grow.

Replica returns convenience wrappers Task (read-only) and TaskMut
(read-write) with getters and setters to make modifying tasks easier.
2020-11-23 12:53:58 -05:00
Dustin J. Mitchell
c2c2a00ed5
Merge pull request #36 from djmitche/issue20
refactor working-set support, improve data model docs
2020-11-22 19:48:52 -05:00
Dustin J. Mitchell
03e4fc7cee Refactor working-set support, add pending tasks
This refactors the working-set support so that taskdb knows how to
rebuild the working set (in a single transaction) but replica knows what
tasks should be in that set.

This also adds support for automatically adding tasks to the working set
when they are marked pending.  Note that tasks are not *removed* from
the working set automatically, but only on a gc operation.
2020-11-22 18:19:05 -05:00
Dustin J. Mitchell
39a0dfe798 revise and expand docs about storage / taskdb / replica 2020-11-22 17:30:42 -05:00
Dustin J. Mitchell
ffbf272afc
Merge pull request #32 from djmitche/issue22
fix up some TODOs in replica.rs
2020-11-22 00:56:10 -05:00
Dustin J. Mitchell
1a2c17ab8c
Merge branch 'main' into issue22 2020-11-22 00:55:58 -05:00
Dustin J. Mitchell
4074db7729
Merge pull request #31 from djmitche/issue15-more
remove more taskwarrior compatibility stuff
2020-11-22 00:55:39 -05:00
Dustin J. Mitchell
f45292d049 remove more taskwarrior compatibility stuff 2020-11-22 00:51:41 -05:00
Dustin J. Mitchell
74fb3c3c41 fix up some TODOs in replica.rs 2020-11-21 23:46:53 -05:00
Dustin J. Mitchell
b3a0fe9f20
Merge pull request #27 from djmitche/issue12
add an mdbook
2020-11-21 21:32:09 -05:00
Dustin J. Mitchell
17fe90c8d0 poor excuse for documentation 2020-11-21 21:27:58 -05:00
Dustin J. Mitchell
ae8872d51e add an mdbook 2020-11-21 21:27:58 -05:00
Dustin J. Mitchell
1e28289b8b
Merge pull request #19 from djmitche/issue3
use a v1 .taskcluster.yml
2020-11-21 19:15:57 -05:00
Dustin J. Mitchell
c8a28b5ab3 install rustfmt 2020-11-21 19:09:55 -05:00
Dustin J. Mitchell
2bd68e85d3 remove TODO (now moved to issues) 2020-11-21 19:06:15 -05:00
Dustin J. Mitchell
0e792ad584 use a v1 .taskcluster.yml 2020-11-21 18:55:29 -05:00
Dustin J. Mitchell
785f3940c5
Merge pull request #17 from djmitche/issue13
rename to taskchampion
2020-11-21 18:01:44 -05:00
Dustin J. Mitchell
1fa6155b22 rename to taskchampion 2020-11-21 18:01:25 -05:00
Dustin J. Mitchell
8ed54e9728
Merge pull request #16 from djmitche/issue15
remove taskwarrior compatibility stuff
2020-11-21 17:54:01 -05:00
Dustin J. Mitchell
3ddaff07ca remove taskwarrior compatibility stuff 2020-11-21 17:52:09 -05:00
Dustin J. Mitchell
ae93d91b6e more CLI compatibility WIP 2020-02-02 18:46:27 -05:00
Dustin J. Mitchell
cfdb266800 add some cli parsing stuff 2020-02-02 15:11:14 -05:00
Dustin J. Mitchell
61b2de132b support rebuilding the working set 2020-01-19 15:55:15 -05:00
Dustin J. Mitchell
12980da5fd add working_set support to taskstorage 2020-01-19 14:56:09 -05:00
Dustin J. Mitchell
ad08991292 Start on making replica higher-level, with some TODO's 2020-01-19 14:03:03 -05:00
Dustin J. Mitchell
4203f232ad docs 2020-01-12 16:00:40 -05:00
Dustin J. Mitchell
f8977c9ce3 use kv in cli 2020-01-12 13:51:58 -05:00
Dustin J. Mitchell
4172c7012c simplify the taskstorage methods 2020-01-12 13:48:16 -05:00
Dustin J. Mitchell
2f973d3e62 task storge implementation based on kv / LMDB 2020-01-12 13:36:02 -05:00
Dustin J. Mitchell
afd11d08a7 make the TaskStorage API fallible everywhere 2020-01-05 15:39:34 -05:00
Dustin J. Mitchell
611b1cd68f factor storage out to a trait object 2020-01-05 15:00:08 -05:00
Dustin J. Mitchell
e228c99b83 partial refactor to separate taskdb and storage 2020-01-05 13:17:07 -05:00
Dustin J. Mitchell
727db7f669 name taskwarrior-rest 2020-01-02 21:08:17 -05:00
Dustin J. Mitchell
752d05e96b merge README 2020-01-01 19:57:01 -05:00
Dustin J. Mitchell
2d000fdeb9 merge ot with rask 2020-01-01 19:54:26 -05:00
Dustin J. Mitchell
e17943d878 add a simple CLI 2020-01-01 18:53:12 -05:00
Dustin J. Mitchell
b898ec1fde add a Replica 2020-01-01 18:22:01 -05:00
Dustin J. Mitchell
f6ffcc7039 add proptest for action sequences 2020-01-01 17:45:50 -05:00
Dustin J. Mitchell
04f6b1d421 add test for syncing deletes and creates 2019-12-29 13:38:36 -05:00
Dustin J. Mitchell
41acb1fa1e Add support for Delete operations 2019-12-29 13:16:42 -05:00
Dustin J. Mitchell
e83bdc28cd use strings as values, with option to allow removing 2019-12-29 11:54:59 -05:00
Dustin J. Mitchell
e5bd258e84 comments about applying 2019-12-29 11:09:37 -05:00
Dustin J. Mitchell
4a62413e21 add TODO 2019-12-29 11:09:05 -05:00
Dustin J. Mitchell
59f4e6abd7 actually support synchronization 2019-12-28 22:46:10 -05:00
Dustin J. Mitchell
0a2293a9c5 use proptest to check invariants 2019-12-28 14:31:37 -05:00
Dustin J. Mitchell
8799636c1a add a transform function for operations 2019-12-28 12:17:42 -05:00
Dustin J. Mitchell
72a12c751e remove text operations 2019-12-28 11:45:26 -05:00
Dustin J. Mitchell
0c3e4d5c2e add a tasks method to db 2019-12-28 11:44:45 -05:00
Dustin J. Mitchell
83b2318a06 backup scheme 2019-12-28 11:24:20 -05:00
Dustin J. Mitchell
e5a92826f6 add taskdb 2019-12-28 11:20:35 -05:00