Skip to main content

max / goingson

Take makeover-layout 0.28.0 and the suite that moved with it Range and Choice::unavailable arrive; nothing here asks for either yet, so the form spec passes step: None until the runtime form model carries one.
Author: Max Johnson <me@maxj.phd> · 2026-08-17 19:01 UTC
Commit: c106dcb45e78c82e5cb3546c5ece137ae5c3b9b6
Parent: 675e880
5 files changed, +64 insertions, -38 deletions
M Cargo.lock +23 -23
@@ -3389,9 +3389,9 @@
3389 3389
3390 3390 [[package]]
3391 3391 name = "makeover"
3392 - version = "2.5.1"
3392 + version = "2.8.0"
3393 3393 source = "registry+https://github.com/rust-lang/crates.io-index"
3394 - checksum = "556c88d4ad0f25579e984dc5c9d86429a9c4d70a8b811253d4e807556b514311"
3394 + checksum = "39b782e6e693c5134b50949f8c3407bb7d24a77b7f628281b0490c6380d65151"
3395 3395 dependencies = [
3396 3396 "include_dir",
3397 3397 "serde",
@@ -3400,9 +3400,9 @@
3400 3400
3401 3401 [[package]]
3402 3402 name = "makeover-build"
3403 - version = "0.39.0"
3403 + version = "0.41.0"
3404 3404 source = "registry+https://github.com/rust-lang/crates.io-index"
3405 - checksum = "52baae176ab62ac8d79238301be5dc112f1615630f647ab1465b57b5872edee0"
3405 + checksum = "12050a224c62044ec8ba0a1b5b64cac7559e24f9e07714a5b826b6b68f7010cd"
3406 3406 dependencies = [
3407 3407 "makeover",
3408 3408 "makeover-geometry",
@@ -3417,15 +3417,11 @@
3417 3417
3418 3418 [[package]]
3419 3419 name = "makeover-layout"
3420 - version = "0.27.5"
3421 - source = "registry+https://github.com/rust-lang/crates.io-index"
3422 - checksum = "ed4a0a89e118db1cc010c72e696741b3701c83bfe6bec5db06e29515b4c1d216"
3420 + version = "0.28.0"
3423 3421
3424 3422 [[package]]
3425 3423 name = "makeover-touch"
3426 - version = "0.19.0"
3427 - source = "registry+https://github.com/rust-lang/crates.io-index"
3428 - checksum = "c09c064316da4e4d403dd09bd0617b25033b2503cba539c02b4b5b857435c089"
3424 + version = "0.20.0"
3429 3425 dependencies = [
3430 3426 "makeover-geometry",
3431 3427 "makeover-layout",
@@ -3433,9 +3429,7 @@
3433 3429
3434 3430 [[package]]
3435 3431 name = "makeover-tui"
3436 - version = "0.26.0"
3437 - source = "registry+https://github.com/rust-lang/crates.io-index"
3438 - checksum = "4f53b048e40476d8b7ac0570ee656d897c0e3143e2c4be171ed44071b1b3712c"
3432 + version = "0.27.0"
3439 3433 dependencies = [
3440 3434 "makeover",
3441 3435 "makeover-layout",
@@ -3444,9 +3438,7 @@
3444 3438
3445 3439 [[package]]
3446 3440 name = "makeover-webview"
3447 - version = "0.46.0"
3448 - source = "registry+https://github.com/rust-lang/crates.io-index"
3449 - checksum = "8389b1ddc25547f992d51334f19a5391c9a8fc36968b5aa02da9da283100b7fc"
3441 + version = "0.47.0"
3450 3442 dependencies = [
3451 3443 "makeover-geometry",
3452 3444 "makeover-layout",
@@ -4653,7 +4645,7 @@
4653 4645
4654 4646 [[package]]
4655 4647 name = "quasi-http"
4656 - version = "0.18.0"
4648 + version = "0.19.0"
4657 4649 dependencies = [
4658 4650 "form_urlencoded",
4659 4651 "http",
@@ -4662,14 +4654,14 @@
4662 4654
4663 4655 [[package]]
4664 4656 name = "quasi-router"
4665 - version = "0.18.0"
4657 + version = "0.19.0"
4666 4658 dependencies = [
4667 4659 "makeover-layout",
4668 4660 ]
4669 4661
4670 4662 [[package]]
4671 4663 name = "quasi-tauri"
4672 - version = "0.18.0"
4664 + version = "0.19.0"
4673 4665 dependencies = [
4674 4666 "http",
4675 4667 "quasi-http",
@@ -4679,7 +4671,7 @@
4679 4671
4680 4672 [[package]]
4681 4673 name = "quasi-webview"
4682 - version = "0.18.0"
4674 + version = "0.19.0"
4683 4675 dependencies = [
4684 4676 "docengine",
4685 4677 "makeover-layout",
@@ -8365,20 +8357,28 @@
8365 8357
8366 8358 [[patch.unused]]
8367 8359 name = "quasi-axum"
8368 - version = "0.18.0"
8360 + version = "0.19.0"
8369 8361
8370 8362 [[patch.unused]]
8371 8363 name = "quasi-basics"
8372 - version = "0.18.0"
8364 + version = "0.19.0"
8373 8365
8374 8366 [[patch.unused]]
8375 8367 name = "quasi-immediate"
8376 - version = "0.18.0"
8368 + version = "0.19.0"
8377 8369
8378 8370 [[patch.unused]]
8379 8371 name = "quasi-store"
8380 8372 version = "0.1.0"
8381 8373
8374 + [[patch.unused]]
8375 + name = "quasi-type"
8376 + version = "0.1.0"
8377 +
8382 8378 [[patch.unused]]
8383 8379 name = "ops-status"
8384 8380 version = "0.1.0"
8381 +
8382 + [[patch.unused]]
8383 + name = "makeover-immediate"
8384 + version = "0.28.0"
M Cargo.toml +1 -1
@@ -105,7 +105,7 @@
105 105 notify = "8.2"
106 106 notify-debouncer-mini = "0.7"
107 107 makeover = "2.5"
108 - makeover-tui = "0.26.0"
108 + makeover-tui = "0.27.0"
109 109 toml = "1.1"
110 110
111 111 # Enums
@@ -18,12 +18,12 @@
18 18 # Materialises all three generated files: themes/, geometry.css, layout.css,
19 19 # and holds both drift checks this build.rs used to carry itself: touch density
20 20 # as of 0.17, breakpoints as of 0.18.
21 - makeover-build = "0.39.0"
21 + makeover-build = "0.41.0"
22 22 # The table CSS is generated here too: the columns are this app's, so the
23 23 # shared helper cannot know them, but the tracks and the narrowing rules come
24 24 # from the description rather than from hand-written nth-child cuts.
25 - makeover-webview = "0.46.0"
26 - makeover-layout = "0.27.5"
25 + makeover-webview = "0.47.0"
26 + makeover-layout = "0.28.0"
27 27 # Width. Direct rather than through makeover-webview, because the narrow table
28 28 # pass keys off SizeClass::Compact and a boundary reached transitively is a
29 29 # boundary nobody pinned.
@@ -32,7 +32,7 @@
32 32 # `quasi` feature. Optional here as well as below so a default build compiles
33 33 # neither: one `dep:` name covers both tables, which is what lets the feature
34 34 # gate the build script and the crate together.
35 - quasi-webview = { git = "https://makenot.work/git/max/quasi.git", version = "0.18", optional = true }
35 + quasi-webview = { git = "https://makenot.work/git/max/quasi.git", version = "0.19", optional = true }
36 36
37 37 [dependencies]
38 38 goingson-core = { workspace = true }
@@ -50,10 +50,10 @@
50 50 # dependency's source even with the feature off -- so a public clone could not
51 51 # build at all against a URL it could not reach. quasi went public that day and
52 52 # the URL moved here with it.
53 - quasi-router = { git = "https://makenot.work/git/max/quasi.git", version = "0.18", optional = true }
54 - quasi-http = { git = "https://makenot.work/git/max/quasi.git", version = "0.18", optional = true }
55 - quasi-webview = { git = "https://makenot.work/git/max/quasi.git", version = "0.18", optional = true }
56 - quasi-tauri = { git = "https://makenot.work/git/max/quasi.git", version = "0.18", optional = true }
53 + quasi-router = { git = "https://makenot.work/git/max/quasi.git", version = "0.19", optional = true }
54 + quasi-http = { git = "https://makenot.work/git/max/quasi.git", version = "0.19", optional = true }
55 + quasi-webview = { git = "https://makenot.work/git/max/quasi.git", version = "0.19", optional = true }
56 + quasi-tauri = { git = "https://makenot.work/git/max/quasi.git", version = "0.19", optional = true }
57 57
58 58 # Tauri
59 59 tauri = { workspace = true, features = ["image-png", "devtools"] }
@@ -118,8 +118,8 @@
118 118 # The forms emitter and the description it renders. Runtime deps, not build:
119 119 # form markup depends on the value, the error and the options at the moment a
120 120 # modal opens, so it cannot be materialised the way the stylesheet is.
121 - makeover-webview = "0.46.0"
122 - makeover-layout = "0.27.5"
121 + makeover-webview = "0.47.0"
122 + makeover-layout = "0.28.0"
123 123 # Browser opening
124 124 open = { workspace = true }
125 125
@@ -174,10 +174,7 @@
174 174 .as_deref()
175 175 .unwrap_or_default()
176 176 .iter()
177 - .map(|opt| Choice {
178 - value: &opt.value,
179 - label: opt.label.as_deref().unwrap_or(&opt.value),
180 - })
177 + .map(|opt| Choice::new(&opt.value, opt.label.as_deref().unwrap_or(&opt.value)))
181 178 .collect();
182 179
183 180 let field = Field {
@@ -200,6 +197,7 @@
200 197 max_length: None,
201 198 min: None,
202 199 max: None,
200 + step: None,
203 201 extended: spec.extended,
204 202 };
205 203
@@ -1,0 +1,28 @@
1 + /* Generated by makeover-build from makeover. Do not edit.
2 + Two needs, two names, then a system generic. The faces are cut by
3 + quasi-type from Atkinson Hyperlegible plus the house glyph set, and
4 + both are variable over wght 200-800 in one file, which is why the
5 + @font-face rules name the range. The mono face opens at ExtraLight.
6 + A third token here is this product's own brand face, declared as an
7 + override in its build script. */
8 +
9 + @font-face {
10 + font-family: "Quasi Mono";
11 + src: url("../fonts/QuasiMono.woff2") format("woff2");
12 + font-weight: 200 800;
13 + font-style: normal;
14 + font-display: swap;
15 + }
16 +
17 + @font-face {
18 + font-family: "Quasi Body";
19 + src: url("../fonts/QuasiBody.woff2") format("woff2");
20 + font-weight: 200 800;
21 + font-style: normal;
22 + font-display: swap;
23 + }
24 +
25 + :root {
26 + --font-mono: "Quasi Mono", monospace;
27 + --font-sans: "Quasi Body", sans-serif;
28 + }