LT-22351: Preserve default font features in Preview and Word export - #1005
LT-22351: Preserve default font features in Preview and Word export#1005johnml1135 wants to merge 1 commit into
Conversation
This comment has been minimized.
This comment has been minimized.
|
Note: CI on this PR is expected to be red until sillsdev/liblcm#388 is released and Build/SilVersions.props is bumped. The committed SilVersions.props still pins upstream 11.0.0-beta0173, which lacks the liblcm fix, so both the pre-existing gate test (SaveToDB_DefaultFontFeatures_RoundTripsThroughRules) and the new CssGenerator regression test in this PR will fail against that pin in CI. This is the expected pre-release state, not a broken branch -- see the DO NOT MERGE note above. |
Welcome to Codecov 🎉Once you merge this PR into your default branch, you're all set! Codecov will compare coverage reports and display results in all future pull requests. Thanks for integrating Codecov - We've got you covered ☂️ |
Advance to the latest published LibLCM beta as the dependency baseline. Remove the StyleInfo loader now that LibLCM owns persisted default features. Cover Preview CSS and Word export precedence, and align the design record.
|
I doubt that keeping the old decisions in a persistent document is actually good for future ai or human understanding. Modifying this to instead show the status quo seems a better option. |
Persisted OpenType and Graphite defaults now flow through LibLCM's
BaseStyleInfointo both Dictionary Preview CSS and Word export. FieldWorks nolonger maintains a second
StyleInfoloader forktptFontVariations.The main review question is whether removing that compatibility loader leaves
either export path without coverage. The tests use real persisted
IStStylerules rather than an in-memory test double, and they verify both propagation
and precedence: a style's own features override writing-system defaults while
the font family can still fall back normally. The branch uses the published
SIL.LCModel11.0.0-beta0178 package, which contains the authoritative loadpath from sillsdev/liblcm#388.
Where to look
StyleInfo.csremoves the FieldWorks-only compatibility loader.CssGeneratorTestsexercises persisted defaults and CSS precedence.LcmWordGeneratorTestsexercises the equivalent Word export behavior.Deliberately not here
Stack and verification
LibLCM #388 and #394 are merged, and beta0178 is published on NuGet.org. The
FieldWorks Debug build passes with 0 warnings and 0 errors. The four focused
xWorks tests covering persisted defaults and precedence pass against beta0178.
LT-22351
Reading this a year from now -- start here
The load-path decision remains in the archived design because it constrains
future style handling. Temporary investigation and proposal narration was
removed from this branch; the dependency sequence is recorded here because it
is specific to landing this pull request.
Decisions and evidence
ktptFontVariations; FieldWorks ownsconsumption in Preview CSS and Word export.
production
LcmStyleSheetpath that the old test doubles bypassed.replace a style's own features with writing-system defaults.
LibLCM Fix LT-21907: Replace Stem Name with Stem Allomorph Label in UX #388.
This change is