-
Notifications
You must be signed in to change notification settings - Fork 125
Expand file tree
/
Copy pathCargo.toml
More file actions
199 lines (193 loc) · 9.28 KB
/
Cargo.toml
File metadata and controls
199 lines (193 loc) · 9.28 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
[workspace.package]
version = "1.1.0"
edition = "2024"
description = "Surfpool is where developers start their Solana journey."
license = "Apache-2.0"
readme = "README.md"
repository = "https://github.com/txtx/surfpool"
keywords = ["solana-programs", "web3", "solana", "blockchains"]
categories = ["cryptography"]
[workspace]
members = [
"crates/bench",
"crates/cli",
"crates/core",
"crates/db",
"crates/gql",
"crates/mcp",
"crates/studio",
"crates/subgraph",
"crates/types",
]
exclude = ["examples/*"]
default-members = ["crates/cli"]
resolver = "2"
[workspace.dependencies]
actix-cors = "0.7.0"
actix-web = { version = "4", default-features = false }
agave-feature-set = { version = "3.1", default-features = false }
agave-geyser-plugin-interface = { version = "3.1", default-features = false }
agave-reserved-account-keys = { version = "3.1", default-features = false }
anchor-lang-idl = "0.1.2"
ansi_term = "0.12.1"
anyhow = { version = "1.0.95", default-features = false }
atty = "0.2.13"
base58 = "0.2.0"
base64 = { version = "0.22.1", default-features = false }
bincode = "1.3.3"
blake3 = { version = "1.8.2", default-features = false }
borsh = { version = "1.5.5", default-features = false }
bs58 = { version = "0.5.0", default-features = false }
chrono = { version = "0.4.42", features = [
"alloc",
"clock",
], default-features = false }
clap = { version = "4.5.48", default-features = false }
clap_complete = { version = "4.5.48", default-features = false }
convert_case = "0.8.0"
crossbeam = "0.8.4"
crossbeam-channel = { version = "0.5.15", default-features = false }
crossterm = { version = "0.28.1", default-features = false }
ctrlc = "3.4.5"
dialoguer = { version = "0.11.0", default-features = false }
diesel = { version = "2.2.11", default-features = false }
diesel-dynamic-schema = { version = "0.2.3", default-features = false }
diesel_derives = { version = "2.2.6", default-features = false }
dirs = "6.0.0"
dotenvy = "0.15.7"
fern = { version = "0.7.1", default-features = false }
fork = "0.2.0"
futures = { version = "0.3.22", default-features = false }
hex = { version = "0.4.3", default-features = false }
hiro-system-kit = { version = "0.3.4", default-features = false, features = [
"tokio_helpers",
] }
include_dir = "0.7.4"
indicatif = { version = "0.18.0", default-features = false }
ipc-channel = "0.19.0"
itertools = { version = "0.14.0", default-features = false }
json5 = "0.4.1"
jsonrpc-core = { version = "18.0.0", features = [
"futures",
], default-features = false }
jsonrpc-core-client = { version = "18.0.0", default-features = false }
jsonrpc-derive = "18.0.0"
jsonrpc-http-server = "18.0.0"
jsonrpc-pubsub = "18.0.0"
jsonrpc-ws-server = "18.0.0"
juniper = { version = "0.16.2", default-features = false }
juniper_actix = { version = "0.6.0", default-features = false }
juniper_codegen = { version = "0.16.0", default-features = false }
juniper_graphql_ws = { version = "0.4.0", default-features = false }
lazy_static = "1.5.0"
libloading = "0.7.4"
litesvm = { version = "0.10.0", features = ["nodejs-internal"] }
litesvm-token = "0.10.0"
log = "0.4.27"
mime_guess = { version = "2.0.4", default-features = false }
mustache = "0.9.0"
notify = { version = "8.0.0", default-features = false }
npm_rs = "1.0.0"
once_cell = { version = "1.19.0", default-features = false }
ratatui = { version = "0.29.0", features = [
"crossterm",
], default-features = false }
reqwest = { version = "0.12.23", default-features = false }
rmcp = "0.9.0"
rust-embed = "8.2.0"
schemars = { version = "1.0.4" }
schemars_derive = { version = "1.0.4" }
serde = { version = "1.0.226", default-features = false }
serde_derive = { version = "1.0.226", default-features = false } # must match the serde version, see https://github.com/serde-rs/serde/issues/2584#issuecomment-1685252251
serde_json = { version = "1.0.135", default-features = false }
serde_with = { version = "3.14.0", default-features = false }
strum = { version = "0.26", default-features = false, features = ["derive"] }
solana-account = { version = "3.2", default-features = false }
solana-account-decoder = { version = "3.1", default-features = false }
solana-account-decoder-client-types = { version = "3.1", default-features = false }
solana-address-lookup-table-interface = { version = "3.0", default-features = false }
solana-client = { version = "3.1", default-features = false }
solana-clock = { version = "3.0", default-features = false }
solana-commitment-config = { version = "3.1", default-features = false }
solana-compute-budget-interface = { version = "3.0", default-features = false }
solana-epoch-info = { version = "3.1", default-features = false }
solana-epoch-schedule = { version = "3.0", default-features = false }
solana-feature-gate-interface = { version = "3.0", default-features = false }
solana-genesis-config = { version = "3.0", default-features = false }
# solana-geyser-plugin-manager = { version = "=3.1.6", default-features = false } # Disabled: version conflicts with litesvm 0.9.1 (requires solana-instruction =3.0.0 vs ~3.1)
solana-hash = { version = "3.1", default-features = false }
solana-inflation = { version = "3.0", default-features = false }
solana-instruction = { version = "3.1", default-features = false }
solana-keypair = { version = "3.1", default-features = false }
solana-loader-v3-interface = { version = "6.1", default-features = false }
solana-message = { version = "3.0", default-features = false }
solana-nonce = { version = "3.0", default-features = false }
solana-packet = { version = "4.0", default-features = false }
solana-program-option = { version = "3.0", default-features = false }
solana-program-pack = { version = "3.0", default-features = false }
solana-pubkey = { version = "3.0", default-features = false }
solana-rpc-client = { version = "3.1", default-features = false }
solana-rpc-client-api = { version = "3.1", default-features = false }
solana-runtime = { version = "3.1", default-features = false, features = ["agave-unstable-api"] }
solana-sdk-ids = { version = "3.1", default-features = false }
solana-signature = { version = "3.1", default-features = false, features = [
"rand",
] }
solana-signer = { version = "3.0", default-features = false }
solana-slot-hashes = { version = "3.0", default-features = false }
solana-system-interface = { version = "2.0", default-features = false }
solana-sysvar = { version = "3.1", default-features = false }
solana-sysvar-id = { version = "3.1", default-features = false }
solana-transaction = { version = "3.0", default-features = false }
solana-transaction-context = { version = "3.1", default-features = false }
solana-transaction-error = { version = "3.0", default-features = false }
solana-transaction-status = { version = "3.1", default-features = false }
solana-version = { version = "3.1", default-features = false }
spl-associated-token-account-interface = { version = "2.0.0", default-features = false }
spl-token-2022-interface = { version = "2.0.0", default-features = false }
spl-token-interface = { version = "2.0.0", default-features = false }
spl-token-metadata-interface = { version = "0.8.0", default-features = false }
tempfile = "3.23.0"
test-case = "^3.3.1"
thiserror = "2.0"
tokio = { version = "1.43.0", default-features = false }
tokio-tungstenite = { version = "=0.20.1", default-features = false }
toml = { version = "0.8.23", default-features = false }
tracing = { version = "0.1.41", default-features = false }
url = { version = "1.7.2", default-features = false }
uuid = "1.15.1"
zip = { version = "0.6", features = ["deflate"], default-features = false }
surfpool-core = { path = "crates/core", default-features = false }
surfpool-db = { path = "crates/db" }
surfpool-gql = { path = "crates/gql", default-features = false }
surfpool-mcp = { path = "crates/mcp", default-features = false }
surfpool-studio-ui = { path = "crates/studio", default-features = false }
surfpool-subgraph = { path = "crates/subgraph", default-features = false }
surfpool-types = { path = "crates/types", default-features = false }
txtx-addon-kit = "0.4.13"
txtx-addon-network-svm = { version = "0.3.20" }
txtx-addon-network-svm-types = { version = "0.3.18" }
txtx-cloud = { version = "0.1.14", features = [
"clap",
"toml",
], default-features = false }
txtx-core = { version = "0.4.15" }
txtx-gql = { version = "0.3.9" }
txtx-supervisor-ui = { version = "0.2.10", default-features = false }
# [patch.crates-io]
## Local
# txtx-addon-kit = { path = "../txtx/crates/txtx-addon-kit" }
# txtx-core = { path = "../txtx/crates/txtx-core" }
# txtx-addon-network-svm = { path = "../txtx/addons/svm/core" }
# txtx-addon-network-svm-types = { path = "../txtx/addons/svm/types" }
# txtx-gql = { path = "../txtx/crates/txtx-gql" }
# txtx-supervisor-ui = { path = "../txtx/crates/txtx-supervisor-ui" }
# txtx-cloud = { path = "../txtx/crates/txtx-cloud" }
## Git
# txtx-addon-kit = { git = "https://github.com/txtx/txtx.git", branch = "main" }
# txtx-core = { git = "https://github.com/txtx/txtx.git", branch = "main" }
# txtx-addon-network-svm = { git = "https://github.com/txtx/txtx.git", branch = "main" }
# txtx-addon-network-svm-types = { git = "https://github.com/txtx/txtx.git", branch = "main" }
# txtx-gql = { git = "https://github.com/txtx/txtx.git", branch = "main" }
# txtx-supervisor-ui = { git = "https://github.com/txtx/txtx.git", branch = "main" }
# txtx-cloud = { git = "https://github.com/txtx/txtx.git", branch = "main" }