1
1
[package ]
2
2
name = " avalanche-types"
3
- version = " 0.0.115 " # https://crates.io/crates/avalanche-types
3
+ version = " 0.0.135 " # https://crates.io/crates/avalanche-types
4
4
edition = " 2021"
5
- rust-version = " 1.64 "
5
+ rust-version = " 1.65 "
6
6
publish = true
7
- description = " Avalanche types"
7
+ description = " Avalanche primitive types in Rust "
8
8
license = " BSD-3-Clause"
9
9
homepage = " https://avax.network"
10
- repository = " https://github.com/ava-labs/avalanche-rust/tree/main/crates/avalanche- types"
10
+ repository = " https://github.com/ava-labs/avalanche-types-rs "
11
11
readme = " README.md"
12
12
13
13
[dependencies ]
@@ -17,7 +17,6 @@ bs58 = "0.4.0" # for "formatting", https://crates.io/crates/bs58
17
17
bytes = " 1.2.1"
18
18
chrono = " 0.4.22"
19
19
cmp-manager = " 0.0.1"
20
- futures = " 0.3.25"
21
20
hex = " 0.4.3"
22
21
lazy_static = " 1.4.0"
23
22
log = " 0.4.17"
@@ -74,27 +73,32 @@ ethers-signers = { version = "1.0.0", optional = true }
74
73
http-manager = { version = " 0.0.3" , optional = true }
75
74
tokio = { version = " 1.21.2" , features = [" full" ], optional = true } # https://github.com/tokio-rs/tokio/releases
76
75
77
- # [OPTIONAL] for "rpcchainvm "
78
- avalanche-proto = { version = " 0.17.0 " , features = [ " aliasreader " , " keystore " , " sharedmemory " , " subnetlookup " , " rpcdb " , " google_protobuf " ] , optional = true }
76
+ # [OPTIONAL] for "subnet "
77
+ futures = { version = " 0.3.25 " , optional = true }
79
78
http = {version = " 0.2.8" , optional = true }
80
- hyper = " 0.14.22 "
79
+ hyper = " 0.14.23 "
81
80
jsonrpc-core = {version = " 18.0.0" , optional = true }
82
81
jsonrpc-http-server = {version = " 18.0.0" , optional = true }
83
82
num-derive = { version = " 0.3.3" , optional = true }
84
83
num-traits = { version = " 0.2.15" , optional = true }
85
- prost = { version = " 0.11.0 " , optional = true } # prost-build requires "cmake", https://github.com/tokio-rs/prost/releases
84
+ prost = { version = " 0.11.2 " , optional = true } # prost-build requires "cmake", https://github.com/tokio-rs/prost/releases
86
85
semver = { version = " 1.0.14" , optional = true }
87
86
tokio-stream = { version = " 0.1.11" , features = [" net" ], optional = true }
88
87
tonic = { version = " 0.8.2" , features = [" gzip" ], optional = true } # https://github.com/hyperium/tonic/tags
89
88
tonic-health = { version = " 0.7.1" , optional = true }
90
89
tonic-reflection = { version = " 0.5.0" , optional = true }
91
- tower-service = " 0.3.2"
90
+ tower-service = { version = " 0.3.2" , optional = true }
92
91
93
- # [OPTIONAL] for "num_bigint"
92
+ # [OPTIONAL] for "codec"
93
+ base64 = { version = " 0.13.1" , optional = true }
94
94
num-bigint = { version = " 0.4.3" , optional = true }
95
95
96
+ [build-dependencies ]
97
+ protoc-gen-prost = " 0.2.0"
98
+ protoc-gen-tonic = " 0.2.0"
99
+
96
100
[dev-dependencies ]
97
- env_logger = " 0.9.1 "
101
+ env_logger = " 0.9.3 "
98
102
id-manager = " 0.0.1"
99
103
random-manager = " 0.0.1"
100
104
tempfile = " 3.3.0"
@@ -103,33 +107,115 @@ tokio-test = "0.4.2"
103
107
104
108
[features ]
105
109
default = [
106
- " cert" ,
107
- " client" ,
108
- " evm" ,
109
110
" message_compress_gzip" ,
110
- " mnemonic" ,
111
- " rpcchainvm" ,
112
111
113
112
# optional features
114
113
# "avalanchego",
114
+ # "cert",
115
+ # "client",
116
+ # "codec_base64",
117
+ # "codec_big_int",
118
+ # "evm",
115
119
# "kms_aws",
116
120
# "libsecp256k1",
117
- # "num_bigint",
121
+ # "mnemonic",
122
+ # "proto",
123
+ # "subnet",
118
124
# "subnet_evm",
119
125
]
120
126
121
127
avalanchego = []
122
128
cert = [" rcgen" , " rsa" , " rustls" ]
123
129
client = [" http-manager" , " ethers" , " ethers-core" , " ethers-providers" , " ethers-signers" , " tokio" ]
130
+ codec_base64 = [" base64" ]
131
+ codec_big_int = [" num-bigint" ]
124
132
evm = [" rlp" , " rlp-derive" ]
125
133
kms_aws = [" aws-manager" , " aws-sdk-kms" , " aws-smithy-types" ]
126
134
libsecp256k1 = [" secp256k1" ]
127
135
message_compress_gzip = [" flate2" ]
128
136
mnemonic = [" bip32" , " rand_core" ]
129
- num_bigint = [" num-bigint" ]
130
- rpcchainvm = [" avalanche-proto" , " http" , " jsonrpc-core" , " num-derive" , " num-traits" , " prost" , " semver" , " tokio" , " tokio-stream" , " tonic" , " tonic-health" , " tonic-reflection" ]
131
137
subnet_evm = []
132
138
139
+ proto = [
140
+ " prost" ,
141
+ " tonic" ,
142
+
143
+ # TODO: remove all proto specific features
144
+ " aliasreader" ,
145
+ " appsender" ,
146
+ " google_protobuf" ,
147
+ " helloworld" ,
148
+ " http_proto" , # TODO: remove feature for buf
149
+ " http_responsewriter" ,
150
+ " io_prometheus_client" ,
151
+ " io_reader" ,
152
+ " io_writer" ,
153
+ " keystore" ,
154
+ " messenger" ,
155
+ " net_conn" ,
156
+ " p2p" ,
157
+ " plugin" ,
158
+ " rpcdb" ,
159
+ " sharedmemory" ,
160
+ " subnetlookup" ,
161
+ " validatorstate" ,
162
+ " vm" ,
163
+ ]
164
+ subnet = [
165
+ " futures" ,
166
+ " http" ,
167
+ " jsonrpc-core" ,
168
+ " num-derive" ,
169
+ " num-traits" ,
170
+ " prost" ,
171
+ " semver" ,
172
+ " tokio" ,
173
+ " tokio-stream" ,
174
+ " tonic" ,
175
+ " tonic-health" ,
176
+ " tonic-reflection" ,
177
+ " tower-service" ,
178
+
179
+ " proto" ,
180
+ ]
181
+
182
+ # TODO: remove all proto specific features
183
+ aliasreader = []
184
+ appsender = [" google_protobuf" ]
185
+ google_protobuf = []
186
+ helloworld = []
187
+ http_proto = []
188
+ http_responsewriter = [" google_protobuf" ]
189
+ io_prometheus_client = []
190
+ io_reader = []
191
+ io_writer = []
192
+ keystore = []
193
+ messenger = []
194
+ net_conn = [" google_protobuf" ]
195
+ p2p = []
196
+ plugin = [" google_protobuf" ]
197
+ rpcdb = [" google_protobuf" ]
198
+ sharedmemory = []
199
+ subnetlookup = []
200
+ validatorstate = [" google_protobuf" ]
201
+ vm = [" io_prometheus_client" , " google_protobuf" ]
202
+
203
+ [[example ]]
204
+ name = " client_c"
205
+ required-features = [" client" , " evm" ]
206
+
207
+ [[example ]]
208
+ name = " client_info"
209
+ required-features = [" client" ]
210
+
211
+ [[example ]]
212
+ name = " client_p"
213
+ required-features = [" client" ]
214
+
215
+ [[example ]]
216
+ name = " client_x"
217
+ required-features = [" client" ]
218
+
133
219
[[example ]]
134
220
name = " key_cert"
135
221
required-features = [" cert" ]
@@ -142,11 +228,20 @@ required-features = ["kms_aws"]
142
228
name = " key_secp256k1_mnemonic_derive_load"
143
229
required-features = [" mnemonic" ]
144
230
231
+ [[example ]]
232
+ name = " proto_client"
233
+ required-features = [" proto" , " subnet" ]
234
+
235
+ [[example ]]
236
+ name = " proto_server"
237
+ required-features = [" proto" , " subnet" ]
238
+
145
239
[[test ]]
146
240
name = " integration"
147
241
path = " tests/integration_tests.rs"
148
- required-features = [" rpcchainvm " ]
242
+ required-features = [" subnet " ]
149
243
150
244
[package .metadata .cargo-udeps .ignore ]
245
+ build = [" protoc-gen-prost" , " protoc-gen-tonic" ]
246
+ development = [" id-manager" , " tokio-test" , " tonic-reflection" ]
151
247
normal = [" rsa" ]
152
- development = [" id-manager" , " tokio-test" ]
0 commit comments