Cargo.toml 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. [package]
  2. name = "solang"
  3. version = "0.3.3"
  4. authors = ["Sean Young <sean@mess.org>", "Lucas Steuernagel <lucas.tnagel@gmail.com>", "Cyrill Leutwiler <bigcyrill@hotmail.com>"]
  5. repository = "https://github.com/hyperledger-solang/solang"
  6. documentation = "https://solang.readthedocs.io/"
  7. license = "Apache-2.0"
  8. build = "build.rs"
  9. description = "Solang Solidity Compiler"
  10. keywords = [ "solidity", "compiler", "solana", "polkadot", "substrate" ]
  11. rust-version = "1.74.0"
  12. edition = "2021"
  13. exclude = [ "/.*", "/docs", "/examples", "/solana-library", "/tests", "/integration", "/vscode", "/testdata" ]
  14. [build-dependencies]
  15. cc = "1.0"
  16. [dependencies]
  17. regex = "1"
  18. rand = "0.8"
  19. num-bigint = { version = "0.4", features = ["rand"]}
  20. num-traits = "0.2"
  21. num-integer = "0.1"
  22. clap = {version = "4.5", features = ["derive"]}
  23. clap_complete = "4.5"
  24. hex = "0.4"
  25. tiny-keccak = { version = "2.0", features = ["keccak"] }
  26. serde_json = "1.0"
  27. serde = "1.0"
  28. serde_derive = { version = "1.0" }
  29. inkwell = { version = "0.4.0", features = ["target-webassembly", "no-libffi-linking", "llvm16-0"], optional = true }
  30. blake2-rfc = "0.2.18"
  31. handlebars = "5.1"
  32. contract-metadata = "4.0.2"
  33. semver = { version = "1.0", features = ["serde"] }
  34. tempfile = "3.10"
  35. libc = { version = "0.2", optional = true }
  36. tower-lsp = { version = "0.20", optional = true }
  37. tokio = { version = "1.27", features = ["rt", "io-std", "macros"], optional = true }
  38. base58 = "0.2.0"
  39. sha2 = "0.10"
  40. ripemd = "0.1"
  41. bitvec = "1"
  42. funty = "2.0"
  43. itertools = "0.12"
  44. num-rational = "0.4"
  45. indexmap = "2.2"
  46. once_cell = "1.19"
  47. solang-parser = { path = "solang-parser", version = "0.3.3" }
  48. codespan-reporting = "0.11"
  49. phf = { version = "0.11", features = ["macros"] }
  50. rust-lapper = { version = "1.1", optional = true }
  51. anchor-syn = { version = "0.29.0", features = ["idl-build"] }
  52. convert_case = "0.6"
  53. parse-display = "0.9"
  54. parity-scale-codec = "3.6"
  55. ink_env = "5.0.0"
  56. ink_metadata = "5.0.0"
  57. scale-info = "2.10"
  58. petgraph = "0.6"
  59. wasmparser = "0.202.0"
  60. wasm-encoder = "0.202"
  61. toml = "0.8"
  62. wasm-opt = { version = "0.116.0", default-features = false, optional = true }
  63. contract-build = { version = "4.0.2", optional = true }
  64. primitive-types = { version = "0.12", features = ["codec"] }
  65. normalize-path = "0.2.1"
  66. bitflags = "2.4"
  67. scopeguard = "1.2.0"
  68. forge-fmt = { path = "fmt", optional = true }
  69. # We don't use ethers-core directly, but need the correct version for the
  70. # build to work.
  71. ethers-core = { version = "2.0.10", optional = true }
  72. soroban-sdk = { version = "20.0.0-rc2", features = ["testutils"], optional = true }
  73. [dev-dependencies]
  74. num-derive = "0.4"
  75. wasmi = "0.31"
  76. # solana_rbpf makes api changes in patch versions
  77. solana_rbpf = "=0.6.1"
  78. byteorder = "1.5"
  79. assert_cmd = "2.0"
  80. bincode = "1.3"
  81. ed25519-dalek = { version = "2", features = ["rand_core"] }
  82. path-slash = "0.2"
  83. pretty_assertions = "1.4"
  84. byte-slice-cast = "1.2"
  85. borsh = "1.1"
  86. borsh-derive = "1.1"
  87. rayon = "1"
  88. walkdir = "2.4"
  89. ink_primitives = "5.0.0"
  90. wasm_host_attr = { path = "tests/wasm_host_attr" }
  91. num-bigint = { version = "0.4", features = ["rand", "serde"]}
  92. [package.metadata.docs.rs]
  93. no-default-features = true
  94. [profile.release]
  95. lto = true
  96. [features]
  97. soroban = ["soroban-sdk"]
  98. default = ["llvm", "wasm_opt", "language_server", "soroban"]
  99. llvm = ["inkwell", "libc"]
  100. wasm_opt = ["llvm", "wasm-opt", "contract-build"]
  101. language_server = ["tower-lsp", "forge-fmt", "ethers-core", "tokio", "rust-lapper"]
  102. [workspace]
  103. members = ["solang-parser", "fmt", "tests/wasm_host_attr"]