-
Notifications
You must be signed in to change notification settings - Fork 10
Expand file tree
/
Copy pathCargo.toml
More file actions
77 lines (71 loc) · 2.46 KB
/
Copy pathCargo.toml
File metadata and controls
77 lines (71 loc) · 2.46 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
#
# Copyright © 2021-2026 Mergify SAS
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
[workspace]
resolver = "3"
members = ["crates/*"]
[workspace.package]
edition = "2024"
# MSRV: minimum supported toolchain. 1.88 is the floor — the code
# uses let-chains (`if let Some(x) = … && cond`), stabilized in Rust
# 1.88. The msrv CI job pins this exact version; move both together.
rust-version = "1.88"
license = "Apache-2.0"
repository = "https://github.com/Mergifyio/mergify-cli"
authors = ["Mergify Team <hello@mergify.com>"]
[workspace.dependencies]
anstyle = "1"
chrono = { version = "0.4", default-features = false, features = ["clock", "serde", "std"] }
clap = { version = "4.5", features = ["derive", "env"] }
clap_complete = "4.5"
clap_mangen = "0.3"
flate2 = "1"
getrandom = "0.4"
glob = "0.3"
globset = "0.4"
iana-time-zone = "0.1"
jsonschema = { version = "0.46", default-features = false }
opentelemetry-proto = { version = "0.32", default-features = false, features = ["gen-tonic-messages", "trace"] }
prost = "0.14"
quick-xml = "0.40"
regex = "1"
reqwest = { version = "0.13", default-features = false, features = ["rustls", "json"] }
self-replace = "1"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
serde_yaml_ng = "0.10"
sha2 = "0.11"
tempfile = "3.14"
terminal_size = "0.4"
thiserror = "2.0"
# tokio: rt-multi-thread is intentionally NOT here — it is added only
# in the dev-dependency entries that need it, so the shipped binary's
# single current-thread runtime never pulls in the MT scheduler.
tokio = { version = "1", default-features = false, features = ["macros", "rt", "time"] }
tracing = "0.1"
tracing-subscriber = { version = "0.3", default-features = false, features = ["fmt", "env-filter", "ansi"] }
unicode-width = "0.2"
url = "2"
insta = { version = "1", features = ["json", "redactions"] }
temp-env = "0.3"
wiremock = "0.6"
[workspace.lints.rust]
unsafe_code = "forbid"
[workspace.lints.clippy]
all = { level = "warn", priority = -1 }
pedantic = { level = "warn", priority = -1 }
# Allow-list: pedantic rules that fire too aggressively for a CLI.
# Keep this list intentional and short; revisit per-PR as we learn.
module_name_repetitions = "allow"
missing_errors_doc = "allow"
missing_panics_doc = "allow"
[profile.release]
lto = "thin"
codegen-units = 1
strip = "symbols"