-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathclippy.toml
More file actions
41 lines (33 loc) · 1.6 KB
/
Copy pathclippy.toml
File metadata and controls
41 lines (33 loc) · 1.6 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
# Strict style for acronyms (SDR, FFT, IQ, CRC, etc. must remain uppercase)
upper-case-acronyms-aggressive = true
# Do not block changes in the public API (project is pre-0.1, API is evolving rapidly)
avoid-breaking-exported-api = false
# Warn when a function returning a meaningful value is not annotated with #[must_use].
# This catches missing annotations on Result / Option / custom types.
warn-on-all-wildcard-imports = false
# Forbidden methods
# Unsafe functions from the `time` crate (RUSTSEC-2020-0071)
[[disallowed-methods]]
path = "time::now"
allow-invalid = true
reason = "time::now небезопасен (RUSTSEC-2020-0071) — используйте std::time::Instant."
[[disallowed-methods]]
path = "time::at"
allow-invalid = true
reason = "time::at небезопасен (RUSTSEC-2020-0071) — используйте std::time::SystemTime."
[[disallowed-methods]]
path = "time::at_utc"
allow-invalid = true
reason = "time::at_utc небезопасен (RUSTSEC-2020-0071)."
# transmute breaks the type system
[[disallowed-methods]]
path = "std::mem::transmute"
reason = "transmute опасен — используйте безопасные конверсии (From/Into/bytemuck)."
# Forbidden types
# Do not use std::sync::Mutex for IQ data in hot paths
[[disallowed-types]]
path = "std::sync::Mutex"
reason = "В hot-path (IQ pipeline) используйте parking_lot::Mutex или crossbeam."
# Allowed exceptions
# std::thread::Builder::spawn is allowed — SDR pipeline requires explicit threading
# (recorder, replayer, analyzer are all multi-threaded)