]> Untitled Git - lemmy.git/blob - Cargo.toml
9df383df433d6c3494ae4f24e655056c5678d8a7
[lemmy.git] / Cargo.toml
1 [workspace.package]
2 version = "0.18.1"
3 edition = "2021"
4 description = "A link aggregator for the fediverse"
5 license = "AGPL-3.0"
6 homepage = "https://join-lemmy.org/"
7 documentation = "https://join-lemmy.org/docs/en/index.html"
8 repository = "https://github.com/LemmyNet/lemmy"
9
10 [package]
11 name = "lemmy_server"
12 version.workspace = true
13 edition.workspace = true
14 description.workspace = true
15 license.workspace = true
16 homepage.workspace = true
17 documentation.workspace = true
18 repository.workspace = true
19
20 [lib]
21 doctest = false
22
23 [profile.release]
24 debug = 0
25 lto = "thin"
26
27 [features]
28 embed-pictrs = ["pict-rs"]
29 console = ["console-subscriber", "opentelemetry", "opentelemetry-otlp", "tracing-opentelemetry", "reqwest-tracing/opentelemetry_0_16"]
30 json-log = ["tracing-subscriber/json"]
31 prometheus-metrics = ["prometheus", "actix-web-prom"]
32 default = []
33
34 [workspace]
35 members = [
36     "crates/api",
37     "crates/api_crud",
38     "crates/api_common",
39     "crates/apub",
40     "crates/utils",
41     "crates/db_schema",
42     "crates/db_views",
43     "crates/db_views_actor",
44     "crates/db_views_actor",
45     "crates/routes"
46 ]
47
48 [workspace.dependencies]
49 lemmy_api = { version = "=0.18.1", path = "./crates/api" }
50 lemmy_api_crud = { version = "=0.18.1", path = "./crates/api_crud" }
51 lemmy_apub = { version = "=0.18.1", path = "./crates/apub" }
52 lemmy_utils = { version = "=0.18.1", path = "./crates/utils" }
53 lemmy_db_schema = { version = "=0.18.1", path = "./crates/db_schema" }
54 lemmy_api_common = { version = "=0.18.1", path = "./crates/api_common" }
55 lemmy_routes = { version = "=0.18.1", path = "./crates/routes" }
56 lemmy_db_views = { version = "=0.18.1", path = "./crates/db_views" }
57 lemmy_db_views_actor = { version = "=0.18.1", path = "./crates/db_views_actor" }
58 lemmy_db_views_moderator = { version = "=0.18.1", path = "./crates/db_views_moderator" }
59 activitypub_federation = { version = "0.4.5", default-features = false, features = ["actix-web"] }
60 diesel = "2.1.0"
61 diesel_migrations = "2.1.0"
62 diesel-async = "0.3.1"
63 serde = { version = "1.0.167", features = ["derive"] }
64 serde_with = "3.0.0"
65 actix-web = { version = "4.3.1", default-features = false, features = ["macros", "rustls", "compress-brotli", "compress-gzip", "compress-zstd"] }
66 tracing = "0.1.37"
67 tracing-actix-web = { version = "0.7.5", default-features = false }
68 tracing-error = "0.2.0"
69 tracing-log = "0.1.3"
70 tracing-subscriber = { version = "0.3.17", features = ["env-filter"] }
71 url = { version = "2.4.0", features = ["serde"] }
72 url_serde = "0.2.0"
73 reqwest = { version = "0.11.18", features = ["json", "blocking"] }
74 reqwest-middleware = "0.2.2"
75 reqwest-tracing = "0.4.5"
76 clokwerk = "0.4.0"
77 doku = { version = "0.21.1", features = ["url-2"] }
78 bcrypt = "0.15.0"
79 chrono = { version = "0.4.26", features = ["serde"], default-features = false }
80 serde_json = { version = "1.0.100", features = ["preserve_order"] }
81 base64 = "0.21.2"
82 uuid = { version = "1.4.0", features = ["serde", "v4"] }
83 async-trait = "0.1.71"
84 captcha = "0.0.9"
85 anyhow = { version = "1.0.71", features = ["backtrace"] } # backtrace is on by default on nightly, but not stable rust
86 diesel_ltree = "0.3.0"
87 typed-builder = "0.15.0"
88 serial_test = "2.0.0"
89 tokio = { version = "1.29.1", features = ["full"] }
90 sha2 = "0.10.7"
91 regex = "1.9.0"
92 once_cell = "1.18.0"
93 diesel-derive-newtype = "2.1.0"
94 diesel-derive-enum = {version = "2.1.0", features = ["postgres"] }
95 strum = "0.25.0"
96 strum_macros = "0.25.1"
97 itertools = "0.11.0"
98 futures = "0.3.28"
99 http = "0.2.9"
100 percent-encoding = "2.3.0"
101 rosetta-i18n = "0.1.3"
102 rand = "0.8.5"
103 opentelemetry = { version = "0.19.0", features = ["rt-tokio"] }
104 tracing-opentelemetry = { version = "0.19.0" }
105 ts-rs = { version = "6.2", features = ["serde-compat", "chrono-impl"] }
106 rustls = { version ="0.21.3", features = ["dangerous_configuration"]}
107 futures-util = "0.3.28"
108 tokio-postgres = "0.7.8"
109 tokio-postgres-rustls = "0.10.0"
110
111 [dependencies]
112 lemmy_api = { workspace = true }
113 lemmy_api_crud = { workspace = true }
114 lemmy_apub = { workspace = true }
115 lemmy_utils = { workspace = true }
116 lemmy_db_schema = { workspace = true }
117 lemmy_api_common = { workspace = true }
118 lemmy_routes = { workspace = true }
119 activitypub_federation = { workspace = true }
120 diesel = { workspace = true }
121 diesel-async = { workspace = true }
122 serde = { workspace = true }
123 actix-web = { workspace = true }
124 tracing = { workspace = true }
125 tracing-actix-web = { workspace = true }
126 tracing-error = { workspace = true }
127 tracing-log = { workspace = true }
128 tracing-subscriber = { workspace = true }
129 url = { workspace = true }
130 reqwest = { workspace = true }
131 reqwest-middleware = { workspace = true }
132 reqwest-tracing = { workspace = true }
133 clokwerk = { workspace = true }
134 doku = { workspace = true }
135 serde_json = { workspace = true }
136 tracing-opentelemetry = { workspace = true, optional = true }
137 opentelemetry = { workspace = true, optional = true }
138 console-subscriber = { version = "0.1.10", optional = true }
139 opentelemetry-otlp = { version = "0.12.0", optional = true }
140 pict-rs = { version = "0.4.0-rc.12", optional = true }
141 tokio.workspace = true
142 actix-cors = "0.6.4"
143 rustls = { workspace = true }
144 futures-util = { workspace = true }
145 tokio-postgres = { workspace = true }
146 tokio-postgres-rustls = { workspace = true }
147 chrono = { workspace = true }
148 prometheus = { version = "0.13.3", features = ["process"], optional = true }
149 actix-web-prom = { version = "0.6.0", optional = true }