forked from picodata/picodata
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCargo.toml
130 lines (115 loc) · 3.62 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
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
[package]
name = "picodata"
version = "24.7.0"
edition = "2021"
autotests = false
rust-version = "1.76.0"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
abi_stable = "0.11"
ahash = "0.8"
bytes = "1.8"
chrono = "0.4"
clap = { version = "3.0", features = ["derive", "env"] }
comfy-table = "7.1"
diff = "0.1"
either = "1.13"
file_shred = "1.1"
futures = "0.3"
indoc = "2.0"
libc = "0.2"
libloading = "0.8"
md5 = "0.7"
nix = { version = "0.29", features = ["fs", "term", "process", "signal"] }
once_cell = "1.20"
openssl = "0.10"
pgwire = { version = "0.24", default-features = false, features = ["server-api"] }
postgres-types = { version = "0.2", features = ["array-impls", "with-serde_json-1", "with-time-0_3", "with-uuid-0_8"] }
protobuf = { version = "2.27", features = ["bytes", "with-bytes"] }
raft = "0.7"
rand = "0.8"
rmp = "*"
rmp-serde = "1.1"
rmpv = { version = "1.0", features = ["with-serde"] }
rust_decimal = { version = "1.36", features = ["db-postgres"] }
rustyline = "14.0"
rustyline-derive = "0.10"
serde = "1.0"
serde_bytes = "0.11"
serde_json = "1.0"
serde_repr = "0.1"
serde_yaml = "0.9"
slog = { version = "2.7", features = ["max_level_trace", "release_max_level_trace"] }
smallvec = "1.13"
smol_str = "0.2"
socket2 = "0.5"
sqlparser = { version = "0.40", features = ["visitor"] }
tempfile = "3.8"
thiserror = "1.0"
time = { version = "0.3", features = ["parsing", "formatting", "macros"] }
uuid = { version = "0.8", features = ["v4"] } # TODO: update to 1.0
va_list = ">=0.1.4"
# Bundled modules
pico_proc_macro = { path = "pico_proc_macro" }
picodata-plugin = { path = "picodata-plugin", features = ["internal_test"] }
sbroad-core = { path = "sbroad/sbroad-core" }
tarantool = { path = "tarantool/tarantool", features = ["picodata", "test", "stored_procs_slice"] }
[dev-dependencies]
pretty_assertions = "1.4"
[build-dependencies]
git-version = "0.3"
quote = "1.0"
syn = { version = "1.0", features = ["full", "extra-traits", "printing"] }
build-rs-helpers = { path = "build-rs-helpers" }
tarantool-build = { path = "tarantool-build" }
# an attempt to minimize the number of lines in Cargo.lock
[patch.crates-io]
tarantool = { path = "tarantool/tarantool" }
tarantool-proc = { path = "tarantool/tarantool-proc" }
tlua = { path = "tarantool/tlua" }
tlua-derive = { path = "tarantool/tlua-derive" }
# tlua, sbroad-core etc depend on tarantool-module's git repo
[patch."https://git.picodata.io/picodata/picodata/tarantool-module.git"]
tarantool = { path = "tarantool/tarantool" }
tarantool-proc = { path = "tarantool/tarantool-proc" }
tlua = { path = "tarantool/tlua" }
tlua-derive = { path = "tarantool/tlua-derive" }
[features]
dynamic_build = []
error_injection = []
load_test = []
webui = []
[lib]
doctest = true
[[test]]
name = "inner"
path = "test/inner.rs"
harness = false
[workspace]
resolver = "2"
members = [
".",
"build-rs-helpers",
"gostech/gostech-audit-log",
"pico_proc_macro",
"tarantool-build",
"test/plug_wrong_version",
"test/testplug",
]
# For releases, we prioritize performance over compilation time.
# As demonstrated in https://git.picodata.io/picodata/picodata/picodata/-/issues/1026#note_107222,
# these options can result in a performance improvement of 16.89%.
# However, it dramatically increases compilation time, so in CI on non-master
# branches a faster profile is used - fast-release.
[profile.release]
debug = 1
lto = "fat"
codegen-units = 1
# A faster release build that is used in CI on non-master branches.
[profile.fast-release]
inherits = "release"
debug = "line-tables-only"
lto = "off"
codegen-units = 64
[profile.asan-dev]
inherits = "dev"