Skip to main content

max / quasi

Let a cell carry a meter Node::Meter has no member of its own and can never get one: `meter` is a setting on Row, so the name is taken, which is the `token` collision exactly. That is what made goingson's task list reach for a hand-written Cell for its progress column. Cell::meter is Row::meter on the other container and is a setting for its reason, since a proportion is a fact about the thing the cell is in rather than a leaf beside its text. quasi-router 0.101.13. An addition, so consumers pinning 0.101 are owed no forward fix; the MNW server checks clean against it.
Author: Max Johnson <me@maxj.phd> · 2026-09-04 18:27 UTC
Signed with PGP, not checked
Commit: 8f90ec4247ab1abf7a42db9ec602de526d42ec86
Parent: 79b7b85
3 files changed, +24 insertions, -10 deletions
M Cargo.lock +9 -9
@@ -3563,7 +3563,7 @@
3563 3563
3564 3564 [[package]]
3565 3565 name = "quasi-router"
3566 - version = "0.101.12"
3566 + version = "0.101.13"
3567 3567 dependencies = [
3568 3568 "makeover-layout",
3569 3569 ]
@@ -6279,14 +6279,6 @@
6279 6279 "winnow 1.0.4",
6280 6280 ]
6281 6281
6282 - [[patch.unused]]
6283 - name = "quasi-type"
6284 - version = "0.1.3"
6285 -
6286 - [[patch.unused]]
6287 - name = "synckit-client"
6288 - version = "0.10.0"
6289 -
6290 6282 [[patch.unused]]
6291 6283 name = "kberg"
6292 6284 version = "0.1.0"
@@ -6302,3 +6294,11 @@
6302 6294 [[patch.unused]]
6303 6295 name = "tagtree"
6304 6296 version = "0.4.1"
6297 +
6298 + [[patch.unused]]
6299 + name = "synckit-client"
6300 + version = "0.10.0"
6301 +
6302 + [[patch.unused]]
6303 + name = "quasi-type"
6304 + version = "0.1.3"
@@ -1,6 +1,6 @@
1 1 [package]
2 2 name = "quasi-router"
3 - version = "0.101.12"
3 + version = "0.101.13"
4 4 description = "Host-agnostic router: a request in, a renderer-agnostic description out"
5 5 edition.workspace = true
6 6 rust-version.workspace = true
@@ -6953,6 +6953,20 @@
6953 6953 self
6954 6954 }
6955 6955
6956 + /// How much of a set this cell's row is through, chaining.
6957 + ///
6958 + /// [`Row::meter`]'s counterpart on the other container, and it is a setting
6959 + /// for that one's reason: a proportion is a fact about the thing the cell is
6960 + /// in rather than a leaf beside its text. `Node::Meter` has no member of its
6961 + /// own and cannot get one -- `meter` is a setting here and on `Row`, so the
6962 + /// name is taken -- which is what made a table's progress column reach for a
6963 + /// supplier before this existed. goingson's task list is the site.
6964 + #[must_use]
6965 + pub fn meter(mut self, meter: Meter) -> Self {
6966 + self.parts.push(Node::Meter(meter));
6967 + self
6968 + }
6969 +
6956 6970 /// Where this cell's value goes.
6957 6971 ///
6958 6972 /// The value becomes the link. A cell with no value and an `activate` is a