googlefonts / googlefonts/fontmake

Compilation of .glyphs file fails if custom GDEF table present in features

Open
#544 0 comments 1 reaction 0 assignees View on GitHub
Dominant language
Python
Stars
888
Forks
97
Avg merge
4d 52m
Merged PRs (30d)
1

Description

1. Get Designspace and UFOs from `https://gitlab.gnome.org/GNOME/cantarell-fonts/tree/master/src`
2. `ufo2glyphs Cantarell.designspace`
3. `fontmake -g Cantarell.glyphs`

There is a `GDEF` table present in the feature file; fontmake builds a Designspace out of the .glyphs file at `font_project.py:141`, the function builds a `GDEF` table by default but blows up in `glyphsLib/builder/features.py:96` if a `GDEF` is present already.

Options:
1. Mellow out the glyphsLib assert and log a warning if a `GDEF` exists and skip re-generation?
2. Extend the parameter to be a tri-state (generate unless present, generate, don't generate)?

Contributor guide

Open the contributing guide

Research direction

Reproduce the failure with ufo2glyphs Cantarell.designspace and fontmake -g Cantarell.glyphs, then inspect font_project.py:141 and glyphsLib/builder/features.py:96. Determine the intended handling when a custom GDEF table is already present; done means the Cantarell source compiles without the assertion failure and the chosen behavior is covered by an appropriate test.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
build-system
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.