fonttools / fontbakery

🧁 A font quality assurance tool for everyone
https://fontbakery.readthedocs.io
Apache License 2.0
557 stars 103 forks source link

New check: mandatory name IDs (that are not names) in GF fonts #3963

Open RosaWagner opened 2 years ago

RosaWagner commented 2 years ago

What needs to be checked?

Any fonts checked with GF profile must contain these name IDs:

I think we don't care so much about Manufacturer's name, Manufacturer's URL and Designer's URL, but will confirm.

Detailed description of the problem

Fontbakery fails those correctly when they are empty, but not missing. I didn't include font versioning (name ID5) cause already checked when emtpy and missing.

This error occurs when testing a font removing these name IDs:

💔 ERROR: Check font names are correct (com.google.fonts/check/font_names) 💔 ERROR The condition fontbakerycondition:expected_font_names had an error: TypeError: expected unicode or bytes, found NoneType: None

Optional fix

Glyphs3 offers the possibility to export fonts without these name IDs, they have to be added manually when starting a new font project.

Capture d’écran 2022-11-25 à 12 15 17

Resources and exact process needed to replicate

I made this font to test that: Missing-Name-IDs-Font.zip

Expected Profile

Please suggest in which profile should it be included. (You could inspect the Profiles's list at https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/index.html). Most common are:

Expected Result

Which log result level should it have:

Severity assessment

5

RosaWagner commented 2 years ago

oops pressed wrong button, editing now

felipesanches commented 2 years ago

The code that is crashing is actually part of the axisregistry module. That's the build_static_name_table method.

m4rc1e commented 2 years ago

I’ll check this out on Monday.

simoncozens commented 10 months ago

Which Monday? ;-)

felipesanches commented 10 months ago

Sorry about my laughing. I also sometimes do similar things :-P

felipesanches commented 10 months ago

But in this issue, I can see that I actually implemented the check requested by Rosalie: Screenshot from 2024-01-19 11-22-46

And the issue is probably not yet closed just because the check was placed on a "proposals" profile. Nowadays I consider that a mistake. I will delete the proposals profile, which was a bad idea, and add the check directly to Google Fonts profile, marked as EXPERIMENTAL.