forked from DreamLab-AI/origin-logseq-AR
-
Notifications
You must be signed in to change notification settings - Fork 16
Expand file tree
/
Copy pathCargo.toml
More file actions
215 lines (176 loc) · 5.52 KB
/
Cargo.toml
File metadata and controls
215 lines (176 loc) · 5.52 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
[package]
name = "webxr"
version = "0.1.0"
edition = "2021"
description = "A WebXR graph visualisation server with GPU-accelerated physics"
authors = ["Your Name <your.email@example.com>"]
license = "MIT"
[lib]
crate-type = ["cdylib", "rlib"]
[dependencies]
# Web framework and WebSocket
actix-web = { version = "4.11.0", features = ["compress-zstd", "macros"] }
actix-cors = "0.7.1"
actix-files = "0.6"
actix = "0.13"
crossbeam-channel = "0.5"
actix-web-actors = "4.3"
tungstenite = "0.21.0"
tokio-tungstenite = { version = "0.21.0" }
# Async runtime
tokio = { version = "1.47.1", features = ["full"] }
tokio-util = { version = "0.7", features = ["codec"] }
tokio-stream = "0.1"
futures = "0.3"
futures-util = "0.3"
async-trait = "0.1"
# For TCP buffered I/O and advanced socket operations
bytes = "1.10.1"
socket2 = { version = "0.5", features = ["all"] }
# Serialization
serde = { version = "1.0.219", features = ["derive"] }
serde_json = "1.0"
serde_yaml = "0.9"
validator = { version = "0.18", features = ["derive"] }
# Database - Neo4j (sole database)
neo4rs = { version = "0.9.0-rc.8", features = ["unstable-serde-packstream-format"] }
# Redis (optional distributed caching)
redis = { version = "0.27", features = ["aio", "tokio-comp", "connection-manager"], optional = true }
# TypeScript type generation
specta = { version = "2.0.0-rc.22", features = ["derive", "export"] }
specta-typescript = "0.0.9"
# Configuration
config = { version = "0.15.15", features = ["toml"] }
dotenvy = "0.15.7"
toml = "0.9.5"
# Logging and Telemetry
log = "0.4"
env_logger = "0.11.8"
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["json", "chrono", "env-filter"] }
tracing-appender = "0.2"
# Error handling
thiserror = "2.0.16"
anyhow = "1.0.99"
# Graph serialization
xml = "0.8"
blake3 = "1.5"
bcrypt = "0.15"
# GPU/Compute (always enabled)
bytemuck = { version = "1.21", features = ["derive"] }
pollster = "0.4"
cudarc = { version = "0.12.1", features = ["driver", "cuda-12040"] }
cust = { version = "0.3.2" }
cust_core = { version = "0.1.1" }
# HTTP client and API
reqwest = { version = "0.12.23", features = ["json", "stream", "multipart"] }
nostr-sdk = "0.43.0"
# OpenAPI/Swagger documentation
utoipa = { version = "5", features = ["actix_extras", "chrono", "uuid"] }
utoipa-swagger-ui = { version = "9", features = ["actix-web"] }
# High-Performance Networking (QUIC/WebTransport)
quinn = "0.11"
rustls = { version = "0.23", default-features = false, features = ["ring", "std"] }
rcgen = "0.13"
fastwebsockets = { version = "0.8", features = ["upgrade"] }
postcard = { version = "1.1", features = ["alloc", "use-std"] }
http = "1.2"
hyper = { version = "1.6", features = ["http1", "http2", "server"] }
hyper-util = { version = "0.1", features = ["tokio", "server-auto"] }
http-body-util = "0.1"
# Utilities
uuid = { version = "1.18.0", features = ["v4", "serde"] }
chrono = { version = "0.4.41", features = ["serde"] }
static_assertions = "1.1"
base64 = "0.22.1"
rand = "0.8"
fastrand = "2.3"
regex = "1.11.2"
lazy_static = "1.5"
once_cell = "1.20"
sha1 = "0.10"
sha2 = "0.10"
# scopeguard = "1.2" # Unused - removed during cleanup
url = "2.5"
flate2 = "1.0"
byteorder = "1.5"
urlencoding = "2.1"
dashmap = "6.1"
# heck = "0.5" # Unused - removed during cleanup
lru = "0.12"
# path_abs = "0.5" # Unused - removed during cleanup
ordered-float = "4.5.0"
notify = "6.1" # File system watching for hot-reload
# Math/Linear Algebra (needed for GPU compute)
nalgebra = "0.34.0"
# Added from the code block
glam = "0.30.5"
sysinfo = "0.37.0"
# Parallel processing
rayon = "1.11.0"
# Hexagonal Architecture
hexser = { version = "0.4.7", features = ["full"] }
# Ontology Reasoning - using local path dependency (always enabled)
whelk = { path = "./whelk-rs" }
# Ontology dependencies (always enabled)
# Note: Using 1.2.0 for ArcStr support (thread-safe string type)
horned-owl = { version = "1.2.0", features = ["remote"] }
horned-functional = { version = "0.4.0" }
# walkdir = { version = "2.4" } # Unused - removed during cleanup
clap = { version = "4.5", features = ["derive"] }
[dev-dependencies]
tokio-test = "0.4"
mockall = "0.13"
pretty_assertions = "1.4"
tempfile = "3.14"
actix-rt = "2.11.0"
# WASM Support for hybrid CPU-WASM/GPU SSSP
[target.'cfg(target_arch = "wasm32")'.dependencies]
wasm-bindgen = "0.2"
wasm-bindgen-futures = "0.4"
web-sys = "0.3"
js-sys = "0.3"
[build-dependencies]
tempfile = "3.14"
[features]
# GPU and ontology features for conditional compilation
# Enable by default for full system capabilities
default = ["gpu", "ontology"]
gpu = [] # GPU acceleration with CUDA kernels
ontology = [] # Ontology validation and reasoning
redis = ["dep:redis"] # Enable Redis distributed caching
[profile.release]
opt-level = 3
lto = true
codegen-units = 1
panic = "unwind"
strip = true
[profile.dev]
opt-level = 1
[package.metadata.rust-version]
min = "1.75.0"
[[bin]]
name = "generate_types"
path = "src/bin/generate_types.rs"
[[bin]]
name = "sync_local"
path = "src/bin/sync_local.rs"
[[bin]]
name = "sync_github"
path = "src/bin/sync_github.rs"
# REMOVED: migrate_settings_to_neo4j binary - migration complete
# [[bin]]
# name = "migrate_settings_to_neo4j"
# path = "src/bin/migrate_settings_to_neo4j.rs"
[[example]]
name = "constraint_integration_debug"
path = "examples/constraint_integration_debug.rs"
[[example]]
name = "metadata_debug"
path = "examples/metadata_debug.rs"
[[example]]
name = "ontology_constraints_example"
path = "examples/ontology_constraints_example.rs"
[[example]]
name = "ontology_validation_example"
path = "examples/ontology_validation_example.rs"