-
Notifications
You must be signed in to change notification settings - Fork 156
Expand file tree
/
Copy pathclippy.toml
More file actions
90 lines (88 loc) · 8.98 KB
/
Copy pathclippy.toml
File metadata and controls
90 lines (88 loc) · 8.98 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
# The execution boundary must use celld::asyncrt. Modules outside that boundary
# carry an explicit lint allow.
disallowed-methods = [
{ path = "tokio::spawn", reason = "use celld::asyncrt::spawn inside the execution boundary" },
{ path = "tokio::runtime::Handle::spawn", reason = "use celld::asyncrt::spawn inside the execution boundary" },
{ path = "tokio::task::spawn_blocking", reason = "use celld::asyncrt::blocking inside the execution boundary" },
{ path = "tokio::runtime::Handle::spawn_blocking", reason = "use celld::asyncrt::blocking inside the execution boundary" },
{ path = "tokio::time::sleep", reason = "use celld::asyncrt::sleep inside the execution boundary" },
{ path = "tokio::time::sleep_until", reason = "use celld::asyncrt::sleep_until inside the execution boundary" },
{ path = "tokio::time::timeout", reason = "use celld::asyncrt::timeout inside the execution boundary" },
{ path = "tokio::time::timeout_at", reason = "use celld::asyncrt::timeout_at inside the execution boundary" },
{ path = "tokio::time::interval", reason = "use celld::asyncrt::interval inside the execution boundary" },
{ path = "tokio::time::interval_at", reason = "use celld::asyncrt::interval_at inside the execution boundary" },
{ path = "std::time::SystemTime::now", reason = "use the execution-domain wall clock inside the execution boundary" },
{ path = "std::time::Instant::now", reason = "use the execution-domain monotonic clock inside the execution boundary" },
{ path = "rand::random", reason = "use a labeled execution-domain RNG inside the execution boundary" },
{ path = "std::process::id", reason = "use the execution-domain process tag inside the execution boundary" },
{ path = "std::fs::read", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "std::fs::read_to_string", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "std::fs::read_dir", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "std::fs::metadata", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "std::fs::symlink_metadata", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "std::fs::canonicalize", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "std::fs::copy", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "std::fs::exists", reason = "use injected filesystem metadata for celld node storage" },
{ path = "std::fs::hard_link", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "std::fs::read_link", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "std::fs::File::create", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "std::fs::File::open", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "std::fs::File::options", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "std::fs::File::sync_all", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "std::fs::File::sync_data", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "std::fs::OpenOptions::new", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "std::fs::OpenOptions::open", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "std::fs::write", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "std::fs::rename", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "std::fs::remove_file", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "std::fs::remove_dir", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "std::fs::remove_dir_all", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "std::fs::create_dir", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "std::fs::create_dir_all", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "std::fs::set_permissions", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "std::path::Path::exists", reason = "use injected filesystem metadata for celld node storage" },
{ path = "std::path::Path::try_exists", reason = "use injected filesystem metadata for celld node storage" },
{ path = "std::path::Path::is_file", reason = "use injected filesystem metadata for celld node storage" },
{ path = "std::path::Path::is_dir", reason = "use injected filesystem metadata for celld node storage" },
{ path = "std::path::Path::is_symlink", reason = "use injected filesystem metadata for celld node storage" },
{ path = "std::path::Path::metadata", reason = "use injected filesystem metadata for celld node storage" },
{ path = "std::path::Path::symlink_metadata", reason = "use injected filesystem metadata for celld node storage" },
{ path = "std::path::Path::canonicalize", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "std::path::Path::read_link", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "std::path::Path::read_dir", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "tokio::fs::read", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "tokio::fs::read_dir", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "tokio::fs::read_to_string", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "tokio::fs::metadata", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "tokio::fs::symlink_metadata", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "tokio::fs::canonicalize", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "tokio::fs::copy", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "tokio::fs::try_exists", reason = "use injected filesystem metadata for celld node storage" },
{ path = "tokio::fs::hard_link", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "tokio::fs::read_link", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "tokio::fs::File::create", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "tokio::fs::File::open", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "tokio::fs::File::sync_all", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "tokio::fs::File::sync_data", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "tokio::fs::OpenOptions::new", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "tokio::fs::OpenOptions::open", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "tokio::fs::write", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "tokio::fs::rename", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "tokio::fs::remove_file", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "tokio::fs::remove_dir", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "tokio::fs::remove_dir_all", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "tokio::fs::create_dir", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "tokio::fs::create_dir_all", reason = "use the injected whole-node filesystem for celld node storage" },
{ path = "tokio::fs::set_permissions", reason = "use the injected whole-node filesystem for celld node storage" },
]
# The celld and celld-ltx packages forbid these macros, so no module can lower
# this policy. Clippy resolves imported and aliased macro calls in every
# target that Cargo compiles for these packages.
disallowed-macros = [
{ path = "tokio::select", reason = "use celld::asyncrt::select! for fair polling or select_biased! with a site reason for source-order priority; production uses a process-seeded cyclic start, and simulation uses Domain-derived ordering" },
{ path = "std::println", reason = "use celld::cli_output::Output for celld stdout data and note! for human-readable stderr messages" },
{ path = "std::print", reason = "use celld::cli_output::Output for celld stdout data and note! for human-readable stderr messages" },
]
disallowed-types = [
{ path = "rand::rngs::OsRng", reason = "use a labeled execution-domain RNG inside the execution boundary" },
]