Commit graph

40 commits

Author SHA1 Message Date
Dustin J. Mitchell
a8d45c67c6 Encrypt content sent to the server
This implements client-side encryption, so that users' task information
is not availble to the server (or to anyone who does not have the
`encryption_secret`).
2020-12-27 18:51:41 +00:00
Dustin J. Mitchell
75aaf8d4ab use static strings for usage 2020-12-24 21:07:27 +00:00
Dustin J. Mitchell
8ba6277cce use 'atty' to detect when colors can be used 2020-12-20 19:54:38 -05:00
Dustin J. Mitchell
7d17740ca8 use a generic Write instance for command output 2020-12-20 19:45:24 -05:00
Dustin J. Mitchell
6b550e7516 implement cli help 2020-12-20 18:42:21 -05:00
Dustin J. Mitchell
2c579b9f01 Switch to a command-line API closer to TaskWarrior
* Use a parser (rather than clap) to process the command line
* Outline some generic support for filtering, reporting, modifying, etc.
* Break argument parsing strictly from invocation, to allow independent testing
2020-12-19 16:40:09 -05:00
Dustin J. Mitchell
8601c0cb67 update Cargo.lock 2020-11-29 21:09:28 -05:00
Dustin J. Mitchell
0a1ee470f7 use log and env_logger, and add some logging around sync 2020-11-29 18:18:28 -05:00
Dustin J. Mitchell
786d5b6a17 Implement actual on-disk storage for sync-server. 2020-11-29 17:41:28 -05:00
Dustin J. Mitchell
6d08eacd98 limit config file usage to just yaml 2020-11-28 19:43:30 -05:00
Dustin J. Mitchell
0e926df578 Add configuration-file support to the 'task' command 2020-11-28 18:18:43 -05:00
Dustin J. Mitchell
87596bb1f0 update Cargo.lock to latest 2020-11-28 15:14:49 -05:00
Dustin J. Mitchell
97a8a87c24
Merge pull request #64 from djmitche/issue57
Add RemoteServer to the taskchampion crate
2020-11-27 20:23:39 -05:00
Dustin J. Mitchell
2a37f090a5 Add RemoteServer to the taskchampion crate 2020-11-27 20:15:17 -05:00
Dustin J. Mitchell
3092a6bb7f do not require taskchampion from sync-server 2020-11-27 20:08:54 -05:00
Dustin J. Mitchell
26b17c6dbc Revert "add signing support"
It turns out we don't need this.

This reverts commit e92fc0628b.
2020-11-26 22:34:20 -05:00
Dustin J. Mitchell
7472749fee add tests for API methods 2020-11-26 19:59:52 -05:00
Dustin J. Mitchell
e84871931f Refactor HTTP implementation of API methods 2020-11-26 19:59:52 -05:00
Dustin J. Mitchell
087333a227 refactor sync server into modules 2020-11-26 19:59:49 -05:00
Dustin J. Mitchell
e92fc0628b add signing support 2020-11-25 17:58:02 -05:00
Dustin J. Mitchell
c8f14d68cb export the Uuid type from taskchampion 2020-11-24 11:44:21 -05:00
Dustin J. Mitchell
f31a96176d use prettytable for tabular outputs 2020-11-23 21:58:45 -05:00
Dustin J. Mitchell
fe4183c3ca Refactor command-line handling into modules per subcommands 2020-11-23 21:29:46 -05:00
Dustin J. Mitchell
779a331003 reorganize into separate crates
- taskchampion -- core implementation of a replica
 - taskchampion-cli -- command-line interface
 - taskchampion-sync-server -- server implementation (not much yet!)
2020-11-23 14:27:47 -05:00
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
74fb3c3c41 fix up some TODOs in replica.rs 2020-11-21 23:46:53 -05:00
Dustin J. Mitchell
1fa6155b22 rename to taskchampion 2020-11-21 18:01:25 -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
727db7f669 name taskwarrior-rest 2020-01-02 21:08:17 -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
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
e5a92826f6 add taskdb 2019-12-28 11:20:35 -05:00
Dustin J. Mitchell
05d26285e3 implement TextOperation 2019-12-25 10:51:44 -05:00
Dustin J. Mitchell
d0744d5178 refactor to a library, add integration tests 2018-11-12 18:25:47 -05:00
Dustin J. Mitchell
1272acb893 Use error_chain 2018-11-11 21:09:53 -05:00
Dustin J. Mitchell
6a66b7a84b parse all defined fields in tasks 2018-11-10 19:34:23 -05:00
Dustin J. Mitchell
d1c09f2561 parse a TDB2 file 2018-11-09 19:34:55 -05:00