Skip to main content

max / makenotwork

server: take quasi 0.45 and makeover-webview 0.53 Filling gained control_attrs, so rich_field names it. The dead-vocabulary seal rises 34 to 37 for the three classes a suggestion list is drawn with: discover's search box and its tag typeahead are the two sites Field::suggests was designed against, and both are still bare inputs driven from page-discover.js. It tightens when they port, which is B7.
Co-Authored-By
Claude Opus 5 (1M context) <noreply@anthropic.com>
Author: Max Johnson <me@maxj.phd> · 2026-08-21 14:12 UTC
Signed with PGP, not checked
Commit: 24c1f7532398d85682d9d14f088a5c1049ddd49f
Parent: 052fd38
4 files changed, +45 insertions, -31 deletions
M server/Cargo.lock +25 -25
@@ -2865,7 +2865,7 @@
2865 2865 checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb"
2866 2866 dependencies = [
2867 2867 "libc",
2868 - "windows-sys 0.52.0",
2868 + "windows-sys 0.61.2",
2869 2869 ]
2870 2870
2871 2871 [[package]]
@@ -3650,7 +3650,7 @@
3650 3650 checksum = "1a791e6620676a875f362f3156ed213e73ca099a09bf992c18812abe65cc37b1"
3651 3651 dependencies = [
3652 3652 "bstr",
3653 - "hashbrown 0.15.5",
3653 + "hashbrown 0.17.1",
3654 3654 ]
3655 3655
3656 3656 [[package]]
@@ -5408,7 +5408,7 @@
5408 5408
5409 5409 [[package]]
5410 5410 name = "makeover-webview"
5411 - version = "0.52.0"
5411 + version = "0.53.0"
5412 5412 dependencies = [
5413 5413 "makeover-geometry",
5414 5414 "makeover-layout",
@@ -6609,7 +6609,7 @@
6609 6609
6610 6610 [[package]]
6611 6611 name = "quasi-axum"
6612 - version = "0.44.0"
6612 + version = "0.45.0"
6613 6613 dependencies = [
6614 6614 "axum",
6615 6615 "http 1.4.2",
@@ -6620,7 +6620,7 @@
6620 6620
6621 6621 [[package]]
6622 6622 name = "quasi-basics"
6623 - version = "0.44.0"
6623 + version = "0.45.0"
6624 6624 dependencies = [
6625 6625 "makeover-layout",
6626 6626 "quasi-router",
@@ -6628,7 +6628,7 @@
6628 6628
6629 6629 [[package]]
6630 6630 name = "quasi-http"
6631 - version = "0.44.0"
6631 + version = "0.45.0"
6632 6632 dependencies = [
6633 6633 "form_urlencoded",
6634 6634 "http 1.4.2",
@@ -6637,7 +6637,7 @@
6637 6637
6638 6638 [[package]]
6639 6639 name = "quasi-router"
6640 - version = "0.44.0"
6640 + version = "0.45.0"
6641 6641 dependencies = [
6642 6642 "makeover-layout",
6643 6643 ]
@@ -6660,7 +6660,7 @@
6660 6660
6661 6661 [[package]]
6662 6662 name = "quasi-webview"
6663 - version = "0.44.0"
6663 + version = "0.45.0"
6664 6664 dependencies = [
6665 6665 "docengine",
6666 6666 "makeover-layout",
@@ -6736,7 +6736,7 @@
6736 6736 "once_cell",
6737 6737 "socket2",
6738 6738 "tracing",
6739 - "windows-sys 0.52.0",
6739 + "windows-sys 0.59.0",
6740 6740 ]
6741 6741
6742 6742 [[package]]
@@ -7299,7 +7299,7 @@
7299 7299 "errno",
7300 7300 "libc",
7301 7301 "linux-raw-sys 0.4.15",
7302 - "windows-sys 0.52.0",
7302 + "windows-sys 0.59.0",
7303 7303 ]
7304 7304
7305 7305 [[package]]
@@ -7312,7 +7312,7 @@
7312 7312 "errno",
7313 7313 "libc",
7314 7314 "linux-raw-sys 0.12.1",
7315 - "windows-sys 0.52.0",
7315 + "windows-sys 0.61.2",
7316 7316 ]
7317 7317
7318 7318 [[package]]
@@ -7392,7 +7392,7 @@
7392 7392 "security-framework 3.7.0",
7393 7393 "security-framework-sys",
7394 7394 "webpki-root-certs",
7395 - "windows-sys 0.52.0",
7395 + "windows-sys 0.61.2",
7396 7396 ]
7397 7397
7398 7398 [[package]]
@@ -8518,7 +8518,7 @@
8518 8518 "getrandom 0.4.3",
8519 8519 "once_cell",
8520 8520 "rustix 1.1.4",
8521 - "windows-sys 0.52.0",
8521 + "windows-sys 0.61.2",
8522 8522 ]
8523 8523
8524 8524 [[package]]
@@ -9944,7 +9944,7 @@
9944 9944 source = "registry+https://github.com/rust-lang/crates.io-index"
9945 9945 checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22"
9946 9946 dependencies = [
9947 - "windows-sys 0.48.0",
9947 + "windows-sys 0.61.2",
9948 9948 ]
9949 9949
9950 9950 [[package]]
@@ -10732,14 +10732,6 @@
10732 10732 "pkg-config",
10733 10733 ]
10734 10734
10735 - [[patch.unused]]
10736 - name = "synckit-client"
10737 - version = "0.8.0"
10738 -
10739 - [[patch.unused]]
10740 - name = "synckit-config"
10741 - version = "0.2.0"
10742 -
10743 10735 [[patch.unused]]
10744 10736 name = "makeover-immediate"
10745 10737 version = "0.30.0"
@@ -10762,11 +10754,11 @@
10762 10754
10763 10755 [[patch.unused]]
10764 10756 name = "quasi-immediate"
10765 - version = "0.44.0"
10757 + version = "0.45.0"
10766 10758
10767 10759 [[patch.unused]]
10768 10760 name = "quasi-notifs"
10769 - version = "0.44.0"
10761 + version = "0.45.0"
10770 10762
10771 10763 [[patch.unused]]
10772 10764 name = "quasi-store"
@@ -10774,4 +10766,12 @@
10774 10766
10775 10767 [[patch.unused]]
10776 10768 name = "quasi-tauri"
10777 - version = "0.44.0"
10769 + version = "0.45.0"
10770 +
10771 + [[patch.unused]]
10772 + name = "synckit-client"
10773 + version = "0.8.0"
10774 +
10775 + [[patch.unused]]
10776 + name = "synckit-config"
10777 + version = "0.2.0"
@@ -157,7 +157,7 @@
157 157 # through quasi beside its Askama equivalent, so the cost of describing a screen
158 158 # here is measured rather than argued. Not load-bearing for any shipped route.
159 159 # See wiki look-wave-2, tier G.
160 - quasi-router = { git = "https://makenot.work/git/max/quasi.git", version = "0.44" }
160 + quasi-router = { git = "https://makenot.work/git/max/quasi.git", version = "0.45" }
161 161 # The description vocabulary quasi's screen types are built from. Pinned here
162 162 # rather than reached through quasi-router's re-export because a described
163 163 # screen names FieldKind and Tone directly; it has to track what quasi-router
@@ -169,17 +169,17 @@
169 169 # through quasi-webview for makeover-layout's reason: two `form::` paths from
170 170 # two resolutions are two crates, and the `data-format="markdown"` rules in
171 171 # `static/layout.css` are generated from this one.
172 - makeover-webview = "0.52.0"
172 + makeover-webview = "0.53.0"
173 173 # For the request head the per-viewer state factory reads. axum re-exports it,
174 174 # but the factory's signature is quasi-axum's and names `http::request::Parts`.
175 175 http = "1.3.1"
176 - quasi-axum = { git = "https://makenot.work/git/max/quasi.git", version = "0.44" }
177 - quasi-webview = { git = "https://makenot.work/git/max/quasi.git", version = "0.44" }
176 + quasi-axum = { git = "https://makenot.work/git/max/quasi.git", version = "0.45" }
177 + quasi-webview = { git = "https://makenot.work/git/max/quasi.git", version = "0.45" }
178 178 # The first-party widget set. The carousel was proved here against three pages
179 179 # and then moved there; what is left in `quasi/widgets/carousel.rs` is the
180 180 # Askama glue. Not `makeover-basics`: a widget is an assembly of `Node`s, so it
181 181 # sits above quasi-router rather than inside the description suite.
182 - quasi-basics = { git = "https://makenot.work/git/max/quasi.git", version = "0.44" }
182 + quasi-basics = { git = "https://makenot.work/git/max/quasi.git", version = "0.45" }
183 183
184 184 # Git source browser
185 185 gix = { version = "0.86", default-features = false, features = ["blame", "mailmap", "revision", "sha1", "max-performance-safe"] }
M server/build.rs +11 -1
@@ -427,7 +427,17 @@
427 427 /// Write/Preview pair hand-written and `partial-item-text-editor.js` renders
428 428 /// the preview, and the renderer emitting the same shape is what those four
429 429 /// section editors convert onto. It tightens when they port, not before.
430 - const DEAD_VOCABULARY_HIGH_WATER: usize = 34;
430 + /// 34 to 37 on the quasi 0.45.0 / makeover-webview 0.53.0 bump: a field's
431 + /// suggestion list. `Field::suggests` (`71852b16`) gave a field the list of
432 + /// candidates it owns, and the three classes it is drawn with are
433 + /// `.form-suggestions`, `.form-suggestion` and `.form-suggestion-why`. The
434 + /// denominator went 69 to 72 and all three land here.
435 + ///
436 + /// The facet case a third time, and this repo is the reason for these too:
437 + /// discover's search box and its tag typeahead are the two measured sites the
438 + /// member was designed against, and both are still bare inputs driven from
439 + /// `page-discover.js`. It tightens when they port, which is B7, not before.
440 + const DEAD_VOCABULARY_HIGH_WATER: usize = 37;
431 441
432 442 /// Every file that can carry a class name.
433 443 ///
@@ -87,6 +87,10 @@
87 87 let filling = Filling {
88 88 value: Value::Text(value),
89 89 trailing: None,
90 + // Nothing of this host's own goes on the control. The seam exists for a
91 + // fact the description does not carry, and quasi's suggestion source is
92 + // the one caller there is.
93 + control_attrs: None,
90 94 id_prefix: Some(prefix),
91 95 };
92 96