-
Notifications
You must be signed in to change notification settings - Fork 123
Expand file tree
/
Copy pathCargo.toml
More file actions
470 lines (451 loc) 路 30.8 KB
/
Copy pathCargo.toml
File metadata and controls
470 lines (451 loc) 路 30.8 KB
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
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
[workspace]
default-members = [
"apps/hash-graph",
]
exclude = [
".github/scripts/rust",
]
members = [
"apps/hash-graph",
"libs/@blockprotocol/type-system/rust",
"libs/@local/codec/rust",
"libs/@local/codegen",
"libs/@local/config",
"libs/@local/effect-dns/hickory/rust",
"libs/@local/graph/api",
"libs/@local/graph/atlas",
"libs/@local/graph/authentication/",
"libs/@local/graph/authorization/rust",
"libs/@local/graph/embeddings",
"libs/@local/graph/migrations",
"libs/@local/graph/migrations-macros",
"libs/@local/graph/postgres-store",
"libs/@local/graph/store/rust",
"libs/@local/graph/temporal-versioning",
"libs/@local/graph/type-fetcher",
"libs/@local/graph/types",
"libs/@local/graph/validation",
"libs/@local/harpc/client/rust",
"libs/@local/harpc/codec",
"libs/@local/harpc/net",
"libs/@local/harpc/server",
"libs/@local/harpc/system",
"libs/@local/harpc/tower",
"libs/@local/harpc/types",
"libs/@local/harpc/wire-protocol",
"libs/@local/hashql/*",
"libs/@local/middleware",
"libs/@local/repo-chores/rust",
"libs/@local/status/rust",
"libs/@local/telemetry",
"libs/@local/temporal-client",
"libs/antsi",
"libs/darwin-kperf",
"libs/darwin-kperf/codegen",
"libs/darwin-kperf/criterion",
"libs/darwin-kperf/events",
"libs/darwin-kperf/sys",
"libs/error-stack",
"libs/error-stack/macros",
"tests/graph/benches",
"tests/graph/integration",
"tests/graph/test-data/rust",
]
resolver = "3"
[workspace.package]
authors = ["HASH"]
edition = "2024"
license = "AGPL-3"
publish = false
version = "0.0.0"
[workspace.dependencies]
# Workspace members
darwin-kperf = { path = "libs/darwin-kperf", version = "0.1.1" }
darwin-kperf-criterion = { path = "libs/darwin-kperf/criterion", version = "0.1.1" }
darwin-kperf-events = { path = "libs/darwin-kperf/events", version = "0.1.1" }
darwin-kperf-sys = { path = "libs/darwin-kperf/sys", version = "0.1.1" }
error-stack = { path = "./libs/error-stack", default-features = false }
harpc-client.path = "libs/@local/harpc/client/rust"
harpc-codec.path = "libs/@local/harpc/codec"
harpc-net.path = "libs/@local/harpc/net"
harpc-server.path = "libs/@local/harpc/server"
harpc-system.path = "libs/@local/harpc/system"
harpc-tower.path = "libs/@local/harpc/tower"
harpc-types.path = "libs/@local/harpc/types"
harpc-wire-protocol.path = "libs/@local/harpc/wire-protocol"
hash-codec.path = "libs/@local/codec/rust"
hash-codegen.path = "libs/@local/codegen"
hash-config.path = "libs/@local/config"
hash-graph-api.path = "libs/@local/graph/api"
hash-graph-atlas.path = "libs/@local/graph/atlas"
hash-graph-authentication.path = "libs/@local/graph/authentication/"
hash-graph-authorization.path = "libs/@local/graph/authorization/rust"
hash-graph-embeddings.path = "libs/@local/graph/embeddings"
hash-graph-migrations.path = "libs/@local/graph/migrations"
hash-graph-migrations-macros.path = "libs/@local/graph/migrations-macros"
hash-graph-postgres-store.path = "libs/@local/graph/postgres-store"
hash-graph-store.path = "libs/@local/graph/store/rust"
hash-graph-temporal-versioning.path = "libs/@local/graph/temporal-versioning"
hash-graph-test-data.path = "tests/graph/test-data/rust"
hash-graph-type-fetcher.path = "libs/@local/graph/type-fetcher"
hash-graph-types.path = "libs/@local/graph/types"
hash-graph-validation.path = "libs/@local/graph/validation"
hash-middleware.path = "libs/@local/middleware"
hash-repo-chores.path = "libs/@local/repo-chores/rust"
hash-status.path = "libs/@local/status/rust"
hash-telemetry.path = "libs/@local/telemetry"
hash-temporal-client.path = "libs/@local/temporal-client"
hashql-ast.path = "libs/@local/hashql/ast"
hashql-compiletest.path = "libs/@local/hashql/compiletest"
hashql-core.path = "libs/@local/hashql/core"
hashql-diagnostics.path = "libs/@local/hashql/diagnostics"
hashql-eval.path = "libs/@local/hashql/eval"
hashql-hir.path = "libs/@local/hashql/hir"
hashql-macros.path = "libs/@local/hashql/macros"
hashql-mir.path = "libs/@local/hashql/mir"
hashql-syntax-jexpr.path = "libs/@local/hashql/syntax-jexpr"
type-system.path = "libs/@blockprotocol/type-system/rust"
# External dependencies
aide = { version = "0.16.0-alpha.4" }
annotate-snippets = { version = "0.12.8", default-features = false }
ansi-to-html = { version = "0.2.2", default-features = false }
ansi-to-tui = { version = "8.0.1" }
anstream = { version = "1.0.0", default-features = false }
anstyle = { version = "1.0.13", default-features = false }
anstyle-lossy = { version = "1.1.4", default-features = false }
anstyle-svg = { version = "1.0.0", default-features = false }
arc-swap = { version = "1.9.1", default-features = false }
async-scoped = { version = "0.9.0", default-features = false }
aws-config = { version = "1.8.10" }
aws-sdk-s3 = { version = "1.110.0", default-features = false }
aws-types = { version = "1.3.10", default-features = false }
axum = { version = "0.8.6" }
axum-core = { version = "0.5.5" }
base16ct = { version = "1.0.0", default-features = false }
base64 = { version = "0.22.1" }
bitvec = { version = "1.0.1", default-features = false }
bon = { version = "3.8.1", default-features = false, features = ["implied-bounds"] }
bstr = { version = "1.12.1" }
bump-scope = { version = "2.0.0", default-features = false, features = ["alloc", "nightly-clone-to-uninit", "panic-on-alloc", "std"] }
burn = { version = "0.21.0" }
bytecheck = { version = "0.8.2", default-features = false }
bytes = { version = "1.10.1" }
bytes-utils = { version = "0.1.4", default-features = false }
camino = { version = "1.1.12", default-features = false }
cargo_metadata = { version = "0.23.0", default-features = false }
cedar-policy-core = { version = "4.5.1", default-features = false, features = ["decimal"] } # FIXME: Remove `decimal`: https://github.com/cedar-policy/cedar/issues/1700
chacha20poly1305 = { version = "0.10.1", default-features = false, features = ["alloc"] }
circular-buffer = { version = "1.1.0", default-features = false }
clap = { version = "4.5.51", features = ["color", "error-context", "help", "std", "suggestions", "usage"] }
clap_builder = { version = "4.5.51", default-features = false, features = ["std"] }
clap_complete = { version = "4.5.60", default-features = false }
codspeed-criterion-compat = { version = "4.1.0" }
codspeed-criterion-compat-walltime = { version = "4.3.0", default-features = false }
console_error_panic_hook = { version = "0.1.7", default-features = false }
convert_case = { version = "0.11.0", default-features = false }
cookie = { version = "0.18.2", default-features = false }
criterion = { version = "0.8.0", default-features = false }
criterion-macro = { version = "0.4.0", default-features = false }
dashu-base = { version = "0.4.1", default-features = false }
dashu-float = { version = "0.4.3", default-features = false }
deadpool = { version = "0.12.3", default-features = false }
deadpool-postgres = { version = "0.14.1", default-features = false }
derive-where = { version = "1.6.0", default-features = false, features = ["nightly"] }
derive_more = { version = "2.0.1", default-features = false }
dotenv-flow = { version = "0.16.2", default-features = false }
either = { version = "1.15.0", default-features = false }
email_address = { version = "0.2.9", default-features = false }
ena = { version = "0.14.3", default-features = false }
enum-iterator = { version = "2.1.0", default-features = false }
enumflags2 = { version = "0.7.12", default-features = false }
expect-test = { version = "1.5.1", default-features = false }
figment = { version = "0.10.19", default-features = false }
foldhash = { version = "0.2.0", default-features = false }
frunk = { version = "0.4.4", default-features = false }
frunk_core = { version = "0.4.4", default-features = false }
fst = { version = "0.4.7" }
futures = { version = "0.3.31", default-features = false }
futures-channel = { version = "0.3.31", default-features = false }
futures-core = { version = "0.3.31", default-features = false }
futures-io = { version = "0.3.31", default-features = false }
futures-lite = { version = "2.6.1" }
futures-sink = { version = "0.3.31", default-features = false }
futures-util = { version = "0.3.31", default-features = false }
glob = { version = "0.3.3" }
globset = { version = "0.4.18", default-features = false }
governor = { version = "0.10.4", default-features = false, features = ["dashmap", "quanta", "std"] }
guppy = { version = "0.17.20", default-features = false }
hannoy = { version = "0.1.7-nested-rtxns" }
hashbrown = { version = "0.17.0", default-features = false, features = ["inline-more", "nightly", "raw-entry"] }
heed = { version = "0.22.1" }
hifijson = { version = "0.4.0", default-features = false }
hkdf = { version = "0.13.0", default-features = false }
hmac = { version = "0.13.0", default-features = false }
hostname = { version = "0.4.2", default-features = false }
http = { version = "1.3.1", default-features = false }
humansize = { version = "2.1.3", default-features = false }
hyper = { version = "1.7.0", default-features = false }
include_dir = { version = "0.7.4", default-features = false }
include_dir_macros = { version = "0.7.4", default-features = false }
indexmap = { version = "2.12.0", default-features = false }
indoc = { version = "2.0.7", default-features = false }
inferno = { version = "0.12.3", default-features = false }
insta = { version = "1.47.2", default-features = false }
iso8601-duration = { version = "0.2.0", default-features = false }
itertools = { version = "0.14.0", default-features = false }
jsonptr = { version = "0.7.1", default-features = false }
jsonwebtoken = { version = "10.3.0", default-features = false }
kiddo = { version = "6.0.0" }
lcov = { version = "0.8.1" }
lexical = { version = "7.0.5", default-features = false }
libp2p = { version = "0.57.0", default-features = false }
libp2p-core = { version = "0.44.0", default-features = false }
libp2p-identity = { version = "0.2.13", default-features = false }
libp2p-ping = { version = "0.48.0", default-features = false }
libp2p-stream = { version = "0.5.0-alpha", default-features = false }
libp2p-swarm = { version = "0.48.0", default-features = false }
libp2p-yamux = { version = "0.48.0", default-features = false }
libtest-mimic = { version = "0.8.1", default-features = false }
line-index = { version = "0.1.2", default-features = false }
logos = { version = "0.16.0", default-features = false }
md-5 = { version = "0.11.0", default-features = false }
memchr = { version = "2.7.6", default-features = false }
memmap2 = { version = "0.9" }
mimalloc = { version = "0.1.48", default-features = false }
mime = { version = "0.3.17", default-features = false }
moka = { version = "0.12.15", default-features = false }
multiaddr = { version = "0.18.2", default-features = false }
multistream-select = { version = "0.14.0", default-features = false }
napi = { version = "3.9.0", default-features = false }
napi-build = { version = "2.3.2", default-features = false }
napi-derive = { version = "3.5.6", default-features = false, features = ["type-def"] }
nextest-filtering = { version = "0.21.0", default-features = false }
nextest-metadata = { version = "0.14.0", default-features = false }
nodejs_package_json = { version = "0.4.4" }
opentelemetry = { version = "0.32.0", default-features = false }
opentelemetry-appender-tracing = { version = "0.32.0", default-features = false }
opentelemetry-otlp = { version = "0.32.0", default-features = false }
opentelemetry-semantic-conventions = { version = "0.32.1", default-features = false }
opentelemetry_sdk = { version = "0.32.1", default-features = false }
owo-colors = { version = "4.2.3", default-features = false }
oxc = { version = "0.95.0", default-features = false }
pin-project = { version = "1.1.10", default-features = false }
pin-project-lite = { version = "0.2.16", default-features = false }
plist = { version = "1.8.0", default-features = false }
postgres-protocol = { version = "0.6.9", default-features = false }
postgres-types = { version = "0.2.11", default-features = false }
pretty = { version = "0.12.5", default-features = false }
pretty_assertions = { version = "1.4.1", default-features = false, features = ["alloc"] }
prettyplease = { version = "0.2.37", default-features = false }
proc-macro2 = { version = "1.0.103", default-features = false }
prometheus-client = { version = "0.24.0", default-features = false }
proptest = { version = "1.7.0", default-features = false, features = ["alloc", "std"] } # `std` or `no_std` are required, `no_std` pulls in `libm`
quote = { version = "1.0.41", default-features = false }
rancor = { version = "0.1.2", default-features = false }
rand = { version = "0.10.0", default-features = false }
rand_core = { version = "0.10.0", default-features = false }
rand_core_06 = { version = "0.6", package = "rand_core" }
rand_distr = { version = "0.6.0", default-features = false }
rand_xoshiro = { version = "0.8.1" }
rapidfuzz = { version = "0.5.0", default-features = false }
ratatui = { version = "0.30.0" }
rayon = { version = "1.11.0", default-features = false }
refinery = { version = "0.8.16", default-features = false }
regex = { version = "1.11.2", default-features = false, features = ["perf", "unicode"] }
reqwest = { version = "0.13.0", default-features = false, features = ["json", "rustls"] }
reqwest-middleware = { version = "0.5.0", default-features = false }
reqwest-retry = { version = "0.9.1", default-features = false }
reqwest-tracing = { version = "0.7.0", default-features = false }
rkyv = { version = "0.8.9" }
roaring = { version = "0.11.2", default-features = false }
rpds = { version = "1.1.2", default-features = false }
rstest = { version = "0.26.1", default-features = false }
rustc_version = { version = "0.4.1", default-features = false }
scc = { version = "3.8.4", default-features = false }
schemars = { version = "1.2.1" }
semver = { version = "1.0.27", default-features = false }
sentry = { version = "0.48.0", default-features = false, features = ["backtrace", "contexts", "debug-images", "panic", "reqwest", "rustls", "tower-http", "tracing"] }
sentry-core = { version = "0.48.0", default-features = false }
sentry-types = { version = "0.48.0", default-features = false }
serde = { version = "1.0.228", default-features = false }
serde_core = { version = "1.0.228", default-features = false }
serde_json = { version = "1.0.145" }
serde_plain = { version = "1.0.2", default-features = false }
sha2 = { version = "0.11.0", default-features = false }
similar-asserts = { version = "2.0.0", default-features = false }
simple-mermaid = { version = "0.2.0", default-features = false }
siphasher = { version = "1.0.3", default-features = false }
smallvec = { version = "2.0.0-alpha.11", default-features = false }
smol_str = { version = "0.3.4" }
sort-package-json = { version = "0.0.12" }
specta = { version = "2.0.0-rc.22", default-features = false }
sprs = { version = "0.11.4" }
sqruff-lib = { version = "0.37.3" }
sqruff-lib-core = { version = "0.37.3" }
stacker = { version = "0.1.22", default-features = false }
steppe = { version = "0.4.1", default-features = false }
subtle = { version = "2.6.1", default-features = false }
supports-color = { version = "3.0.2", default-features = false }
supports-unicode = { version = "3.0.0", default-features = false }
syn = { version = "2.0.108", default-features = false }
tachyonix = { version = "0.3.1", default-features = false }
temporalio-client = { version = "0.5.0", default-features = false, features = ["core-based-sdk", "tls-ring"] }
temporalio-common = { version = "0.5.0", default-features = false }
test-log = { version = "0.2.18", default-features = false }
test-strategy = { version = "0.4.3", default-features = false }
testcontainers = { version = "0.27.1", default-features = false }
testcontainers-modules = { version = "0.15.0", default-features = false }
text-size = { version = "1.1.1", default-features = false }
thiserror = { version = "2.0.17", default-features = false }
tiktoken-rs = { version = "0.12.0" }
time = { version = "0.3.44", default-features = false }
tokio = { version = "1.47.1", default-features = false }
tokio-postgres = { version = "0.7.15", default-features = false }
tokio-stream = { version = "0.1.17", default-features = false }
tokio-test = { version = "0.4.4", default-features = false }
tokio-util = { version = "0.7.16", default-features = false }
toml = { version = "1.0.0", default-features = false }
tower = { version = "0.5.2", default-features = false }
tower-http = { version = "0.6.6", features = ["trace"] }
tower-layer = { version = "0.3.3", default-features = false }
tower-service = { version = "0.3.3", default-features = false }
tower-test = { version = "0.4.0", default-features = false }
tracing = { version = "0.1.41", default-features = false }
tracing-appender = { version = "0.2.3", default-features = false }
tracing-core = { version = "0.1.34", default-features = false }
tracing-error = { version = "0.2.1", default-features = false }
tracing-flame = { version = "0.2.0", default-features = false }
tracing-opentelemetry = { version = "0.33.0", default-features = false }
tracing-subscriber = { version = "0.3.20", default-features = false }
trait-variant = { version = "0.1.2", default-features = false }
trybuild = { version = "1.0.113", default-features = false }
tsify = { version = "0.5.6", default-features = false }
unicase = { version = "2.8.1", default-features = false }
unicode-ident = { version = "1.0.22", default-features = false }
unicode-normalization = { version = "0.1.25", default-features = false }
unicode-properties = { version = "0.1.4", default-features = false }
unicode-segmentation = { version = "1.12.0", default-features = false }
unsynn = { version = "0.3.0", default-features = false, features = ["proc_macro2"] }
url = { version = "2.5.7", default-features = false }
utoipa = { version = "4.2.3", default-features = false }
utoipa-scalar = { version = "0.1.0", default-features = false }
uuid = { version = "1.18.1", default-features = false }
walkdir = { version = "2.5.0", default-features = false }
wasm-bindgen = { version = "0.2.100", default-features = false }
wasm-bindgen-test = { version = "0.3.50", default-features = false }
winnow = { version = "1.0.0", default-features = false }
xxhash-rust = { version = "0.8.15", default-features = false }
zerocopy = { version = "0.8.55" }
zeroize = { version = "1.9.0", default-features = false }
[profile.dev]
# TODO: Use `codegen-backend = "cranelift"`
# We currently use `llvm` for all profiles to avoid issues in `Docker`
codegen-backend = "llvm"
[profile.dev-llvm]
codegen-backend = "llvm"
inherits = "dev"
# We use LLVM for non-workspace crates, mainly due to the lack of AVX2 support in Cranelift
[profile.dev.package."*"]
codegen-backend = "llvm"
[profile.test]
codegen-backend = "llvm"
# We use LLVM for non-workspace crates, mainly due to the lack of AVX2 support in Cranelift
[profile.test.package."*"]
codegen-backend = "llvm"
# We use `llvm-cov` which requires LLVM
[profile.coverage]
codegen-backend = "llvm"
inherits = "test"
[profile.production]
inherits = "release"
lto = "thin"
strip = "none"
[workspace.lints.rust]
future_incompatible = { level = "warn", priority = -1 }
nonstandard_style = { level = "warn", priority = -1 }
unreachable_pub = "warn"
unsafe_code = "deny"
# TODO: Enable `cargo` lints when supported
# [workspace.lints.cargo]
[workspace.lints.clippy]
all = { level = "warn", priority = -1 }
nursery = { level = "warn", priority = -1 }
pedantic = { level = "warn", priority = -1 }
restriction = { level = "warn", priority = -1 }
# Should be enabled:
absolute_paths = "allow"
allow_attributes_without_reason = "allow"
# With the current configuration option it's pretty much unusable. We'd like to
# use it for grouping in particular, but this comes with sorting by name as well.
# Needs to be further tested in a smaller scope.
arbitrary_source_item_ordering = "allow"
arithmetic_side_effects = "allow"
as_conversions = "allow"
# Too many false positives when macros and/or loops are involved
cognitive_complexity = "allow"
expect_used = "allow"
inline_modules = "allow" # right now flags inline test modules, even if it shouldn't
let_underscore_must_use = "allow"
missing_assert_message = "allow"
multiple_inherent_impl = "allow"
panic = "allow"
partial_pub_fields = "allow"
unwrap_in_result = "allow"
# Consider enabling:
default_numeric_fallback = "allow"
impl_trait_in_params = "allow"
inline_trait_bounds = "allow"
iter_over_hash_type = "allow"
multiple_unsafe_ops_per_block = "allow"
pattern_type_mismatch = "allow"
shadow_unrelated = "allow"
single_call_fn = "allow"
single_char_lifetime_names = "allow"
tests_outside_test_module = "allow"
unimplemented = "allow"
unreachable = "allow"
# Does not apply to us:
blanket_clippy_restriction_lints = "allow"
exhaustive_enums = "allow"
exhaustive_structs = "allow"
implicit_return = "allow"
missing_docs_in_private_items = "allow"
missing_inline_in_public_items = "allow"
missing_trait_methods = "allow" # Should be enabled per `impl` instead of globally
mod_module_files = "allow" # Opposite of `clippy::self_named_module_files`
module_name_repetitions = "allow"
pub_use = "allow"
pub_with_shorthand = "allow" # Opposite of `clippy::pub_without_shorthand`
question_mark_used = "allow"
redundant_pub_crate = "allow" # Opposite of `unreachable_pub`
ref_patterns = "allow"
semicolon_outside_block = "allow" # Opposite of `clippy::semicolon_inside_block`
separated_literal_suffix = "allow" # Opposite of `clippy::unseparated_literal_suffix`
shadow_reuse = "allow"
shadow_same = "allow"
unneeded_field_pattern = "allow" # Actually, the opposite would be a great lint
[patch.crates-io]
specta = { git = "https://github.com/specta-rs/specta", rev = "ab7d924" }
oxc = { git = "https://github.com/hashdeps/oxc", rev = "73c781b" }
libp2p = { git = "https://github.com/libp2p/rust-libp2p", rev = "86b2122c8ffdd636d0c939b0344bf59a35c97499" }
libp2p-allow-block-list = { git = "https://github.com/libp2p/rust-libp2p", rev = "86b2122c8ffdd636d0c939b0344bf59a35c97499" }
libp2p-connection-limits = { git = "https://github.com/libp2p/rust-libp2p", rev = "86b2122c8ffdd636d0c939b0344bf59a35c97499" }
libp2p-core = { git = "https://github.com/libp2p/rust-libp2p", rev = "86b2122c8ffdd636d0c939b0344bf59a35c97499" }
libp2p-dns = { git = "https://github.com/libp2p/rust-libp2p", rev = "86b2122c8ffdd636d0c939b0344bf59a35c97499" }
libp2p-identify = { git = "https://github.com/libp2p/rust-libp2p", rev = "86b2122c8ffdd636d0c939b0344bf59a35c97499" }
libp2p-identity = { git = "https://github.com/libp2p/rust-libp2p", rev = "86b2122c8ffdd636d0c939b0344bf59a35c97499" }
libp2p-mdns = { git = "https://github.com/libp2p/rust-libp2p", rev = "86b2122c8ffdd636d0c939b0344bf59a35c97499" }
libp2p-metrics = { git = "https://github.com/libp2p/rust-libp2p", rev = "86b2122c8ffdd636d0c939b0344bf59a35c97499" }
libp2p-noise = { git = "https://github.com/libp2p/rust-libp2p", rev = "86b2122c8ffdd636d0c939b0344bf59a35c97499" }
libp2p-ping = { git = "https://github.com/libp2p/rust-libp2p", rev = "86b2122c8ffdd636d0c939b0344bf59a35c97499" }
libp2p-quic = { git = "https://github.com/libp2p/rust-libp2p", rev = "86b2122c8ffdd636d0c939b0344bf59a35c97499" }
libp2p-stream = { git = "https://github.com/libp2p/rust-libp2p", rev = "86b2122c8ffdd636d0c939b0344bf59a35c97499" }
libp2p-swarm = { git = "https://github.com/libp2p/rust-libp2p", rev = "86b2122c8ffdd636d0c939b0344bf59a35c97499" }
libp2p-swarm-derive = { git = "https://github.com/libp2p/rust-libp2p", rev = "86b2122c8ffdd636d0c939b0344bf59a35c97499" }
libp2p-tcp = { git = "https://github.com/libp2p/rust-libp2p", rev = "86b2122c8ffdd636d0c939b0344bf59a35c97499" }
libp2p-tls = { git = "https://github.com/libp2p/rust-libp2p", rev = "86b2122c8ffdd636d0c939b0344bf59a35c97499" }
libp2p-upnp = { git = "https://github.com/libp2p/rust-libp2p", rev = "86b2122c8ffdd636d0c939b0344bf59a35c97499" }
libp2p-yamux = { git = "https://github.com/libp2p/rust-libp2p", rev = "86b2122c8ffdd636d0c939b0344bf59a35c97499" }
multistream-select = { git = "https://github.com/libp2p/rust-libp2p", rev = "86b2122c8ffdd636d0c939b0344bf59a35c97499" }
quick-protobuf-codec = { git = "https://github.com/libp2p/rust-libp2p", rev = "86b2122c8ffdd636d0c939b0344bf59a35c97499" }
rw-stream-sink = { git = "https://github.com/libp2p/rust-libp2p", rev = "86b2122c8ffdd636d0c939b0344bf59a35c97499" }