forked from hyperledger-solang/solang
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Cargo.toml
110 lines (103 loc) · 3.38 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
[package]
name = "solang"
version = "0.3.3"
authors = ["Sean Young <[email protected]>", "Lucas Steuernagel <[email protected]>", "Cyrill Leutwiler <[email protected]>"]
repository = "https://github.com/hyperledger/solang"
documentation = "https://solang.readthedocs.io/"
license = "Apache-2.0"
build = "build.rs"
description = "Solang Solidity Compiler"
keywords = [ "solidity", "compiler", "solana", "polkadot", "substrate" ]
rust-version = "1.74.0"
edition = "2021"
exclude = [ "/.*", "/docs", "/examples", "/solana-library", "/tests", "/integration", "/vscode", "/testdata" ]
[build-dependencies]
cc = "1.0"
[dependencies]
regex = "1"
rand = "0.8"
num-bigint = { version = "0.4", features = ["rand"]}
num-traits = "0.2"
num-integer = "0.1"
clap = {version = "4.5", features = ["derive"]}
clap_complete = "4.5"
hex = "0.4"
tiny-keccak = { version = "2.0", features = ["keccak"] }
serde_json = "1.0"
serde = "1.0"
serde_derive = { version = "1.0" }
inkwell = { version = "0.4.0", features = ["target-webassembly", "no-libffi-linking", "llvm16-0"], optional = true }
blake2-rfc = "0.2.18"
handlebars = "5.1"
contract-metadata = "4.0.2"
semver = { version = "1.0", features = ["serde"] }
tempfile = "3.10"
libc = { version = "0.2", optional = true }
tower-lsp = { version = "0.20", optional = true }
tokio = { version = "1.27", features = ["rt", "io-std", "macros"], optional = true }
base58 = "0.2.0"
sha2 = "0.10"
ripemd = "0.1"
bitvec = "1"
funty = "2.0"
itertools = "0.12"
num-rational = "0.4"
indexmap = "2.2"
once_cell = "1.19"
solang-parser = { path = "solang-parser", version = "0.3.3" }
codespan-reporting = "0.11"
phf = { version = "0.11", features = ["macros"] }
rust-lapper = { version = "1.1", optional = true }
anchor-syn = { version = "0.29.0", features = ["idl-build"] }
convert_case = "0.6"
parse-display = "0.9"
parity-scale-codec = "3.6"
ink_env = "5.0.0"
ink_metadata = "5.0.0"
scale-info = "2.10"
petgraph = "0.6"
wasmparser = "0.202.0"
wasm-encoder = "0.202"
toml = "0.8"
wasm-opt = { version = "0.116.0", default-features = false, optional = true }
contract-build = { version = "4.0.2", optional = true }
primitive-types = { version = "0.12", features = ["codec"] }
normalize-path = "0.2.1"
bitflags = "2.4"
scopeguard = "1.2.0"
forge-fmt = { path = "fmt", optional = true }
# We don't use ethers-core directly, but need the correct version for the
# build to work.
ethers-core = { version = "2.0.10", optional = true }
soroban-sdk = { version = "20.0.0-rc2", features = ["testutils"], optional = true }
[dev-dependencies]
num-derive = "0.4"
wasmi = "0.31"
# solana_rbpf makes api changes in patch versions
solana_rbpf = "=0.6.1"
byteorder = "1.5"
assert_cmd = "2.0"
bincode = "1.3"
ed25519-dalek = { version = "2", features = ["rand_core"] }
path-slash = "0.2"
pretty_assertions = "1.4"
byte-slice-cast = "1.2"
borsh = "1.1"
borsh-derive = "1.1"
rayon = "1"
walkdir = "2.4"
ink_primitives = "5.0.0"
wasm_host_attr = { path = "tests/wasm_host_attr" }
num-bigint = { version = "0.4", features = ["rand", "serde"]}
[package.metadata.docs.rs]
no-default-features = true
[profile.release]
lto = true
[features]
soroban = ["soroban-sdk"]
default = ["llvm", "wasm_opt", "language_server", "soroban"]
llvm = ["inkwell", "libc"]
wasm_opt = ["llvm", "wasm-opt", "contract-build"]
language_server = ["tower-lsp", "forge-fmt", "ethers-core", "tokio", "rust-lapper"]
[workspace]
members = ["solang-parser", "fmt", "tests/wasm_host_attr"]