Skip to main content

max / alloy_tui

2.8 KB · 66 lines History Blame Raw
1 [package]
2 name = "alloy_tui"
3 version = "15.0.0"
4 description = "Alloy design system: makeover intents rendered as ratatui Color/Style, plus themed widgets for the alloy console and siblings."
5 edition = "2024"
6 # 1.88 is ratatui 0.30.2's floor, and 0.30.2 is where `Block::shadow` lands.
7 rust-version = "1.88"
8 license = "MIT"
9 repository = "https://makenot.work/git/max/alloy_tui"
10 exclude = ["scripts/", "dist/", "bento.toml", ".githooks/"]
11 authors = ["Max Johnson <me@maxj.phd>"]
12
13 [dependencies]
14 ratatui = "0.30"
15 # 2.2.0 is the release carrying the bevel intents and the 256-color palette,
16 # both of which this crate resolves at load. A [patch.crates-io] stanza stood
17 # here while they were unpublished; it is gone, and so is the last reason this
18 # crate could not be published from a clean checkout.
19 makeover = "3.0"
20 makeover-geometry = "0.7"
21 # The family's terminal renderer, which owns the bevel painting, the fill, and
22 # the reading of what the terminal can show. 0.4.0 and not 0.3.0 because the
23 # half-block glyphs are what makes delegating here an improvement rather than a
24 # downgrade: 0.3.0 draws box-drawing, which is a line and not a lit edge. 0.4.1
25 # because this crate quantises a whole theme off `Fidelity::detect`, and before
26 # that release an unrecognised TERM answered Ansi16, which cost a heavier frame
27 # when the renderer was the only consumer and costs a flattened theme now.
28 #
29 # Pinned exactly, and moved in lockstep with the renderer: a 0.x minor is a
30 # semver boundary, so a stale pin here holds the whole console on an old
31 # renderer rather than resolving forward. `Fidelity` and `Theme` are re-exported
32 # from this crate, so the renderer's public types are part of ours.
33 makeover-tui = { version = "0.44", features = ["theme"] }
34
35 [lints.rust]
36 unused = "warn"
37 unreachable_pub = "warn"
38
39 [lints.clippy]
40 pedantic = { level = "warn", priority = -1 }
41 # Allow-list tuned from a measured breakdown across server/multithreaded/pter
42 # (2026-07-22). These are the high-churn / low-signal pedantic lints; everything
43 # else in `pedantic` stays a warning. Keep this block identical across repos.
44 module_name_repetitions = "allow"
45 # Doc lints. No docs-completeness push is underway.
46 missing_errors_doc = "allow"
47 missing_panics_doc = "allow"
48 doc_markdown = "allow"
49 # Numeric casts. Endemic and mostly intentional in size and byte math.
50 cast_possible_truncation = "allow"
51 cast_sign_loss = "allow"
52 cast_precision_loss = "allow"
53 cast_possible_wrap = "allow"
54 cast_lossless = "allow"
55 # Subjective structure and style nags. High churn, low signal.
56 must_use_candidate = "allow"
57 too_many_lines = "allow"
58 struct_excessive_bools = "allow"
59 similar_names = "allow"
60 items_after_statements = "allow"
61 single_match_else = "allow"
62 # Frequent false-positives in TUI and router-heavy code.
63 match_same_arms = "allow"
64 unnecessary_wraps = "allow"
65 type_complexity = "allow"
66