googlefonts / googlefonts/gftools

[builder] Calling UFOBuilder directly doesn't set minimal=True and thus prevents color layer processing

Open
#740 5 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
283
Forks
73
Avg merge
21h 25m
Merged PRs (30d)
8

Description

Since the ninja builder came about, `gftools` relies on its own routine to generate designspace objects from Glyphs sources, rather than having `fontmake` do that.

`fontmake` however calls `UFOBuilder()` with `minimal=True`, [which the ninja builder doesn't](https://github.com/googlefonts/gftools/blob/main/Lib/gftools/builder/_ninja.py#L150), and the effect of that is that
1. color layers aren't processed, which rely on `minimal=True`
2. possibly the UFO builder is overall slower than it should for one-way font generation

So `minimal=True` needs to be set explicitly (which is set to `False` by default) to ensure correct color layer handling in `glyphsLib`.

I'll attach a PR in a second.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.