[package]
name = "devtodo"
version = "0.1.0"
edition = "2018"
description = "Synchronize GitHub/GitLab/Forgejo issue and PR statuses into local iCal VTODO files"
repository = "https://github.com/mathstuf/devtodo"
readme = "README.md"
license = "MIT OR Apache-2.0"
keywords = ["github", "gitlab", "forgejo", "todo", "ical"]
categories = ["command-line-utilities"]

[features]
default = ["github"]
github = ["graphql_client", "reqwest", "serde_json", "url"]
gitlab = ["dep:gitlab"]
forgejo = ["dep:forgejo-api"]

[dependencies]
chrono = { version = "0.4", default-features = false, features = ["clock", "serde"] }
clap = { version = "4.0", default-features = false, features = ["cargo", "std"] }
derive_builder = "0.20"
directories = "6.0"
env_logger = "0.11"
human-panic = "2.0"
itertools = "0.14"
log = "0.4"
serde = { version = "1.0", features = ["derive"] }
serde-saphyr = "0.0.6"
thiserror = "2.0"
uuid = { version = "1.4", features = ["v4"] }
vobject = "0.8"

# github feature
graphql_client = { version = "0.14", optional = true }
reqwest = { version = "0.12", features = ["blocking", "json"], optional = true }
serde_json = { version = "1.0", optional = true }
url = { version = "2.5.4", optional = true }

# gitlab feature
gitlab = { version = "=0.1811.0", optional = true }

# forgejo feature
forgejo-api = { version = "0.10", features = ["sync"], optional = true }
