-
Notifications
You must be signed in to change notification settings - Fork 18
Expand file tree
/
Copy pathCargo.toml
More file actions
101 lines (87 loc) · 3.45 KB
/
Cargo.toml
File metadata and controls
101 lines (87 loc) · 3.45 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
[package]
name = "magicblock-delegation-program"
description = "Delegation program for the Ephemeral Rollups"
version = "1.2.1"
authors = ["Magicblock Labs <dev@magicblock.gg>"]
edition = "2021"
license = "MIT"
homepage = "https://www.magicblock.gg/"
documentation = "https://docs.magicblock.gg/"
repository = "https://github.com/magicblock-labs/delegation-program"
readme = "./README.md"
keywords = ["solana", "crypto", "delegation", "ephemeral-rollups", "magicblock"]
[workspace]
members = [".", "dlp-api"]
[lib]
crate-type = ["cdylib", "lib"]
name = "dlp"
[features]
# Leaf features (used directly in code)
pinocchio-rt = [
"dep:pinocchio",
"dep:pinocchio-log",
"dep:pinocchio-pubkey",
"dep:pinocchio-system",
"dep:const-crypto",
"dep:solana-curve25519",
]
diff = ["pinocchio-rt", "magicblock-delegation-program-api/diff"]
processor = ["diff"]
entrypoint = []
# Back-compat: keep name but make it opt-out of entrypoint.
no-entrypoint = []
# Use-case features (composed of leaf features)
program = ["processor", "entrypoint"]
sdk = ["diff", "magicblock-delegation-program-api/cpi", "magicblock-delegation-program-api/instruction"]
# Default build = program path + security txt
default = ["program", "solana-security-txt"]
unit_test_config = ["magicblock-delegation-program-api/unit_test_config"]
log-cost = []
logging = []
[dependencies]
magicblock-delegation-program-api = { version = "0.3.0", path = "dlp-api", default-features = false }
bincode = { version = "^1.3" }
borsh = { version = "1.5.3", features = [ "derive" ] }
bytemuck = { version = ">=1", features = [ "derive" ] }
const-crypto = { version = "0.3.0", optional = true }
num_enum = "^0.7.2"
solana-curve25519 = { version = ">=2.2", optional = true }
solana-program = { version = ">=1.16, <3.0.0" }
solana-instruction = "3.0.0"
solana-sha256-hasher = "3.1.0"
solana-security-txt = { version = ">=1.1", optional = true }
static_assertions = "1.1.0"
strum = { version = ">=0.27", features = ["derive"] }
thiserror = { version = ">=1" }
pinocchio = { version = "0.10.1", optional = true }
pinocchio-log = { version = "0.5.1" , optional = true }
pinocchio-pubkey = { version = "0.3.0" , optional = true }
pinocchio-system = { version = "0.5.0" , optional = true }
pinocchio-token = { version = "0.5.0" , optional = true }
pinocchio-associated-token-account = { version = "0.3.0" , optional = true }
# version must match the one imported by pinocchio
solana-address = { version = "2.0", features = ["bytemuck", "decode", "syscalls", "curve25519", "std"] }
# manually resolves the conflict with a pinned version of serde
serde = { version = "1.0.228", features = ["derive"] }
solana-sdk = { version = ">=1.16", optional = true }
rand = { version = "=0.8.5", features = ["small_rng"], optional = true }
[dev-dependencies]
assertables = "9.8.2"
magicblock-delegation-program = { path = ".", features = ["unit_test_config"] }
magicblock-delegation-program-api = { version = "0.3.0", path = "dlp-api" }
rand = { version = "=0.8.5", features = ["small_rng"] }
solana-pubkey = "3.0.0"
solana-program-test = ">=1.16"
solana-sdk = ">=1.16"
tokio = { version = "^1.0", features = ["full"] }
[profile.release]
opt-level = "z"
lto = "fat"
codegen-units = 1
panic = "abort"
strip = "symbols"
debug = 0
incremental = false
overflow-checks = false
[lints.rust]
unexpected_cfgs = { level = "warn", check-cfg = ['cfg(target_os, values("solana"))'] }