Add RegionKind::Group, and emit it as a section
Takes makeover-layout 0.27.0's Region::Group: the container a
Heading::Section names, which had none. Slot::group is the constructor,
because Slot::new makes RegionKind::Pane the easy answer and Pane is what
apps reached for instead.
The webview emits a group as <section> and every other region as <div>.
That is the renderer picking the element its host has for an intent the
description states; nothing in the description asked for an element name,
and a terminal answers the same intent with a rule.
The terminal and egui needed no change. Group is Depth::Flat, so it draws
its body in flow with no frame, which is what belonging-together looks
like where there is no colour to spend on it.
Whole workspace to 0.11.0: RegionKind is not non_exhaustive, so a member
is breaking, and these release together.
- Co-Authored-By
- Claude Opus 5 (1M context) <noreply@anthropic.com>
15 files changed,
+153 insertions,
-70 deletions
| 2348 |
2348 |
|
|
| 2349 |
2349 |
|
[[package]]
|
| 2350 |
2350 |
|
name = "makeover-immediate"
|
| 2351 |
|
- |
version = "0.24.0"
|
| 2352 |
|
- |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
| 2353 |
|
- |
checksum = "03abc4ce154f0ac923c8712215b8611fd9442471edea8abf945f7b64d2f07d49"
|
|
2351 |
+ |
version = "0.25.0"
|
| 2354 |
2352 |
|
dependencies = [
|
| 2355 |
2353 |
|
"egui",
|
| 2356 |
2354 |
|
"egui_extras",
|
| 2359 |
2357 |
|
|
| 2360 |
2358 |
|
[[package]]
|
| 2361 |
2359 |
|
name = "makeover-layout"
|
| 2362 |
|
- |
version = "0.26.1"
|
| 2363 |
|
- |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
| 2364 |
|
- |
checksum = "58967567e03caca4b9b991734184d7952ac54e2075882cff42312f04f5214bab"
|
|
2360 |
+ |
version = "0.27.0"
|
| 2365 |
2361 |
|
|
| 2366 |
2362 |
|
[[package]]
|
| 2367 |
2363 |
|
name = "makeover-touch"
|
| 2368 |
|
- |
version = "0.18.0"
|
| 2369 |
|
- |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
| 2370 |
|
- |
checksum = "bf59a17d309e376a9c501235f3b6f6f8f3f94922ef46b4e9a780fc41149fe0be"
|
|
2364 |
+ |
version = "0.19.0"
|
| 2371 |
2365 |
|
dependencies = [
|
| 2372 |
2366 |
|
"makeover-geometry",
|
| 2373 |
2367 |
|
"makeover-layout",
|
| 2375 |
2369 |
|
|
| 2376 |
2370 |
|
[[package]]
|
| 2377 |
2371 |
|
name = "makeover-tui"
|
| 2378 |
|
- |
version = "0.24.0"
|
| 2379 |
|
- |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
| 2380 |
|
- |
checksum = "0381a77d593cddee4a3420e383d9a90a9a98c91723532cafabbfc2c18766a84a"
|
|
2372 |
+ |
version = "0.25.0"
|
| 2381 |
2373 |
|
dependencies = [
|
| 2382 |
2374 |
|
"makeover",
|
| 2383 |
2375 |
|
"makeover-layout",
|
| 2386 |
2378 |
|
|
| 2387 |
2379 |
|
[[package]]
|
| 2388 |
2380 |
|
name = "makeover-webview"
|
| 2389 |
|
- |
version = "0.44.0"
|
| 2390 |
|
- |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
| 2391 |
|
- |
checksum = "d6aa378fc8c66a495fccb751dbf1e6d4e56e07e16f0384e06606ebaa4ff5263d"
|
|
2381 |
+ |
version = "0.45.0"
|
| 2392 |
2382 |
|
dependencies = [
|
| 2393 |
2383 |
|
"makeover-geometry",
|
| 2394 |
2384 |
|
"makeover-layout",
|
| 3092 |
3082 |
|
|
| 3093 |
3083 |
|
[[package]]
|
| 3094 |
3084 |
|
name = "quasi"
|
| 3095 |
|
- |
version = "0.10.0"
|
|
3085 |
+ |
version = "0.11.0"
|
| 3096 |
3086 |
|
|
| 3097 |
3087 |
|
[[package]]
|
| 3098 |
3088 |
|
name = "quasi-axum"
|
| 3099 |
|
- |
version = "0.10.0"
|
|
3089 |
+ |
version = "0.11.0"
|
| 3100 |
3090 |
|
dependencies = [
|
| 3101 |
3091 |
|
"axum",
|
| 3102 |
3092 |
|
"http",
|
| 3110 |
3100 |
|
|
| 3111 |
3101 |
|
[[package]]
|
| 3112 |
3102 |
|
name = "quasi-basics"
|
| 3113 |
|
- |
version = "0.10.0"
|
|
3103 |
+ |
version = "0.11.0"
|
| 3114 |
3104 |
|
dependencies = [
|
| 3115 |
3105 |
|
"makeover-layout",
|
| 3116 |
3106 |
|
"quasi-http",
|
| 3120 |
3110 |
|
|
| 3121 |
3111 |
|
[[package]]
|
| 3122 |
3112 |
|
name = "quasi-bench"
|
| 3123 |
|
- |
version = "0.10.0"
|
|
3113 |
+ |
version = "0.11.0"
|
| 3124 |
3114 |
|
dependencies = [
|
| 3125 |
3115 |
|
"dhat",
|
| 3126 |
3116 |
|
"makeover",
|
| 3135 |
3125 |
|
|
| 3136 |
3126 |
|
[[package]]
|
| 3137 |
3127 |
|
name = "quasi-http"
|
| 3138 |
|
- |
version = "0.10.0"
|
|
3128 |
+ |
version = "0.11.0"
|
| 3139 |
3129 |
|
dependencies = [
|
| 3140 |
3130 |
|
"form_urlencoded",
|
| 3141 |
3131 |
|
"http",
|
| 3144 |
3134 |
|
|
| 3145 |
3135 |
|
[[package]]
|
| 3146 |
3136 |
|
name = "quasi-immediate"
|
| 3147 |
|
- |
version = "0.10.0"
|
|
3137 |
+ |
version = "0.11.0"
|
| 3148 |
3138 |
|
dependencies = [
|
| 3149 |
3139 |
|
"docengine",
|
| 3150 |
3140 |
|
"egui",
|
| 3154 |
3144 |
|
|
| 3155 |
3145 |
|
[[package]]
|
| 3156 |
3146 |
|
name = "quasi-router"
|
| 3157 |
|
- |
version = "0.10.0"
|
|
3147 |
+ |
version = "0.11.0"
|
| 3158 |
3148 |
|
dependencies = [
|
| 3159 |
3149 |
|
"makeover-layout",
|
| 3160 |
3150 |
|
]
|
| 3171 |
3161 |
|
|
| 3172 |
3162 |
|
[[package]]
|
| 3173 |
3163 |
|
name = "quasi-tauri"
|
| 3174 |
|
- |
version = "0.10.0"
|
|
3164 |
+ |
version = "0.11.0"
|
| 3175 |
3165 |
|
dependencies = [
|
| 3176 |
3166 |
|
"http",
|
| 3177 |
3167 |
|
"quasi-http",
|
| 3182 |
3172 |
|
|
| 3183 |
3173 |
|
[[package]]
|
| 3184 |
3174 |
|
name = "quasi-tui"
|
| 3185 |
|
- |
version = "0.10.0"
|
|
3175 |
+ |
version = "0.11.0"
|
| 3186 |
3176 |
|
dependencies = [
|
| 3187 |
3177 |
|
"docengine",
|
| 3188 |
3178 |
|
"makeover",
|
| 3194 |
3184 |
|
|
| 3195 |
3185 |
|
[[package]]
|
| 3196 |
3186 |
|
name = "quasi-webview"
|
| 3197 |
|
- |
version = "0.10.0"
|
|
3187 |
+ |
version = "0.11.0"
|
| 3198 |
3188 |
|
dependencies = [
|
| 3199 |
3189 |
|
"docengine",
|
| 3200 |
3190 |
|
"makeover-layout",
|
| 5625 |
5615 |
|
checksum = "29666d0abbfad1e3dc4dcf6144730dd3a3ab225bbbdac83319345b1b44ccfc1b"
|
| 5626 |
5616 |
|
|
| 5627 |
5617 |
|
[[patch.unused]]
|
| 5628 |
|
- |
name = "synckit-client"
|
| 5629 |
|
- |
version = "0.8.0"
|
| 5630 |
|
- |
|
| 5631 |
|
- |
[[patch.unused]]
|
| 5632 |
|
- |
name = "synckit-config"
|
| 5633 |
|
- |
version = "0.2.0"
|
|
5618 |
+ |
name = "makeover-build"
|
|
5619 |
+ |
version = "0.38.0"
|
| 5634 |
5620 |
|
|
| 5635 |
5621 |
|
[[patch.unused]]
|
| 5636 |
5622 |
|
name = "kberg"
|
| 5647 |
5633 |
|
[[patch.unused]]
|
| 5648 |
5634 |
|
name = "tagtree"
|
| 5649 |
5635 |
|
version = "0.4.0"
|
|
5636 |
+ |
|
|
5637 |
+ |
[[patch.unused]]
|
|
5638 |
+ |
name = "synckit-client"
|
|
5639 |
+ |
version = "0.8.0"
|
|
5640 |
+ |
|
|
5641 |
+ |
[[patch.unused]]
|
|
5642 |
+ |
name = "synckit-config"
|
|
5643 |
+ |
version = "0.2.0"
|
| 1 |
1 |
|
[package]
|
| 2 |
2 |
|
name = "quasi-axum"
|
| 3 |
|
- |
version = "0.10.0"
|
|
3 |
+ |
version = "0.11.0"
|
| 4 |
4 |
|
description = "The axum host adapter for quasi-router: an HTTP request in, a rendered description out"
|
| 5 |
5 |
|
edition.workspace = true
|
| 6 |
6 |
|
rust-version.workspace = true
|
| 13 |
13 |
|
workspace = true
|
| 14 |
14 |
|
|
| 15 |
15 |
|
[dependencies]
|
| 16 |
|
- |
quasi-router = { path = "../quasi-router", version = "0.10.0" }
|
| 17 |
|
- |
quasi-http = { path = "../quasi-http", version = "0.10.0" }
|
|
16 |
+ |
quasi-router = { path = "../quasi-router", version = "0.11.0" }
|
|
17 |
+ |
quasi-http = { path = "../quasi-http", version = "0.11.0" }
|
| 18 |
18 |
|
axum = "0.8.8"
|
| 19 |
19 |
|
http = "1.3.1"
|
| 20 |
20 |
|
tokio = { version = "1.50.0", features = ["rt"] }
|
| 21 |
21 |
|
|
| 22 |
22 |
|
[dev-dependencies]
|
| 23 |
|
- |
quasi-webview = { path = "../quasi-webview", version = "0.10.0" }
|
|
23 |
+ |
quasi-webview = { path = "../quasi-webview", version = "0.11.0" }
|
| 24 |
24 |
|
tokio = { version = "1.50.0", features = ["macros", "rt-multi-thread"] }
|
| 25 |
25 |
|
tower = { version = "0.5.3", features = ["util"] }
|
| 26 |
26 |
|
http-body-util = "0.1.3"
|
| 1 |
1 |
|
[package]
|
| 2 |
2 |
|
name = "quasi-basics"
|
| 3 |
|
- |
version = "0.10.0"
|
|
3 |
+ |
version = "0.11.0"
|
| 4 |
4 |
|
description = "The first-party widget set: named assemblies of primitives, shared across our apps"
|
| 5 |
5 |
|
edition.workspace = true
|
| 6 |
6 |
|
rust-version.workspace = true
|
| 13 |
13 |
|
workspace = true
|
| 14 |
14 |
|
|
| 15 |
15 |
|
[dependencies]
|
| 16 |
|
- |
quasi-router = { path = "../quasi-router", version = "0.10.0" }
|
| 17 |
|
- |
makeover-layout = "0.26.1"
|
|
16 |
+ |
quasi-router = { path = "../quasi-router", version = "0.11.0" }
|
|
17 |
+ |
makeover-layout = "0.27.0"
|
| 18 |
18 |
|
|
| 19 |
19 |
|
[dev-dependencies]
|
| 20 |
20 |
|
# A widget's guarantees are claims about what a renderer draws, so they are
|
| 21 |
21 |
|
# tested against a real one rather than by walking the tree the assembly just
|
| 22 |
22 |
|
# built. The webview is the renderer that recognises names today.
|
| 23 |
|
- |
quasi-webview = { path = "../quasi-webview", version = "0.10.0" }
|
| 24 |
|
- |
quasi-http = { path = "../quasi-http", version = "0.10.0" }
|
|
23 |
+ |
quasi-webview = { path = "../quasi-webview", version = "0.11.0" }
|
|
24 |
+ |
quasi-http = { path = "../quasi-http", version = "0.11.0" }
|
| 1 |
1 |
|
[package]
|
| 2 |
2 |
|
name = "quasi-bench"
|
| 3 |
|
- |
version = "0.10.0"
|
|
3 |
+ |
version = "0.11.0"
|
| 4 |
4 |
|
description = "What a described screen costs to render, in time and in allocations"
|
| 5 |
5 |
|
edition.workspace = true
|
| 6 |
6 |
|
rust-version.workspace = true
|
| 22 |
22 |
|
count = ["dep:dhat"]
|
| 23 |
23 |
|
|
| 24 |
24 |
|
[dependencies]
|
| 25 |
|
- |
quasi-router = { path = "../quasi-router", version = "0.10.0" }
|
| 26 |
|
- |
quasi-webview = { path = "../quasi-webview", version = "0.10.0" }
|
| 27 |
|
- |
quasi-tui = { path = "../quasi-tui", version = "0.10.0" }
|
|
25 |
+ |
quasi-router = { path = "../quasi-router", version = "0.11.0" }
|
|
26 |
+ |
quasi-webview = { path = "../quasi-webview", version = "0.11.0" }
|
|
27 |
+ |
quasi-tui = { path = "../quasi-tui", version = "0.11.0" }
|
| 28 |
28 |
|
# `Serves` is the trait carrying `screen` and `fragment`, which is what the
|
| 29 |
29 |
|
# webview is measured through. Taken directly rather than through quasi-webview
|
| 30 |
30 |
|
# because a bench calling a trait method should name the trait it calls.
|
| 31 |
|
- |
quasi-http = { path = "../quasi-http", version = "0.10.0" }
|
| 32 |
|
- |
makeover-layout = "0.26.1"
|
| 33 |
|
- |
makeover-tui = { version = "0.24.0", features = ["theme"] }
|
|
31 |
+ |
quasi-http = { path = "../quasi-http", version = "0.11.0" }
|
|
32 |
+ |
makeover-layout = "0.27.0"
|
|
33 |
+ |
makeover-tui = { version = "0.25.0", features = ["theme"] }
|
| 34 |
34 |
|
# Only to load a bundled theme file. `makeover_tui::Theme` is `#[non_exhaustive]`,
|
| 35 |
35 |
|
# so `Theme::from_theme` is the one way to get one, the same reason quasi-tui's
|
| 36 |
36 |
|
# tests take this.
|
| 1 |
1 |
|
[package]
|
| 2 |
2 |
|
name = "quasi-http"
|
| 3 |
|
- |
version = "0.10.0"
|
|
3 |
+ |
version = "0.11.0"
|
| 4 |
4 |
|
description = "The http-shaped seam quasi's webview host adapters share: decoding in, a rendered description out"
|
| 5 |
5 |
|
edition.workspace = true
|
| 6 |
6 |
|
rust-version.workspace = true
|
| 13 |
13 |
|
workspace = true
|
| 14 |
14 |
|
|
| 15 |
15 |
|
[dependencies]
|
| 16 |
|
- |
quasi-router = { path = "../quasi-router", version = "0.10.0" }
|
|
16 |
+ |
quasi-router = { path = "../quasi-router", version = "0.11.0" }
|
| 17 |
17 |
|
http = "1.3.1"
|
| 18 |
18 |
|
form_urlencoded = "1.2.2"
|
| 1 |
1 |
|
[package]
|
| 2 |
2 |
|
name = "quasi-immediate"
|
| 3 |
|
- |
version = "0.10.0"
|
|
3 |
+ |
version = "0.11.0"
|
| 4 |
4 |
|
edition = "2024"
|
| 5 |
5 |
|
description = "The immediate-mode renderer for quasi-router: a described screen in, an egui frame out. Immediate mode is the constraint that matters, not the library."
|
| 6 |
6 |
|
license = "MIT"
|
| 12 |
12 |
|
categories = ["gui"]
|
| 13 |
13 |
|
|
| 14 |
14 |
|
[dependencies]
|
| 15 |
|
- |
quasi-router = { path = "../quasi-router", version = "0.10.0" }
|
|
15 |
+ |
quasi-router = { path = "../quasi-router", version = "0.11.0" }
|
| 16 |
16 |
|
# The node drawing, which is the makeover layer's and not this crate's. Every
|
| 17 |
17 |
|
# widget here that is not a container comes from it: a screen walk that painted
|
| 18 |
18 |
|
# its own meter would be the divergence the suite exists to end, one copy per
|
| 19 |
19 |
|
# renderer instead of one copy per app.
|
| 20 |
|
- |
makeover-immediate = "0.24.0"
|
|
20 |
+ |
makeover-immediate = "0.25.0"
|
| 21 |
21 |
|
egui = { version = "0.35", default-features = false }
|
| 22 |
22 |
|
# Markdown to text for `Node::Rich`. The same crate the webview renderer takes,
|
| 23 |
23 |
|
# reading the same source: what differs is that it can emit markup and this
|
| 1 |
1 |
|
[package]
|
| 2 |
2 |
|
name = "quasi-router"
|
| 3 |
|
- |
version = "0.10.0"
|
|
3 |
+ |
version = "0.11.0"
|
| 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
|
| 13 |
13 |
|
workspace = true
|
| 14 |
14 |
|
|
| 15 |
15 |
|
[dependencies]
|
| 16 |
|
- |
makeover-layout = "0.26.1"
|
|
16 |
+ |
makeover-layout = "0.27.0"
|
| 1 |
1 |
|
[package]
|
| 2 |
2 |
|
name = "quasi-tauri"
|
| 3 |
|
- |
version = "0.10.0"
|
|
3 |
+ |
version = "0.11.0"
|
| 4 |
4 |
|
description = "The Tauri custom-protocol host adapter for quasi-router: a webview request in, a rendered description out"
|
| 5 |
5 |
|
edition.workspace = true
|
| 6 |
6 |
|
rust-version.workspace = true
|
| 13 |
13 |
|
workspace = true
|
| 14 |
14 |
|
|
| 15 |
15 |
|
[dependencies]
|
| 16 |
|
- |
quasi-router = { path = "../quasi-router", version = "0.10.0" }
|
| 17 |
|
- |
quasi-http = { path = "../quasi-http", version = "0.10.0" }
|
|
16 |
+ |
quasi-router = { path = "../quasi-router", version = "0.11.0" }
|
|
17 |
+ |
quasi-http = { path = "../quasi-http", version = "0.11.0" }
|
| 18 |
18 |
|
http = "1.3.1"
|
| 19 |
19 |
|
# Default features off: this crate uses tauri's protocol registration and its
|
| 20 |
20 |
|
# blocking pool, and nothing else. An app brings the features it wants, and the
|
| 22 |
22 |
|
tauri = { version = "2.11.5", default-features = false }
|
| 23 |
23 |
|
|
| 24 |
24 |
|
[dev-dependencies]
|
| 25 |
|
- |
quasi-webview = { path = "../quasi-webview", version = "0.10.0" }
|
|
25 |
+ |
quasi-webview = { path = "../quasi-webview", version = "0.11.0" }
|
| 26 |
26 |
|
# The doctest names a concrete `Runtime`, and `Wry` is behind a default feature
|
| 27 |
27 |
|
# this crate does not otherwise ask for. Only the example needs it: nothing in
|
| 28 |
28 |
|
# the test module builds a window, which is what keeps them runnable with no
|