]> Untitled Git - lemmy.git/blob - Cargo.toml
add enable_federated_downvotes site option
[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 # This profile significantly speeds up build time. If debug info is needed you can comment the line
28 # out temporarily, but make sure to leave this in the main branch.
29 [profile.dev]
30 debug = 0
31
32 [features]
33 embed-pictrs = ["pict-rs"]
34 console = [
35   "console-subscriber",
36   "opentelemetry",
37   "opentelemetry-otlp",
38   "tracing-opentelemetry",
39   "reqwest-tracing/opentelemetry_0_16",
40 ]
41 json-log = ["tracing-subscriber/json"]
42 prometheus-metrics = ["prometheus", "actix-web-prom"]
43 default = []
44
45 [workspace]
46 members = [
47   "crates/api",
48   "crates/api_crud",
49   "crates/api_common",
50   "crates/apub",
51   "crates/utils",
52   "crates/db_schema",
53   "crates/db_views",
54   "crates/db_views_actor",
55   "crates/db_views_actor",
56   "crates/routes",
57 ]
58
59 [workspace.dependencies]
60 lemmy_api = { version = "=0.18.1", path = "./crates/api" }
61 lemmy_api_crud = { version = "=0.18.1", path = "./crates/api_crud" }
62 lemmy_apub = { version = "=0.18.1", path = "./crates/apub" }
63 lemmy_utils = { version = "=0.18.1", path = "./crates/utils" }
64 lemmy_db_schema = { version = "=0.18.1", path = "./crates/db_schema" }
65 lemmy_api_common = { version = "=0.18.1", path = "./crates/api_common" }
66 lemmy_routes = { version = "=0.18.1", path = "./crates/routes" }
67 lemmy_db_views = { version = "=0.18.1", path = "./crates/db_views" }
68 lemmy_db_views_actor = { version = "=0.18.1", path = "./crates/db_views_actor" }
69 lemmy_db_views_moderator = { version = "=0.18.1", path = "./crates/db_views_moderator" }
70 activitypub_federation = { version = "0.4.6", default-features = false, features = [
71   "actix-web",
72 ] }
73 diesel = "2.1.0"
74 diesel_migrations = "2.1.0"
75 diesel-async = "0.3.1"
76 serde = { version = "1.0.167", features = ["derive"] }
77 serde_with = "3.0.0"
78 actix-web = { version = "4.3.1", default-features = false, features = [
79   "macros",
80   "rustls",
81   "compress-brotli",
82   "compress-gzip",
83   "compress-zstd",
84 ] }
85 tracing = "0.1.37"
86 tracing-actix-web = { version = "0.7.5", default-features = false }
87 tracing-error = "0.2.0"
88 tracing-log = "0.1.3"
89 tracing-subscriber = { version = "0.3.17", features = ["env-filter"] }
90 url = { version = "2.4.0", features = ["serde"] }
91 url_serde = "0.2.0"
92 reqwest = { version = "0.11.18", features = ["json", "blocking", "gzip"] }
93 reqwest-middleware = "0.2.2"
94 reqwest-tracing = "0.4.5"
95 clokwerk = "0.4.0"
96 doku = { version = "0.21.1", features = ["url-2"] }
97 bcrypt = "0.15.0"
98 chrono = { version = "0.4.26", features = ["serde"], default-features = false }
99 serde_json = { version = "1.0.100", features = ["preserve_order"] }
100 base64 = "0.21.2"
101 uuid = { version = "1.4.0", features = ["serde", "v4"] }
102 async-trait = "0.1.71"
103 captcha = "0.0.9"
104 anyhow = { version = "1.0.71", features = [
105   "backtrace",
106 ] } # backtrace is on by default on nightly, but not stable rust
107 diesel_ltree = "0.3.0"
108 typed-builder = "0.15.0"
109 serial_test = "2.0.0"
110 tokio = { version = "1.29.1", features = ["full"] }
111 regex = "1.9.0"
112 once_cell = "1.18.0"
113 diesel-derive-newtype = "2.1.0"
114 diesel-derive-enum = { version = "2.1.0", features = ["postgres"] }
115 strum = "0.25.0"
116 strum_macros = "0.25.1"
117 itertools = "0.11.0"
118 futures = "0.3.28"
119 http = "0.2.9"
120 percent-encoding = "2.3.0"
121 rosetta-i18n = "0.1.3"
122 rand = "0.8.5"
123 opentelemetry = { version = "0.19.0", features = ["rt-tokio"] }
124 tracing-opentelemetry = { version = "0.19.0" }
125 ts-rs = { version = "6.2", features = ["serde-compat", "chrono-impl"] }
126 rustls = { version = "0.21.3", features = ["dangerous_configuration"] }
127 futures-util = "0.3.28"
128 tokio-postgres = "0.7.8"
129 tokio-postgres-rustls = "0.10.0"
130
131 [dependencies]
132 lemmy_api = { workspace = true }
133 lemmy_api_crud = { workspace = true }
134 lemmy_apub = { workspace = true }
135 lemmy_utils = { workspace = true }
136 lemmy_db_schema = { workspace = true }
137 lemmy_api_common = { workspace = true }
138 lemmy_routes = { workspace = true }
139 activitypub_federation = { workspace = true }
140 diesel = { workspace = true }
141 diesel-async = { workspace = true }
142 serde = { workspace = true }
143 actix-web = { workspace = true }
144 tracing = { workspace = true }
145 tracing-actix-web = { workspace = true }
146 tracing-error = { workspace = true }
147 tracing-log = { workspace = true }
148 tracing-subscriber = { workspace = true }
149 url = { workspace = true }
150 reqwest = { workspace = true }
151 reqwest-middleware = { workspace = true }
152 reqwest-tracing = { workspace = true }
153 clokwerk = { workspace = true }
154 doku = { workspace = true }
155 serde_json = { workspace = true }
156 tracing-opentelemetry = { workspace = true, optional = true }
157 opentelemetry = { workspace = true, optional = true }
158 console-subscriber = { version = "0.1.10", optional = true }
159 opentelemetry-otlp = { version = "0.12.0", optional = true }
160 pict-rs = { version = "0.4.0-rc.12", optional = true }
161 tokio.workspace = true
162 actix-cors = "0.6.4"
163 rustls = { workspace = true }
164 futures-util = { workspace = true }
165 tokio-postgres = { workspace = true }
166 tokio-postgres-rustls = { workspace = true }
167 chrono = { workspace = true }
168 prometheus = { version = "0.13.3", features = ["process"], optional = true }
169 actix-web-prom = { version = "0.6.0", optional = true }