Files
craft-libs/crates
Dylan M. Taylor 5279ecdc0e font-catalog: bound name records before pairing legacy names (#536)
* font-catalog: bound name records before pairing legacy names

The scanner paired every legacy family record with every legacy style
record of the same language before removing duplicates, so a small name
table repeating those records allocated millions of strings (a million
pairs from 4,000 records). Name records are now read per ID up to a cap,
deduplicated as they are read and kept up to a cap, and the legacy pairs
have a budget of their own.

* font-catalog: count distinct legacy pairs against the pair budget

Collect the legacy (family, style) pairs into a sorted set and stop at
MAX_LEGACY_PAIRS distinct pairs, so the same pair repeated across
languages cannot use up the budget. Output order is unchanged (sorted,
deduplicated), and the test now expects exactly the full budget.

* address review: typographic family decided by name(), distinct-text cap for all-language names, document the legacy pair cap

* address review: keep selected full and PostScript names in lookup keys past the name cap
2026-11-11 05:26:36 -05:00
..
2026-11-05 10:29:52 +01:00