Skip to content

Upgrade to harfrust 0.14 and skrifa 0.48 - #1156

Open
nicoburns wants to merge 2 commits into
linebender:mainfrom
nicoburns:upgrade-fontations-harfrust-0.14
Open

nicoburns wants to merge 2 commits into
linebender:mainfrom
nicoburns:upgrade-fontations-harfrust-0.14

Conversation

@nicoburns

Copy link
Copy Markdown
Collaborator

LLM Contributions: Code changes generated with Devin.

harfrust 0.14 requires owned font data (read-fonts' Font model), so the face data is shared from fontdb when it is a Source::Binary and copied otherwise (e.g. file-backed system fonts).

Comment on lines +1485 to +1487
fontdb.with_face_data(font.id, |font_data, face_index| {
harfrust::Font::new(font_data.to_vec(), face_index)
})?

@LaurenzV LaurenzV Oct 10, 2026 •

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could we please add a TODO that we need to add a ID -> Font data cache in resvg so we don't reclone such fonts for every text span?

I think not having this will likely block the next release.

Comment thread Cargo.lock Outdated
"proc-macro2",
"quote",
"syn",
"syn 2.0.119",

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we please bump bytemuck accordingly so we don't have two syn versions in the tree?

… TODO

Bumping bytemuck_derive to 1.12.1 moves it to syn 3, so only one syn
version remains in the dependency tree.
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.

2 participants