-
Notifications
You must be signed in to change notification settings - Fork 22
/
Cargo.toml
69 lines (63 loc) · 2.33 KB
/
Cargo.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
[package]
name = "taskchampion"
version = "2.0.2"
authors = ["Dustin J. Mitchell <[email protected]>"]
description = "Personal task-tracking"
homepage = "https://gothenburgbitfactory.github.io/taskchampion/"
documentation = "https://docs.rs/crate/taskchampion"
repository = "https://github.com/GothenburgBitFactory/taskchampion"
categories = ["command-line-utilities"]
keywords = ["cli", "todo", "tasks", "taskwarrior", "task-tracking"]
readme = "src/crate-doc.md"
license = "MIT"
edition = "2021"
rust-version = "1.81.0"
[workspace]
members = [ "xtask" ]
resolver = "2"
[features]
default = ["sync", "bundled"]
# Support for all sync solutions
sync = ["server-sync", "server-gcp", "server-aws"]
# Support for sync to a server
server-sync = ["encryption", "dep:ureq", "dep:url"]
# Support for sync to GCP
server-gcp = ["cloud", "encryption", "dep:google-cloud-storage", "dep:tokio"]
# Support for sync to AWS
server-aws = ["cloud", "encryption", "dep:aws-sdk-s3", "dep:aws-config", "dep:aws-credential-types", "dep:tokio"]
# (private) Support for sync protocol encryption
encryption = ["dep:ring"]
# (private) Generic support for cloud sync
cloud = []
# static bundling of dependencies
bundled = ["rusqlite/bundled"]
# use native CA roots, instead of bundled
tls-native-roots = ["ureq/native-certs"]
[package.metadata.docs.rs]
all-features = true
[dependencies]
anyhow = "1.0"
aws-sdk-s3 = { version = "1", optional = true }
aws-config = { version = "1", features = ["behavior-version-latest"], optional = true }
aws-credential-types = { version = "1", features = ["hardcoded-credentials"], optional = true }
byteorder = "1.5"
chrono = { version = "^0.4.38", features = ["serde"] }
flate2 = "1"
google-cloud-storage = { version = "0.23.0", default-features = false, features = ["rustls-tls", "auth"], optional = true }
log = "^0.4.17"
ring = { version = "0.17", optional = true }
rusqlite = { version = "0.32"}
serde_json = "^1.0"
serde = { version = "^1.0.147", features = ["derive"] }
strum = "0.26"
strum_macros = "0.26"
tokio = { version = "1", features = ["rt-multi-thread"], optional = true }
thiserror = "2.0"
ureq = { version = "^2.12.0", features = ["tls"], optional = true }
uuid = { version = "^1.11.0", features = ["serde", "v4"] }
url = { version = "2", optional = true }
[dev-dependencies]
proptest = "^1.6.0"
tempfile = "3"
rstest = "0.24"
pretty_assertions = "1"