googlefonts / googlefonts/fontmake

Unable to build instances for 4 Noto fonts (related to include path handling fix)

Open
#823 7 comments 0 reactions 1 assignee Claimed by @madig View on GitHub
Dominant language
Python
Stars
888
Forks
97
Avg merge
4d 52m
Merged PRs (30d)
1

Description

Since handling of includes was changed in fontmake (or one of the libraries it uses) I'm unable to build instances for the following fonts:

- NotoSansHanifiRohingya
- NotoSansMedefaidrin
- NotoSerifNyiakengPuachueHmong
- NotoSerifYezidi

All the sources I use for this build are in https://github.com/googlefonts/noto-source/tree/main/src

The symptoms of the failure (for example for _fontmake -m src/NotoSerifYezidi/*.designspace -i -o otf ttf_ ):

INFO:fontmake.font_project:Interpolating master UFOs from designspace
INFO:fontmake.font_project:Generating instance UFO for "Noto Serif Yezidi Regular"
INFO:fontmake.font_project:Generating instance UFO for "Noto Serif Yezidi Medium"
INFO:fontmake.font_project:Generating instance UFO for "Noto Serif Yezidi SemiBold"
INFO:fontmake.font_project:Generating instance UFO for "Noto Serif Yezidi Bold"
INFO:fontmake.font_project:Building OTF for NotoSerifYezidi-Regular
INFO:ufo2ft:Pre-processing glyphs
INFO:ufo2ft.filters.base:Running DecomposeComponentsFilter on NotoSerifYezidi-Regular
INFO:ufo2ft.filters.base:Running RemoveOverlapsFilter on NotoSerifYezidi-Regular
INFO:ufo2ft:Building OpenType tables
fontmake: Error: In 'src/NotoSerifYezidi/NotoSerifYezidi.designspace' -> 'src/build/instance_ufos/NotoSerifYezidi-Regular.ufo': Compiling UFO failed: src/build/instance_ufos/NotoSerifYezidi-Regular.ufo/features.fea:1:8: The following feature file should be included but cannot be found: family.fea

I need help fixing the sources or fixing something in the fontmake (or libraries).

Note that I can build the variable fonts but I'm not certain anymore that it properly deals with the external feature file.

I believe that the issue is that "fontmake et al" creates build instance_ufos in a separate build directory. However, the features.fea in each UFO includes file that is in the .. directory in the sources which is not copied to the build UFO structure.

PS. For NotoSerifNyiakengPuachueHmong the file path is somewhat different but the failure is the same
INFO:fontmake.font_project:Interpolating master UFOs from designspace
INFO:fontmake.font_project:Generating instance UFO for "Noto Serif Hmong Nyiakeng Regular"
INFO:fontmake.font_project:Generating instance UFO for "Noto Serif Hmong Nyiakeng Medium"
INFO:fontmake.font_project:Generating instance UFO for "Noto Serif Hmong Nyiakeng SemiBold"
INFO:fontmake.font_project:Generating instance UFO for "Noto Serif Hmong Nyiakeng Bold"
INFO:fontmake.font_project:Building OTF for NotoSerifHmongNyiakeng-Regular
INFO:ufo2ft:Pre-processing glyphs
INFO:ufo2ft.filters.base:Running DecomposeComponentsFilter on NotoSerifHmongNyiakeng-Regular
INFO:ufo2ft.filters.base:Running RemoveOverlapsFilter on NotoSerifHmongNyiakeng-Regular
INFO:ufo2ft:Building OpenType tables
fontmake: Error: In 'src/NotoSerifNyiakengPuachueHmong/NotoSerifNyiakengPuachueHmong.designspace' -> 'src/NotoSerifNyiakengPuachueHmong/instance_ufos/NotoSerifNyiakengPuachueHmong-Regular.ufo': Compiling UFO failed: src/NotoSerifNyiakengPuachueHmong/instance_ufos/NotoSerifNyiakengPuachueHmong-Regular.ufo/features.fea:1:8: The following feature file should be included but cannot be found: family.fea

PS2. I believe I can copy the common feature file into each instance UFO and this would fix the issue but the designer of the font established a common feature file for all instances and copying this file into each instance would fore us to maintain multiple copies of the same info

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.