max / goingson
- Co-Authored-By
- Claude Opus 5 (1M context) <noreply@anthropic.com>
- Claude-Session
- https://claude.ai/code/session_01P8ostB2UmZJGj5WjSHRSot
4 files changed,
+55 insertions,
-43 deletions
| @@ -1387,7 +1387,7 @@ | |||
| 1387 | 1387 | "libc", | |
| 1388 | 1388 | "option-ext", | |
| 1389 | 1389 | "redox_users", | |
| 1390 | - | "windows-sys 0.60.2", | |
| 1390 | + | "windows-sys 0.61.2", | |
| 1391 | 1391 | ] | |
| 1392 | 1392 | ||
| 1393 | 1393 | [[package]] | |
| @@ -1628,7 +1628,7 @@ | |||
| 1628 | 1628 | checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" | |
| 1629 | 1629 | dependencies = [ | |
| 1630 | 1630 | "libc", | |
| 1631 | - | "windows-sys 0.60.2", | |
| 1631 | + | "windows-sys 0.61.2", | |
| 1632 | 1632 | ] | |
| 1633 | 1633 | ||
| 1634 | 1634 | [[package]] | |
| @@ -3444,9 +3444,7 @@ | |||
| 3444 | 3444 | ||
| 3445 | 3445 | [[package]] | |
| 3446 | 3446 | name = "makeover-build" | |
| 3447 | - | version = "0.66.0" | |
| 3448 | - | source = "registry+https://github.com/rust-lang/crates.io-index" | |
| 3449 | - | checksum = "2f8840f2b76405ef33abf0a305f2bbb43cfbde1b3eb70e964e3c9a1260d3a1ea" | |
| 3447 | + | version = "0.67.0" | |
| 3450 | 3448 | dependencies = [ | |
| 3451 | 3449 | "makeover", | |
| 3452 | 3450 | "makeover-geometry", | |
| @@ -3499,9 +3497,7 @@ | |||
| 3499 | 3497 | ||
| 3500 | 3498 | [[package]] | |
| 3501 | 3499 | name = "makeover-webview" | |
| 3502 | - | version = "0.73.0" | |
| 3503 | - | source = "registry+https://github.com/rust-lang/crates.io-index" | |
| 3504 | - | checksum = "848a255b34e7edd66a10cdc8ae0e16319b22f7f96f2ad9bae3dc67b595f184a9" | |
| 3500 | + | version = "0.74.0" | |
| 3505 | 3501 | dependencies = [ | |
| 3506 | 3502 | "makeover-geometry", | |
| 3507 | 3503 | "makeover-layout", | |
| @@ -3650,7 +3646,7 @@ | |||
| 3650 | 3646 | "png 0.18.1", | |
| 3651 | 3647 | "serde", | |
| 3652 | 3648 | "thiserror 2.0.20", | |
| 3653 | - | "windows-sys 0.60.2", | |
| 3649 | + | "windows-sys 0.61.2", | |
| 3654 | 3650 | ] | |
| 3655 | 3651 | ||
| 3656 | 3652 | [[package]] | |
| @@ -3783,7 +3779,7 @@ | |||
| 3783 | 3779 | source = "registry+https://github.com/rust-lang/crates.io-index" | |
| 3784 | 3780 | checksum = "7957b9740744892f114936ab4a57b3f487491bbeafaf8083688b16841a4240e5" | |
| 3785 | 3781 | dependencies = [ | |
| 3786 | - | "windows-sys 0.60.2", | |
| 3782 | + | "windows-sys 0.61.2", | |
| 3787 | 3783 | ] | |
| 3788 | 3784 | ||
| 3789 | 3785 | [[package]] | |
| @@ -4717,16 +4713,17 @@ | |||
| 4717 | 4713 | ||
| 4718 | 4714 | [[package]] | |
| 4719 | 4715 | name = "quasi-declare" | |
| 4720 | - | version = "0.1.0" | |
| 4716 | + | version = "0.1.10" | |
| 4721 | 4717 | dependencies = [ | |
| 4722 | 4718 | "proc-macro2", | |
| 4723 | 4719 | "quote", | |
| 4724 | 4720 | "syn 2.0.119", | |
| 4721 | + | "toml 1.1.4+spec-1.1.0", | |
| 4725 | 4722 | ] | |
| 4726 | 4723 | ||
| 4727 | 4724 | [[package]] | |
| 4728 | 4725 | name = "quasi-http" | |
| 4729 | - | version = "0.101.1" | |
| 4726 | + | version = "0.102.0" | |
| 4730 | 4727 | dependencies = [ | |
| 4731 | 4728 | "form_urlencoded", | |
| 4732 | 4729 | "http", | |
| @@ -4735,7 +4732,7 @@ | |||
| 4735 | 4732 | ||
| 4736 | 4733 | [[package]] | |
| 4737 | 4734 | name = "quasi-notifs" | |
| 4738 | - | version = "0.101.2" | |
| 4735 | + | version = "0.102.0" | |
| 4739 | 4736 | dependencies = [ | |
| 4740 | 4737 | "quasi-router", | |
| 4741 | 4738 | "synckit-config", | |
| @@ -4745,14 +4742,14 @@ | |||
| 4745 | 4742 | ||
| 4746 | 4743 | [[package]] | |
| 4747 | 4744 | name = "quasi-router" | |
| 4748 | - | version = "0.101.13" | |
| 4745 | + | version = "0.102.0" | |
| 4749 | 4746 | dependencies = [ | |
| 4750 | 4747 | "makeover-layout", | |
| 4751 | 4748 | ] | |
| 4752 | 4749 | ||
| 4753 | 4750 | [[package]] | |
| 4754 | 4751 | name = "quasi-tauri" | |
| 4755 | - | version = "0.101.1" | |
| 4752 | + | version = "0.102.0" | |
| 4756 | 4753 | dependencies = [ | |
| 4757 | 4754 | "http", | |
| 4758 | 4755 | "quasi-http", | |
| @@ -4778,7 +4775,7 @@ | |||
| 4778 | 4775 | ||
| 4779 | 4776 | [[package]] | |
| 4780 | 4777 | name = "quasi-webview" | |
| 4781 | - | version = "0.101.1" | |
| 4778 | + | version = "0.102.0" | |
| 4782 | 4779 | dependencies = [ | |
| 4783 | 4780 | "docengine", | |
| 4784 | 4781 | "makeover-layout", | |
| @@ -5217,7 +5214,7 @@ | |||
| 5217 | 5214 | "errno", | |
| 5218 | 5215 | "libc", | |
| 5219 | 5216 | "linux-raw-sys", | |
| 5220 | - | "windows-sys 0.60.2", | |
| 5217 | + | "windows-sys 0.61.2", | |
| 5221 | 5218 | ] | |
| 5222 | 5219 | ||
| 5223 | 5220 | [[package]] | |
| @@ -5274,7 +5271,7 @@ | |||
| 5274 | 5271 | "security-framework", | |
| 5275 | 5272 | "security-framework-sys", | |
| 5276 | 5273 | "webpki-root-certs", | |
| 5277 | - | "windows-sys 0.60.2", | |
| 5274 | + | "windows-sys 0.61.2", | |
| 5278 | 5275 | ] | |
| 5279 | 5276 | ||
| 5280 | 5277 | [[package]] | |
| @@ -5814,7 +5811,7 @@ | |||
| 5814 | 5811 | checksum = "c3d1e2c7f27f8d4cb10542a02c49005dbd6e93095799d6f3be745fae9f8fedd4" | |
| 5815 | 5812 | dependencies = [ | |
| 5816 | 5813 | "libc", | |
| 5817 | - | "windows-sys 0.60.2", | |
| 5814 | + | "windows-sys 0.61.2", | |
| 5818 | 5815 | ] | |
| 5819 | 5816 | ||
| 5820 | 5817 | [[package]] | |
| @@ -6560,7 +6557,7 @@ | |||
| 6560 | 6557 | "getrandom 0.4.3", | |
| 6561 | 6558 | "once_cell", | |
| 6562 | 6559 | "rustix", | |
| 6563 | - | "windows-sys 0.60.2", | |
| 6560 | + | "windows-sys 0.61.2", | |
| 6564 | 6561 | ] | |
| 6565 | 6562 | ||
| 6566 | 6563 | [[package]] | |
| @@ -6582,7 +6579,7 @@ | |||
| 6582 | 6579 | "parking_lot", | |
| 6583 | 6580 | "rustix", | |
| 6584 | 6581 | "signal-hook", | |
| 6585 | - | "windows-sys 0.60.2", | |
| 6582 | + | "windows-sys 0.61.2", | |
| 6586 | 6583 | ] | |
| 6587 | 6584 | ||
| 6588 | 6585 | [[package]] | |
| @@ -7064,7 +7061,7 @@ | |||
| 7064 | 7061 | "png 0.18.1", | |
| 7065 | 7062 | "serde", | |
| 7066 | 7063 | "thiserror 2.0.20", | |
| 7067 | - | "windows-sys 0.60.2", | |
| 7064 | + | "windows-sys 0.61.2", | |
| 7068 | 7065 | ] | |
| 7069 | 7066 | ||
| 7070 | 7067 | [[package]] | |
| @@ -7099,7 +7096,7 @@ | |||
| 7099 | 7096 | dependencies = [ | |
| 7100 | 7097 | "memoffset", | |
| 7101 | 7098 | "tempfile", | |
| 7102 | - | "windows-sys 0.60.2", | |
| 7099 | + | "windows-sys 0.61.2", | |
| 7103 | 7100 | ] | |
| 7104 | 7101 | ||
| 7105 | 7102 | [[package]] | |
| @@ -7629,7 +7626,7 @@ | |||
| 7629 | 7626 | source = "registry+https://github.com/rust-lang/crates.io-index" | |
| 7630 | 7627 | checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" | |
| 7631 | 7628 | dependencies = [ | |
| 7632 | - | "windows-sys 0.60.2", | |
| 7629 | + | "windows-sys 0.61.2", | |
| 7633 | 7630 | ] | |
| 7634 | 7631 | ||
| 7635 | 7632 | [[package]] | |
| @@ -8488,15 +8485,15 @@ | |||
| 8488 | 8485 | ||
| 8489 | 8486 | [[patch.unused]] | |
| 8490 | 8487 | name = "quasi-axum" | |
| 8491 | - | version = "0.101.1" | |
| 8488 | + | version = "0.102.0" | |
| 8492 | 8489 | ||
| 8493 | 8490 | [[patch.unused]] | |
| 8494 | 8491 | name = "quasi-basics" | |
| 8495 | - | version = "0.101.1" | |
| 8492 | + | version = "0.102.0" | |
| 8496 | 8493 | ||
| 8497 | 8494 | [[patch.unused]] | |
| 8498 | 8495 | name = "quasi-immediate" | |
| 8499 | - | version = "0.101.1" | |
| 8496 | + | version = "0.102.0" | |
| 8500 | 8497 | ||
| 8501 | 8498 | [[patch.unused]] | |
| 8502 | 8499 | name = "quasi-store" |
| @@ -18,7 +18,7 @@ | |||
| 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.66" | |
| 21 | + | makeover-build = "0.67" | |
| 22 | 22 | # Cuts the two house faces into frontend/fonts/. A git dependency because | |
| 23 | 23 | # quasi-type is `publish = false`, which is also why makeover-build cannot do | |
| 24 | 24 | # this and only emits the CSS that fetches the result. The rev is the one | |
| @@ -28,7 +28,7 @@ | |||
| 28 | 28 | # The table CSS is generated here too: the columns are this app's, so the | |
| 29 | 29 | # shared helper cannot know them, but the tracks and the narrowing rules come | |
| 30 | 30 | # from the description rather than from hand-written nth-child cuts. | |
| 31 | - | makeover-webview = "0.73" | |
| 31 | + | makeover-webview = "0.74" | |
| 32 | 32 | makeover-layout = "0.44" | |
| 33 | 33 | # Width. Direct rather than through makeover-webview, because the narrow table | |
| 34 | 34 | # pass keys off SizeClass::Compact and a boundary reached transitively is a | |
| @@ -36,7 +36,7 @@ | |||
| 36 | 36 | makeover-geometry = "0.7" | |
| 37 | 37 | # Only to write its selection and clock scripts into the frontend. Those two are | |
| 38 | 38 | # the whole of `frontend/js/` since the swap. | |
| 39 | - | quasi-webview = { git = "https://makenot.work/git/max/quasi.git", version = "0.101" } | |
| 39 | + | quasi-webview = { git = "https://makenot.work/git/max/quasi.git", version = "0.102" } | |
| 40 | 40 | ||
| 41 | 41 | [dependencies] | |
| 42 | 42 | goingson-core = { workspace = true } | |
| @@ -54,10 +54,10 @@ | |||
| 54 | 54 | # dependency's source even with the feature off -- so a public clone could not | |
| 55 | 55 | # build at all against a URL it could not reach. quasi went public that day and | |
| 56 | 56 | # the URL moved here with it. | |
| 57 | - | quasi-router = { git = "https://makenot.work/git/max/quasi.git", version = "0.101" } | |
| 58 | - | quasi-http = { git = "https://makenot.work/git/max/quasi.git", version = "0.101" } | |
| 59 | - | quasi-webview = { git = "https://makenot.work/git/max/quasi.git", version = "0.101" } | |
| 60 | - | quasi-tauri = { git = "https://makenot.work/git/max/quasi.git", version = "0.101" } | |
| 57 | + | quasi-router = { git = "https://makenot.work/git/max/quasi.git", version = "0.102" } | |
| 58 | + | quasi-http = { git = "https://makenot.work/git/max/quasi.git", version = "0.102" } | |
| 59 | + | quasi-webview = { git = "https://makenot.work/git/max/quasi.git", version = "0.102" } | |
| 60 | + | quasi-tauri = { git = "https://makenot.work/git/max/quasi.git", version = "0.102" } | |
| 61 | 61 | quasi-declare = { git = "https://makenot.work/git/max/quasi.git", version = "0.1" } | |
| 62 | 62 | ||
| 63 | 63 | # The notification declaration, and it is NOT behind the `quasi` feature: the | |
| @@ -70,7 +70,7 @@ | |||
| 70 | 70 | # so an app wanting eight lines over `tauri-plugin-notification` had to link the | |
| 71 | 71 | # whole description stack for them. quasicoherent `c231ff13` moved it here, | |
| 72 | 72 | # where the `Deliver` trait it implements already lives. | |
| 73 | - | quasi-notifs = { git = "https://makenot.work/git/max/quasi.git", version = "0.101", features = ["synckit", "describe", "tauri"] } | |
| 73 | + | quasi-notifs = { git = "https://makenot.work/git/max/quasi.git", version = "0.102", features = ["synckit", "describe", "tauri"] } | |
| 74 | 74 | ||
| 75 | 75 | # Tauri | |
| 76 | 76 | tauri = { workspace = true, features = ["image-png", "devtools"] } | |
| @@ -135,7 +135,7 @@ | |||
| 135 | 135 | # The forms emitter and the description it renders. Runtime deps, not build: | |
| 136 | 136 | # form markup depends on the value, the error and the options at the moment a | |
| 137 | 137 | # modal opens, so it cannot be materialised the way the stylesheet is. | |
| 138 | - | makeover-webview = "0.73" | |
| 138 | + | makeover-webview = "0.74" | |
| 139 | 139 | makeover-layout = "0.44" | |
| 140 | 140 | # Browser opening | |
| 141 | 141 | open = { workspace = true } |
| @@ -6,8 +6,15 @@ | |||
| 6 | 6 | //! project and the due date are meta, the blocked and unblocks markers are | |
| 7 | 7 | //! tokens, subtask progress is a `Meter`, opening a card is `activate` and the | |
| 8 | 8 | //! context menu is `menu`. A column is a heading, a count and a list. That the | |
| 9 | - | //! three columns are **peers** is [`RegionKind::Columns`]; a board described as | |
| 10 | - | //! list-detail or sidebar-content is a lie about the screen. | |
| 9 | + | //! three columns are **peers** is a row whose every member asks to fill: they | |
| 10 | + | //! divide the room equally by `Width::Fill`'s own rule, and no member chooses | |
| 11 | + | //! what another shows. A board described as list-detail or sidebar-content is a | |
| 12 | + | //! lie about the screen. | |
| 13 | + | //! | |
| 14 | + | //! It was `RegionKind::Columns` until that variant was retired (quasicoherent | |
| 15 | + | //! `cf981aaa`). The row says the same thing and one thing more: `Wrap` is what | |
| 16 | + | //! the board does when three columns no longer fit across, which the variant | |
| 17 | + | //! could not state and every renderer had to invent. | |
| 11 | 18 | //! | |
| 12 | 19 | //! # The shape | |
| 13 | 20 | //! | |
| @@ -270,9 +277,11 @@ | |||
| 270 | 277 | /// The board itself, as one region of peer columns. | |
| 271 | 278 | shape board_region(tasks: &[Task]) -> Slot; | |
| 272 | 279 | ||
| 273 | - | region "board" as Columns { | |
| 274 | - | for lane in COLUMNS { | |
| 275 | - | include column(tasks, lane); | |
| 280 | + | region "board" as Group { | |
| 281 | + | across Wrap { | |
| 282 | + | for lane in COLUMNS { | |
| 283 | + | beside Essential Fill include column(tasks, lane); | |
| 284 | + | } | |
| 276 | 285 | } | |
| 277 | 286 | } | |
| 278 | 287 | } |
| @@ -96,8 +96,14 @@ | |||
| 96 | 96 | // The whole point of the member. Before 0.25.0 this screen could only have | |
| 97 | 97 | // been described as list-detail, which says the left column chooses what | |
| 98 | 98 | // the right shows -- a lie about a board. | |
| 99 | - | assert!(markup.contains("columns"), "{markup}"); | |
| 100 | - | assert!(!markup.contains("split"), "{markup}"); | |
| 99 | + | // | |
| 100 | + | // `RegionKind::Columns` said it until that variant was retired | |
| 101 | + | // (quasicoherent `cf981aaa`). Three peers is now three members of one row | |
| 102 | + | // that each ask to fill, which divide the room equally by `Width::Fill`'s | |
| 103 | + | // own rule and choose nothing about each other. Counted rather than | |
| 104 | + | // matched, because the count is the "peers" half: two fills and a content | |
| 105 | + | // member would be a master-detail wearing a board's markup. | |
| 106 | + | assert_eq!(markup.matches("data-width=\"fill\"").count(), 3, "{markup}"); | |
| 101 | 107 | for label in ["Pending", "Started", "Completed"] { | |
| 102 | 108 | assert!(markup.contains(label), "{markup}"); | |
| 103 | 109 | } |