main
tag: v0.1.0
tag: v0.10.0
tag: v0.11.0
tag: v0.12.0
tag: v0.13.0
tag: v0.14.0
tag: v0.15.0
tag: v0.16.0
tag: v0.17.0
tag: v0.18.0
tag: v0.19.0
tag: v0.19.1
tag: v0.2.0
tag: v0.21.0
tag: v0.22.0
tag: v0.23.0
tag: v0.24.0
tag: v0.25.0
tag: v0.26.0
tag: v0.26.1
tag: v0.27.0
tag: v0.27.1
tag: v0.27.3
tag: v0.27.5
tag: v0.28.0
tag: v0.28.1
tag: v0.28.2
tag: v0.29.1
tag: v0.3.0
tag: v0.31.0
tag: v0.32.0
tag: v0.33.0
tag: v0.35.0
tag: v0.36.0
tag: v0.37.0
tag: v0.38.0
tag: v0.39.0
tag: v0.4.0
tag: v0.40.0
tag: v0.41.0
tag: v0.41.1
tag: v0.41.2
tag: v0.42.0
tag: v0.43.0
tag: v0.44.0
tag: v0.44.2
tag: v0.5.0
tag: v0.6.0
tag: v0.6.1
tag: v0.7.0
tag: v0.8.0
tag: v0.8.2
tag: v0.9.0
Files
Commits
Tags
Notes
Issues
0.6.0: Width and Priority are non_exhaustive
Breaking, and the last of the vocabulary enums a renderer matches on to take
this. Fill and Depth went in 0.4.0, FieldKind in 0.5.0. RowPart is the one
still closed, and it stays closed for now: nothing has needed to grow it.
Co-Authored-By
Claude Opus 5 (1M context) <noreply@anthropic.com>
2 files changed,
+9 insertions,
-1 deletion
1
1
[package]
2
2
name = "makeover-layout"
3
-
version = "0.5.0"
3
+
version = "0.6.0"
4
4
edition = "2024"
5
5
description = "The renderer-agnostic half of the make-family design system: what a thing IS, named as intents and relationships and never as values. Colour defers to makeover, spacing to makeover-geometry; what is left is composition."
6
6
license = "MIT"
798
798
/// An intent, so the actual floor stays with `makeover-geometry`. goingson's
799
799
/// task table spells these as `minmax(200px, 1fr)`, `140px` and content-sized;
800
800
/// only the first three words of that survive deferral.
801
+
/// `#[non_exhaustive]`, for the reason [`Fill`] and [`FieldKind`] are: a
802
+
/// renderer matches on this and a vocabulary that grows must not break every
803
+
/// renderer when it does.
801
804
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
805
+
#[non_exhaustive]
802
806
pub enum Width {
803
807
/// Takes what it needs and no more.
804
808
Content,
815
819
/// webview apps do today and is a live bug rather than only verbosity. goingson
816
820
/// hides mobile columns with `nth-child(n+5)` against a seven-column table, so
817
821
/// inserting a column silently hides the wrong one.
822
+
/// `#[non_exhaustive]`, same reasoning as [`Width`]. Note the ordering is the
823
+
/// whole point of the type, so a new tier has to be declared in its place in
824
+
/// the sequence rather than appended.
818
825
#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]
826
+
#[non_exhaustive]
819
827
pub enum Priority {
820
828
/// Dropped first.
821
829
Optional,