Re-export Curve, so Field::curve is callable from outside the crate
`Field::curve` has been public since the curve entered the vocabulary, and
the only type it accepts was not in lib.rs's `pub use` list. A consumer
holding a `Field` could not name `Curve`, which made the method uncallable
outside quasi-router; audiofiles' classifier port hit it as a compile
failure and worked around it with `.step("0.01")` and the default linear
curve.
Swept the rest of the public surface for the same shape rather than fixing
only the one found by calling it. Every other type named in a public
signature is either re-exported already or reached through `layout::`,
which lib.rs re-exports whole: Awaiting, Depth, Fallback, FieldKind, Image,
Region, RowPart and Width are all makeover-layout's. Curve was the only gap.
The test lives in tests/ rather than beside the code because a unit test
cannot see this: inside the crate every type is reachable through `crate::`,
so a missing re-export only shows up once something outside does the `use`.
That is the first integration test the crate has.
- Co-Authored-By
- Claude Opus 5 (1M context) <noreply@anthropic.com>
17 files changed,
+75 insertions,
-53 deletions
| 3414 |
3414 |
|
|
| 3415 |
3415 |
|
[[package]]
|
| 3416 |
3416 |
|
name = "quasi"
|
| 3417 |
|
- |
version = "0.61.1"
|
|
3417 |
+ |
version = "0.62.0"
|
| 3418 |
3418 |
|
|
| 3419 |
3419 |
|
[[package]]
|
| 3420 |
3420 |
|
name = "quasi-axum"
|
| 3421 |
|
- |
version = "0.61.1"
|
|
3421 |
+ |
version = "0.62.0"
|
| 3422 |
3422 |
|
dependencies = [
|
| 3423 |
3423 |
|
"axum",
|
| 3424 |
3424 |
|
"http",
|
| 3432 |
3432 |
|
|
| 3433 |
3433 |
|
[[package]]
|
| 3434 |
3434 |
|
name = "quasi-basics"
|
| 3435 |
|
- |
version = "0.61.1"
|
|
3435 |
+ |
version = "0.62.0"
|
| 3436 |
3436 |
|
dependencies = [
|
| 3437 |
3437 |
|
"makeover-layout",
|
| 3438 |
3438 |
|
"quasi-http",
|
| 3442 |
3442 |
|
|
| 3443 |
3443 |
|
[[package]]
|
| 3444 |
3444 |
|
name = "quasi-bench"
|
| 3445 |
|
- |
version = "0.61.1"
|
|
3445 |
+ |
version = "0.62.0"
|
| 3446 |
3446 |
|
dependencies = [
|
| 3447 |
3447 |
|
"dhat",
|
| 3448 |
3448 |
|
"makeover",
|
| 3457 |
3457 |
|
|
| 3458 |
3458 |
|
[[package]]
|
| 3459 |
3459 |
|
name = "quasi-http"
|
| 3460 |
|
- |
version = "0.61.1"
|
|
3460 |
+ |
version = "0.62.0"
|
| 3461 |
3461 |
|
dependencies = [
|
| 3462 |
3462 |
|
"form_urlencoded",
|
| 3463 |
3463 |
|
"http",
|
| 3466 |
3466 |
|
|
| 3467 |
3467 |
|
[[package]]
|
| 3468 |
3468 |
|
name = "quasi-immediate"
|
| 3469 |
|
- |
version = "0.61.1"
|
|
3469 |
+ |
version = "0.62.0"
|
| 3470 |
3470 |
|
dependencies = [
|
| 3471 |
3471 |
|
"docengine",
|
| 3472 |
3472 |
|
"egui",
|
| 3476 |
3476 |
|
|
| 3477 |
3477 |
|
[[package]]
|
| 3478 |
3478 |
|
name = "quasi-notifs"
|
| 3479 |
|
- |
version = "0.61.1"
|
|
3479 |
+ |
version = "0.62.0"
|
| 3480 |
3480 |
|
dependencies = [
|
| 3481 |
3481 |
|
"quasi-router",
|
| 3482 |
3482 |
|
"synckit-config",
|
| 3484 |
3484 |
|
|
| 3485 |
3485 |
|
[[package]]
|
| 3486 |
3486 |
|
name = "quasi-router"
|
| 3487 |
|
- |
version = "0.61.1"
|
|
3487 |
+ |
version = "0.62.0"
|
| 3488 |
3488 |
|
dependencies = [
|
| 3489 |
3489 |
|
"makeover-layout",
|
| 3490 |
3490 |
|
]
|
| 3501 |
3501 |
|
|
| 3502 |
3502 |
|
[[package]]
|
| 3503 |
3503 |
|
name = "quasi-tauri"
|
| 3504 |
|
- |
version = "0.61.1"
|
|
3504 |
+ |
version = "0.62.0"
|
| 3505 |
3505 |
|
dependencies = [
|
| 3506 |
3506 |
|
"http",
|
| 3507 |
3507 |
|
"quasi-http",
|
| 3514 |
3514 |
|
|
| 3515 |
3515 |
|
[[package]]
|
| 3516 |
3516 |
|
name = "quasi-tui"
|
| 3517 |
|
- |
version = "0.61.1"
|
|
3517 |
+ |
version = "0.62.0"
|
| 3518 |
3518 |
|
dependencies = [
|
| 3519 |
3519 |
|
"docengine",
|
| 3520 |
3520 |
|
"makeover",
|
| 3526 |
3526 |
|
|
| 3527 |
3527 |
|
[[package]]
|
| 3528 |
3528 |
|
name = "quasi-webview"
|
| 3529 |
|
- |
version = "0.61.1"
|
|
3529 |
+ |
version = "0.62.0"
|
| 3530 |
3530 |
|
dependencies = [
|
| 3531 |
3531 |
|
"docengine",
|
| 3532 |
3532 |
|
"makeover-layout",
|
| 6197 |
6197 |
|
"winnow 1.0.4",
|
| 6198 |
6198 |
|
]
|
| 6199 |
6199 |
|
|
|
6200 |
+ |
[[patch.unused]]
|
|
6201 |
+ |
name = "quasi-type"
|
|
6202 |
+ |
version = "0.1.0"
|
|
6203 |
+ |
|
| 6200 |
6204 |
|
[[patch.unused]]
|
| 6201 |
6205 |
|
name = "kberg"
|
| 6202 |
6206 |
|
version = "0.1.0"
|
| 6216 |
6220 |
|
[[patch.unused]]
|
| 6217 |
6221 |
|
name = "synckit-client"
|
| 6218 |
6222 |
|
version = "0.9.1"
|
| 6219 |
|
- |
|
| 6220 |
|
- |
[[patch.unused]]
|
| 6221 |
|
- |
name = "quasi-type"
|
| 6222 |
|
- |
version = "0.1.0"
|
| 1 |
1 |
|
[package]
|
| 2 |
2 |
|
name = "quasi-axum"
|
| 3 |
|
- |
version = "0.61.1"
|
|
3 |
+ |
version = "0.62.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.61.1" }
|
| 17 |
|
- |
quasi-http = { path = "../quasi-http", version = "0.61.1" }
|
|
16 |
+ |
quasi-router = { path = "../quasi-router", version = "0.62.0" }
|
|
17 |
+ |
quasi-http = { path = "../quasi-http", version = "0.62.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.61.1" }
|
|
23 |
+ |
quasi-webview = { path = "../quasi-webview", version = "0.62.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.61.1"
|
|
3 |
+ |
version = "0.62.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.61.1" }
|
|
16 |
+ |
quasi-router = { path = "../quasi-router", version = "0.62.0" }
|
| 17 |
17 |
|
makeover-layout = "0.35.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.61.1" }
|
| 24 |
|
- |
quasi-http = { path = "../quasi-http", version = "0.61.1" }
|
|
23 |
+ |
quasi-webview = { path = "../quasi-webview", version = "0.62.0" }
|
|
24 |
+ |
quasi-http = { path = "../quasi-http", version = "0.62.0" }
|
| 1 |
1 |
|
[package]
|
| 2 |
2 |
|
name = "quasi-bench"
|
| 3 |
|
- |
version = "0.61.1"
|
|
3 |
+ |
version = "0.62.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.61.1" }
|
| 26 |
|
- |
quasi-webview = { path = "../quasi-webview", version = "0.61.1" }
|
| 27 |
|
- |
quasi-tui = { path = "../quasi-tui", version = "0.61.1" }
|
|
25 |
+ |
quasi-router = { path = "../quasi-router", version = "0.62.0" }
|
|
26 |
+ |
quasi-webview = { path = "../quasi-webview", version = "0.62.0" }
|
|
27 |
+ |
quasi-tui = { path = "../quasi-tui", version = "0.62.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.61.1" }
|
|
31 |
+ |
quasi-http = { path = "../quasi-http", version = "0.62.0" }
|
| 32 |
32 |
|
makeover-layout = "0.35.0"
|
| 33 |
33 |
|
makeover-tui = { version = "0.33.0", features = ["theme"] }
|
| 34 |
34 |
|
# Only to load a bundled theme file. `makeover_tui::Theme` is `#[non_exhaustive]`,
|
| 1 |
1 |
|
[package]
|
| 2 |
2 |
|
name = "quasi-http"
|
| 3 |
|
- |
version = "0.61.1"
|
|
3 |
+ |
version = "0.62.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.61.1" }
|
|
16 |
+ |
quasi-router = { path = "../quasi-router", version = "0.62.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.61.1"
|
|
3 |
+ |
version = "0.62.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.61.1" }
|
|
15 |
+ |
quasi-router = { path = "../quasi-router", version = "0.62.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
|
| 1 |
1 |
|
[package]
|
| 2 |
2 |
|
name = "quasi-notifs"
|
| 3 |
|
- |
version = "0.61.1"
|
|
3 |
+ |
version = "0.62.0"
|
| 4 |
4 |
|
description = "Declared notification kinds and the registry that holds them: what a notification says and what it is for, apart from how it reaches a person"
|
| 5 |
5 |
|
edition.workspace = true
|
| 6 |
6 |
|
rust-version.workspace = true
|
| 24 |
24 |
|
describe = ["dep:quasi-router"]
|
| 25 |
25 |
|
|
| 26 |
26 |
|
[dependencies]
|
| 27 |
|
- |
quasi-router = { path = "../quasi-router", version = "0.61.1", optional = true }
|
|
27 |
+ |
quasi-router = { path = "../quasi-router", version = "0.62.0", optional = true }
|
| 28 |
28 |
|
synckit-config = { git = "https://makenot.work/git/max/synckit.git", version = "0.2", optional = true }
|
| 1 |
1 |
|
[package]
|
| 2 |
2 |
|
name = "quasi-router"
|
| 3 |
|
- |
version = "0.61.1"
|
|
3 |
+ |
version = "0.62.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
|