[package]
edition = "2024"
rust-version = "1.93"
name = "matrix-bridge-telegram"
version = "0.1.0"
authors = ["Palpo Team <chris@acroidea.com>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A bridge between Matrix and Telegram written in Rust"
readme = false
keywords = [
"matrix",
"telegram",
"bridge",
"chat",
]
categories = [
"network-programming",
"web-programming",
]
license = "Apache-2.0"
repository = "https://github.com/palpo-im/matrix-bridge-telegram"
[features]
default = [
"postgres",
"sqlite",
]
mysql = ["diesel/mysql"]
postgres = ["diesel/postgres"]
sqlite = [
"diesel/sqlite",
"dep:libsqlite3-sys",
]
[lib]
name = "matrix_bridge_telegram"
path = "src/lib.rs"
[[bin]]
name = "matrix-bridge-telegram"
path = "src/main.rs"
[dependencies.anyhow]
version = "1.0"
[dependencies.async-trait]
version = "0.1"
[dependencies.chrono]
version = "0.4"
features = ["serde"]
[dependencies.clap]
version = "4.5"
features = [
"derive",
"env",
]
[dependencies.config]
version = "0.15.19"
[dependencies.diesel]
version = "2.3.6"
features = [
"r2d2",
"chrono",
]
default-features = false
[dependencies.futures]
version = "0.3"
[dependencies.hyper]
version = "1.8.1"
features = ["full"]
[dependencies.libsqlite3-sys]
version = "0.35.0"
features = ["bundled"]
optional = true
[dependencies.matrix-bot-sdk]
version = "0.2.4"
features = ["appservice"]
[dependencies.metrics]
version = "0.24.3"
optional = true
[dependencies.metrics-exporter-prometheus]
version = "0.18.1"
optional = true
[dependencies.once_cell]
version = "1.20"
[dependencies.parking_lot]
version = "0.12"
[dependencies.regex]
version = "1.10"
[dependencies.reqwest]
version = "0.13"
features = ["json"]
[dependencies.salvo]
version = "0.89"
features = [
"oapi",
"quinn",
]
[dependencies.secrecy]
version = "0.10.3"
[dependencies.serde]
version = "1.0"
features = ["derive"]
[dependencies.serde_json]
version = "1.0"
[dependencies.serde_yaml]
version = "0.9"
[dependencies.teloxide]
version = "0.15"
features = [
"rustls",
"ctrlc_handler",
]
default-features = false
[dependencies.thiserror]
version = "2.0.18"
[dependencies.time]
version = "0.3"
[dependencies.tokio]
version = "1.40"
features = ["full"]
[dependencies.tracing]
version = "0.1"
[dependencies.tracing-futures]
version = "0.2"
[dependencies.tracing-subscriber]
version = "0.3"
features = [
"env-filter",
"json",
]
[dependencies.url]
version = "2.5"
[dependencies.uuid]
version = "1.11"
features = [
"v4",
"serde",
]
[dev-dependencies.tempfile]
version = "=3.25.0"
[dev-dependencies.test-case]
version = "3.3"
[dev-dependencies.tokio-test]
version = "0.4"
[profile.dev]
opt-level = 0
debug = 2
[profile.docker]
lto = "thin"
codegen-units = 4
inherits = "release"
[profile.release]
lto = true
codegen-units = 1
panic = "abort"
strip = true