-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCargo.toml
More file actions
103 lines (92 loc) · 2.71 KB
/
Cargo.toml
File metadata and controls
103 lines (92 loc) · 2.71 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
102
103
[package]
name = "factorio-sensei"
version = "0.1.4"
edition = "2021"
description = "AI coaching copilot for Factorio 2.x — connects to your live game via RCON and gives real-time advice powered by Claude"
license = "MIT"
repository = "https://github.com/alloc33/factorio-sensei"
homepage = "https://github.com/alloc33/factorio-sensei"
keywords = ["factorio", "ai", "coaching", "rcon", "claude"]
categories = ["games", "command-line-utilities"]
readme = "README.md"
[dependencies]
factorio-rcon = "0.1"
rig-core = "0.30"
tokio = { version = "1", features = ["rt-multi-thread", "macros", "sync", "time"] }
serde = { version = "1", features = ["derive"] }
serde_json = "1"
thiserror = "2"
tracing = "0.1"
anyhow = "1"
dirs = "6"
dotenvy = "0.15"
reedline = "0.45"
clap = { version = "4", features = ["derive", "env"] }
indicatif = "0.18"
termimad = "0.34"
[lints.rust]
unused_imports = "deny"
unused_variables = "warn"
unreachable_code = "warn"
unreachable_patterns = "warn"
[lints.clippy]
# ── Use Self, not MyStruct ──
use_self = "warn"
# ── Idiomatic match/if-let ──
collapsible_match = "deny"
single_match = "deny"
single_match_else = "warn"
match_like_matches_macro = "deny"
manual_unwrap_or = "deny"
manual_unwrap_or_default = "deny"
manual_let_else = "warn"
redundant_pattern_matching = "deny"
if_same_then_else = "deny"
option_if_let_else = "warn"
if_not_else = "warn"
match_same_arms = "warn"
match_wildcard_for_single_variants = "warn"
unnested_or_patterns = "warn"
equatable_if_let = "warn"
# ── Idiomatic iterators & closures ──
redundant_closure_for_method_calls = "warn"
redundant_closure = "deny"
map_flatten = "deny"
manual_clamp = "deny"
iter_on_single_items = "warn"
cloned_instead_of_copied = "warn"
flat_map_option = "warn"
implicit_clone = "warn"
explicit_iter_loop = "warn"
needless_for_each = "warn"
map_unwrap_or = "warn"
# ── Modern Rust style ──
uninlined_format_args = "deny"
needless_raw_string_hashes = "deny"
manual_string_new = "deny"
redundant_else = "deny"
semicolon_if_nothing_returned = "warn"
unreadable_literal = "warn"
bool_to_int_with_if = "warn"
default_trait_access = "warn"
cast_lossless = "warn"
# ── Avoid unnecessary work ──
or_fun_call = "deny"
needless_pass_by_value = "warn"
needless_update = "deny"
unnecessary_unwrap = "deny"
useless_let_if_seq = "deny"
zero_prefixed_literal = "deny"
# ── const correctness ──
missing_const_for_fn = "warn"
# ── Correctness / safety ──
significant_drop_tightening = "warn"
# ── Complexity signals ──
cognitive_complexity = "warn"
too_many_arguments = "warn"
type_complexity = "warn"
result_large_err = "warn"
too_many_lines = "warn"
[dev-dependencies]
tokio = { version = "1", features = ["full"] }
tempfile = "3"