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
[]
= "gstd"
= "Gear programs standard library"
= "https://docs.rs/gstd"
= ["gear", "std", "no-std", "wasm", "smart-contracts"]
= ["api-bindings"]
= true
= true
= true
= true
= true
= true
= true
[]
= { = "0.7.4", = false, = true }
= { = "0.2.32", = true }
= { = "0.2.10", = true }
= true
= { = true, = ["codec"] }
= true
= true
= true
= { = true, = ["alloc"] }
= { = true, = ["derive"] }
= { = true, = ["derive"] }
= { = true, = ["alloc"] }
= "1.2.0"
[]
#! ## Default features:
#! - `panic-message`
= ["panic-message"]
#! ## Panic handler profiles
#! We currently use the following format for panic messages from Rust code:
#! `panicked with '{message}'[ at '{location}']`. Also `Panic occurred: `
#! will be added to the beginning of the panic message by our core-backend.
#!
#! So the final panic message looks like this:
#! `Panic occurred: panicked with '{message}'[ at '{location}']`.
#!
#! You can configure which panic handler profile you need
#! by specifying one of the following functions:
## When enabled, a minimal panic handler is provided by this crate.
## Instead of a panic message, `<unknown>` is displayed.
= ["const_format"]
## When enabled, a panic handler will also display a panic message.
= ["panic-handler", "arrayvec"]
## When enabled, a panic handler will also display a panic message and location.
## This function is not recommended for use in production environment
## because it displays the code path.
= ["panic-message"]
#! For example, if you don't use the `panic-location` feature, the compiler
#! will remove all locations such as `/home/username/dapp/src/lib.rs:1:2`
#! from the binary. The size of program will be reduced and
#! `/home/username/...` information will not be included in the binary.
#! ## Nightly features
#!
#! The final binary gets additional optimizations when using the nightly compiler.
## Enables all features below.
## These features depend on unstable Rust API and require nightly toolchain.
= ["oom-handler"]
## When enabled, an OOM error handler is provided.
## Relies on [`alloc_error_handler`][rust-51540].
= []
#! ## Additional features
## Disables unsupported syscalls and their calls for executing on ethexe.
= ["gcore/ethexe", "gstd-codegen/ethexe"]
## Enables debug logging; this heavily impacts gas cost
## and is therefore disabled by default.
= ["galloc/debug", "gcore/debug"]
#! [rust-66745]: https://github.com/rust-lang/rust/issues/66745
#! [rust-51540]: https://github.com/rust-lang/rust/issues/51540
[]
= ["document-features"]