Skip to content

Designspace v5 - #420

Merged
cmyr merged 3 commits into
mainfrom
designspace-v5
Sep 25, 2026
Merged

cmyr merged 3 commits into
mainfrom
designspace-v5

Conversation

@cmyr

@cmyr cmyr commented Sep 24, 2026

Copy link
Copy Markdown
Member

This is identical to #418, but I'd merged that into the wrong branch. This merges into main, but shouldn't go in until #419 is merged.

cmyr and others added 3 commits September 25, 2026 10:31
Adds the v5 elements: elidedfallbackname, axis STAT labels,
top-level location labels, variable-fonts with axis-subsets, localised
source family names, and instance location labels and localised names.
The same structs handle 4.x and 5.x; the only API breakage is new pub
fields on existing structs.

An axis-subset is modelled as a name plus SubsetValue (Whole, Tent or
Discrete), parsed via a raw struct rather than an untagged enum, which
quick-xml can't handle. On save, format is bumped to the minimum
version the content needs, as fontTools does.
Make the axis-subset range values individually optional, as the spec
allows, and fold SubsetValue::Full into Range, per
#418 (comment)
@cmyr
cmyr merged commit 76e7db2 into main Sep 25, 2026
5 checks passed
@cmyr
cmyr deleted the designspace-v5 branch September 25, 2026 14:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants