chore(deps): update rust crate printpdf to v0.12.8 - #147
Open
renovate[bot] wants to merge 1 commit into
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
0.12.7→0.12.8Release Notes
fschutt/printpdf (printpdf)
v0.12.8Compare Source
rust-fontconfig 5 + azul 0.0.16. Font fallback in HTML→PDF now runs on
rust-fontconfig 5's tiered
FontFallbackChain(CSS families with per-scriptfaces, script fallbacks, an explicit last resort) and its
FcFallbackConfiggeneric-family model, through azul-layout 0.0.16. printpdf only uses the
stable surface (
FcFontCache,FcPattern/FcFont,FcParseFontBytes,FontBytes,UnicodeRange), so no printpdf code changed; the dependencyrange moved from
>=4.4.9, <5to>=5.0, <6, intersecting azul-layout's>=5.0, <5.1on ONE rust-fontconfig (two copies would be two independentfont caches: layout resolving a font the renderer cannot find). Verified
against azul#457 at
041e20e(branchfeat/rust-fontconfig-5, the rebase ofthe auto-closed #455): 199 tests over 33 binaries green,
html_font_resolutionand the ligature/subset canaries included, with ONE rust-fontconfig (5.0.0),
one allsorts and one azul-core in the graph.
Font coverage is now exact, which changes fallback for the better. No
printpdf code changed, but rust-fontconfig 5 reads cmap segments directly
instead of probing blocks, and that fixes two real defects in how the
embedded base-14 fonts participated in per-character fallback:
block probe could not read their cmap, so both declared empty
unicode_ranges— and azul skips empty-coverage faces during fallback, soneither font could ever be chosen for any codepoint. They now declare the
43 and 10 codepoints they really map.
block: Helvetica claimed all 256 of U+0000..=U+00FF against 213 real
glyphs, and Times-Italic claimed the whole Cyrillic block on the strength
of a handful of glyphs. Over-claiming is the harmful direction — the
resolver stops at the first font whose ranges contain the codepoint, so a
bogus claim wins the character and renders .notdef instead of falling
through to a font that has the glyph. Verified against the cmap tables:
all fourteen subsets now report exactly the codepoints that map to a
non-.notdef glyph.
build_font_pool(fonts, Some(&["monospace"]))and friends also scan a widersuperset than before (generic expansion now includes the per-script fallback
candidates: 13 -> 27 fonts for
monospace, 24 -> 63 forsans-serifon atypical macOS box). The filter is documented as a superset selector, not the
final resolution, so this only means more fonts are available to fall back
to;
Some(&[])still scans nothing.The azul pin is 0.0.16, not 0.0.15. Building printpdf against the published
0.0.15 surfaced two azul-layout defects that only printpdf's feature matrix
reaches (it is the only consumer that builds azul-layout without
cpurenderand without
xml, across all three wasm targets):uuidwas pulled intoevery wasm build and refused to compile on
wasm32-unknown-unknown, andDocumentChangeset::apply_to_domcalled into thexml-gateddocument_editfrom an ungated impl block, breaking
--no-default-features --features text_layout. Both are fixed in azul-layout 0.0.16 (azul#465).Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.