forked from tensorlakeai/indexify
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCargo.toml
253 lines (246 loc) · 8.27 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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
[package]
name = "indexify"
version = "0.1.12"
edition = "2021"
authors = ["Diptanu Gon Choudhury <diptanu@tensorlake.ai>"]
build = "build.rs"
resolver = "2"
[patch.crates-io]
axum-server = { git = "https://github.com/grafbase/axum-server", branch = "rustls-0.23-tokio-rustls-0.26" }
[workspace]
members = [".", "crates/indexify_internal_api", "crates/indexify_proto"]
[workspace.dependencies]
anyerror = { version = "*", features=["anyhow"]}
anyhow = { version = "1" }
async-trait = "0.1"
askama = { version = "0.12" }
arrow-schema = {version = "50.0.0"}
arrow-array = {version = "50.0.0" }
axum = { version = "0.7", features = ["multipart", "macros", "ws"] }
axum-otel-metrics = "0.8"
axum-tracing-opentelemetry = "0.16"
axum-server = {version = "0.6.0", features = ["tls-rustls"]}
axum-typed-websockets = "0.6.0"
axum-streams = {version = "0.12.0"}
backtrace = "0.3"
base64 = "0.21.0"
bytes = "1"
byteorder = "1"
clap = { version = "4", features = ["derive"] }
derive_builder = {version = "0.20.0"}
figment = { version = "0.10", features = ["yaml", "env"] }
flexbuffers = { version = "2.0" }
futures = { version = "0.3" }
hostname = { version = "0.3" }
hyper = { version = "1", features = ["full"] }
hyper-util = { version = "0.1", features = ["service"] }
itertools = "0.12"
indexify_internal_api = { path = "crates/indexify_internal_api" }
indexify_proto = { path = "crates/indexify_proto" }
jsonschema = { version = "0.17", default_features = false, features = [
"draft202012",
] }
mime = { version = "0.3" }
mime_guess = { version = "2" }
moka = { version = "0.12", features = ["default", "future"] }
nanoid = { version = "0.4" }
openraft = {version = "0.9.11", features =["serde_json", "serde", "storage-v2", "generic-snapshot-data"]}
opensearch = { version = "2", default_features = false, features = [
"rustls-tls",
] }
opentelemetry = { version = "0.22", features = ["metrics"] }
pgvector = { version = "0.3", features = ["sqlx"] }
prost = { version = "0.12.6" }
prost-types = { version = "0.12" }
prost-wkt = "0.5.1"
prost-wkt-types = {version = "0.5.1" }
qdrant-client = { version = "1.9.0" }
rand = { version = "0.8" }
redis = { version = "0.24", features = [
"async-std-rustls-comp",
"default",
"cluster",
"cluster-async",
] }
regex = { version = "1" }
reqwest = { version = "0.11", default-features = false, features = [
"json",
"rustls-tls",
] }
rocksdb = "0.22.0"
rust-embed = { version = "8.2.0", features = [
"mime-guess",
"debug-embed",
"interpolate-folder-path",
] }
rustls = { version = "0.23", features = ["std"] }
rustls-pemfile = { version = "2.0.0" }
rusqlite = { version = "0.30.0", features = ["bundled", "serde_json"] }
serde = { version = "1", features = ["derive"] }
serde_with = { version = "3.4.0" }
serde_yaml = { version = "0.9" }
serde_json = {version = "1.0.116"}
smart-default = { version = "0.7" }
sqlx = { version = "0.7.3", features = [
"runtime-tokio",
"tls-rustls",
"postgres",
"sqlite",
"macros",
"time",
"json",
] }
strum = { version = "0.26.1", features = ["derive"] }
thiserror = "1"
tonic = { version = "0.11.0", features = ["prost", "transport", "tls"] }
tokio = { version = "1", features = ["full"] }
tokio-stream = { version = "0.1", features = ["sync"] }
tokio-rustls = { version = "0.26" }
tokio-util = {version ="0.7.10"}
tower = { version = "0.4" }
tower-http = { version = "0.5.1", default-features = false, features = [
"cors", "trace"
] }
tracing = { version = "0.1", features = ["log"] }
tracing-core = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
tracing-unwrap = { version = "0.10" }
url = "2"
utoipa = { version = "4.2.0", features = ["axum_extras"] }
utoipa-swagger-ui = { version = "6", features = ["axum"] }
utoipa-rapidoc = { version = "3.0.0", features = ["axum"] }
utoipa-redoc = { version = "3.0.0", features = ["axum"] }
object_store = { version = "0.9", features = ["aws"] }
local-ip-address = { version = "0.6" }
flate2 = "1"
tar = "0.4"
walkdir = { version = "2" }
vectordb = {version = "0.4.10" }
lance = {version = "0.10.6", default_features=false}
gluesql = { git = "https://github.com/gluesql/gluesql.git", rev = "07dd839", default_features = false }
tracing-opentelemetry = { version = "0.23.0", features = ["async-trait", "futures-util"] }
opentelemetry-otlp = { version = "0.15.0", features = ["http-proto", "grpc-tonic"] }
opentelemetry-tonic = "0.1.0"
http = "1.1.0"
opentelemetry-stdout = { version = "0.3.0", features = ["logs", "trace"] }
opentelemetry-datadog = "0.10.0"
[dependencies]
anyerror = { workspace = true }
anyhow = { workspace = true }
async-trait = { workspace = true }
askama = { workspace = true }
arrow-schema = {workspace = true}
arrow-array = {workspace=true}
axum = { workspace = true }
axum-otel-metrics = { workspace = true }
axum-tracing-opentelemetry = { workspace = true }
axum-server = {workspace = true }
axum-typed-websockets = { workspace = true }
axum-streams = {workspace = true}
base64 = { workspace = true }
byteorder = { workspace = true }
bytes = { workspace = true }
clap = { workspace = true }
derive_builder = { workspace = true }
figment = { workspace = true }
flexbuffers = { workspace = true }
futures = { workspace = true }
hostname = { workspace = true }
hyper = { workspace = true }
hyper-util = { workspace = true }
indexify_proto = { workspace = true }
indexify_internal_api = { workspace = true }
itertools = { workspace = true }
jsonschema = { workspace = true }
mime = { workspace = true }
mime_guess = { workspace = true }
moka = { workspace = true }
nanoid = { workspace = true }
openraft = { workspace = true }
opensearch = { workspace = true }
opentelemetry = { workspace = true }
pgvector = { workspace = true }
prost = { workspace = true }
prost-wkt = { workspace = true }
prost-wkt-types = { workspace = true }
qdrant-client = { workspace = true }
rand = { workspace = true }
redis = { workspace = true }
regex = { workspace = true }
reqwest = { workspace = true }
rocksdb = { workspace = true }
rust-embed = { workspace = true }
rustls = { workspace = true }
rustls-pemfile = { workspace = true }
rusqlite = { workspace = true }
serde = { workspace = true }
serde_with = { workspace = true }
serde_yaml = { workspace = true }
serde_json = { workspace = true }
smart-default = { workspace = true }
sqlx = { workspace = true }
strum = { workspace = true }
thiserror = { workspace = true }
tonic = { workspace = true }
tokio = { workspace = true }
tokio-rustls = { workspace = true }
tokio-stream = { workspace = true }
tokio-util = {workspace = true}
tower = { workspace = true }
tower-http = { workspace = true }
tracing = { workspace = true }
tracing-core = { workspace = true }
tracing-subscriber = { workspace = true }
tracing-unwrap = { workspace = true }
url = { workspace = true }
utoipa = { workspace = true }
utoipa-swagger-ui = { workspace = true }
utoipa-rapidoc = { workspace = true }
utoipa-redoc = { workspace = true }
object_store = { workspace = true }
local-ip-address = { workspace = true }
flate2 = { workspace = true }
tar = { workspace = true }
walkdir = { workspace = true }
lance = { workspace = true }
async-stream = "0.3.5"
once_cell = "1.19.0"
pin-project-lite = "0.2.13"
gluesql = {workspace=true, default-features=false}
uuid = "1.8.0"
sha2 = "0.10.8"
lancedb = {version = "0.4.15", default_features = false}
opentelemetry-prometheus = "0.15"
prometheus = "0.13"
opentelemetry_sdk = { version = "0.22", features = ["metrics", "rt-tokio"] }
tracing-opentelemetry = { workspace = true }
opentelemetry-otlp = { workspace = true }
opentelemetry-tonic = { workspace = true }
http = { workspace = true }
opentelemetry-stdout = { workspace = true }
opentelemetry-datadog = { workspace = true }
[dev-dependencies]
tracing-test = { version = "0.2", features = ["no-env-filter"] }
tempfile = "3.2.0"
[build-dependencies]
# All features enabled
vergen = { version = "8", features = [
"build",
"cargo",
"git",
"gitcl",
"rustc",
"si",
] }
tonic-build = { version = "0.10.2", features = ["prost"] }
prost-wkt-build = "0.5"
[package.metadata.deb]
maintainer = "Diptanu Gon Choudhury <diptanu@tensorlake.ai>"
copyright = "2024, Diptanu Gon Choudhury <diptanu@tensorlake.ai>"
license-file = ["LICENSE", "4"]
extended-description = """\
Indexify is a reactive structured extraction engine for un-structured data.
"""
section = "utility"
priority = "optional"
depends = "$auto"