Skip to content

[#354][#361] x_scale and probe - #363

Merged
gregoreesmaa merged 1 commit into
mainfrom
land/354-361-linear
Sep 27, 2026
Merged

gregoreesmaa merged 1 commit into
mainfrom
land/354-361-linear

Conversation

@gregoreesmaa

Copy link
Copy Markdown
Owner

Stride-negotiated _ex with x_scale; version check and conform probe. Closes #354, closes #361.

… check + startup conformance probe

Host adopts zatex_layout_utf8_ex when the dylib exports it (28-byte
stride admits x_scale; pen+ink scale about the run origin per zatex.h,
identity fast path untouched). Old dylib keeps the frozen 20-byte v1
path: 7 live math frames byte-identical to baseline, MATH355 pinned
(149.9/0.0242), 548/548 tests green.

zatex_version() is checked after dlsym (recorded + test-pinned;
0 = unversioned era, never a gate) and zatex_conform_metrics() runs
once on first live layout (silent no-op on the installed dylib;
verified live against a fresh upstream build: use_ex=1, 18 STIX
font-drift diagnostics; engine emits x_scale=2000 on \widetilde{AB},
accent span widens rightward from a pinned origin).

Size: plugin 14508 -> 15148 bytes (+640B, budget 15 KiB); core
untouched (150798). No screenshot changes (identity on old dylib);
re-shoot owed on the versioned-dylib bump (test tripwires pin
version==0/use_ex==0/conform_n==0).
@gregoreesmaa
gregoreesmaa merged commit 288f2a5 into main Sep 27, 2026
3 checks passed
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.

Track upstream ZaTeX feedback: adopt once addressed Consume CRun.x_scale (wide-accent stretch); coordinate dylib stride change

1 participant