-
Notifications
You must be signed in to change notification settings - Fork 2.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Literata: Version 3.021 added #3805
Conversation
ExtraLight instance in |
It isn't clear to me why the ExtraLight instance is not showing up in fvar. The source masters are there and in the designspace doc. It may be that the source / build process needs to be overhauled. In the meantime, this PR fixes up the |
Oh, I hadn't seen: there is also a Black (900) instance missing in But indeed, the issue is less serious this way. 😄 |
Fontbakery reportFontbakery version: 0.8.2 [12] Literata-Italic[opsz,wght].ttf🔥 FAIL: Does DESCRIPTION file contain a upstream Git repo URL?--- Rationale --- The contents of the DESCRIPTION.en-us.html file are displayed on the Google Fonts website in the about section of each font family specimen page. Since all of the Google Fonts collection is composed of libre-licensed fonts, this check enforces a policy that there must be a hypertext link in that page directing users to the repository where the font project files are made available. Such hosting is typically done on sites like Github, Gitlab, GNU Savannah or any other git-based version control service.
🔥 FAIL: Ensure component transforms do not perform scaling or rotation.--- Rationale --- Some families have glyphs which have been constructed by using transformed components e.g the 'u' being constructed from a flipped 'n'. From a designers point of view, this sounds like a win (less work). However, such approaches can lead to rasterization issues, such as having the 'u' not sitting on the baseline at certain sizes after running the font through ttfautohint. As of July 2019, Marc Foley observed that ttfautohint assigns cvt values to transformed glyphs as if they are not transformed and the result is they render very badly, and that vttLib does not support flipped components. When building the font with fontmake, this problem can be fixed by using the "Decompose Transformed Components" filter.
🔥 FAIL: Check glyphs do not have components which are themselves components.--- Rationale --- There have been bugs rendering variable fonts with nested components. Additionally, some static fonts with nested components have been reported to have rendering and printing issues. For more info, see: * https://github.com/googlefonts/fontbakery/issues/2961 * https://github.com/arrowtype/recursive/issues/412
⚠ WARN: DESCRIPTION.en_us.html should end in a linebreak.--- Rationale --- Some older text-handling tools sometimes misbehave if the last line of data in a text file is not terminated with a newline character (also known as '\n'). We know that this is a very small detail, but for the sake of keeping all DESCRIPTION.en_us.html files uniformly formatted throughout the GFonts collection, we chose to adopt the practice of placing this final linebreak char on them.
⚠ WARN: Check copyright namerecords match license file.--- Rationale --- A known licensing description must be provided in the NameID 14 (LICENSE DESCRIPTION) entries of the name table. The source of truth for this check (to determine which license is in use) is a file placed side-by-side to your font project including the licensing terms. Depending on the chosen license, one of the following string snippets is expected to be found on the NameID 13 (LICENSE DESCRIPTION) entries of the name table: - "This Font Software is licensed under the SIL Open Font License, Version 1.1. This license is available with a FAQ at: https://scripts.sil.org/OFL" - "Licensed under the Apache License, Version 2.0" - "Licensed under the Ubuntu Font Licence 1.0." Currently accepted licenses are Apache or Open Font License. For a small set of legacy families the Ubuntu Font License may be acceptable as well. When in doubt, please choose OFL for new font projects.
⚠ WARN: License URL matches License text on name table?--- Rationale --- A known license URL must be provided in the NameID 14 (LICENSE INFO URL) entry of the name table. The source of truth for this check is the licensing text found on the NameID 13 entry (LICENSE DESCRIPTION). The string snippets used for detecting licensing terms are: - "This Font Software is licensed under the SIL Open Font License, Version 1.1. This license is available with a FAQ at: https://scripts.sil.org/OFL" - "Licensed under the Apache License, Version 2.0" - "Licensed under the Ubuntu Font Licence 1.0." Currently accepted licenses are Apache or Open Font License. For a small set of legacy families the Ubuntu Font License may be acceptable as well. When in doubt, please choose OFL for new font projects.
⚠ WARN: Are there caret positions declared for every ligature?--- Rationale --- All ligatures in a font must have corresponding caret (text cursor) positions defined in the GDEF table, otherwhise, users may experience issues with caret rendering. If using GlyphsApp or UFOs, ligature carets can be defined as anchors with names starting with 'caret_'. These can be compiled with fontmake as of version v2.4.0.
⚠ WARN: Is there kerning info for non-ligated sequences?--- Rationale --- Fonts with ligatures should have kerning on the corresponding non-ligated sequences for text where ligatures aren't used (eg https://github.com/impallari/Raleway/issues/14).
⚠ WARN: A static fonts directory with at least two fonts must accompany variable fonts--- Rationale --- Variable font family directories kept in the google/fonts git repo may include a static/ subdir containing static fonts. These files are meant to be served for users that still lack support for variable fonts in their web browsers.
⚠ WARN: On a family update, the DESCRIPTION.en_us.html file should ideally also be updated.--- Rationale --- We want to ensure that any significant changes to the font family are properly mentioned in the DESCRIPTION file. In general, it means that the contents of the DESCRIPTION.en_us.html file will typically change if when font files are updated. Please treat this check as a reminder to do so whenever appropriate!
⚠ WARN: Ensure fonts have ScriptLangTags declared on the 'meta' table.--- Rationale --- The OpenType 'meta' table originated at Apple. Microsoft added it to OT with just two DataMap records: - dlng: comma-separated ScriptLangTags that indicate which scripts, or languages and scripts, with possible variants, the font is designed for - slng: comma-separated ScriptLangTags that indicate which scripts, or languages and scripts, with possible variants, the font supports The slng structure is intended to describe which languages and scripts the font overall supports. For example, a Traditional Chinese font that also contains Latin characters, can indicate Hant,Latn, showing that it supports Hant, the Traditional Chinese variant of the Hani script, and it also supports the Latn script The dlng structure is far more interesting. A font may contain various glyphs, but only a particular subset of the glyphs may be truly "leading" in the design, while other glyphs may have been included for technical reasons. Such a Traditional Chinese font could only list Hant there, showing that it’s designed for Traditional Chinese, but the font would omit Latn, because the developers don’t think the font is really recommended for purely Latin-script use. The tags used in the structures can comprise just script, or also language and script. For example, if a font has Bulgarian Cyrillic alternates in the locl feature for the cyrl BGR OT languagesystem, it could also indicate in dlng explicitly that it supports bul-Cyrl. (Note that the scripts and languages in meta use the ISO language and script codes, not the OpenType ones). This check ensures that the font has the meta table containing the slng and dlng structures. All families in the Google Fonts collection should contain the 'meta' table. Windows 10 already uses it when deciding on which fonts to fall back to. The Google Fonts API and also other environments could use the data for smarter filtering. Most importantly, those entries should be added to the Noto fonts. In the font making process, some environments store this data in external files already. But the meta table provides a convenient way to store this inside the font file, so some tools may add the data, and unrelated tools may read this data. This makes the solution much more portable and universal.
⚠ WARN: Does the font have a DSIG table?--- Rationale --- Microsoft Office 2013 and below products expect fonts to have a digital signature declared in a DSIG table in order to implement OpenType features. The EOL date for Microsoft Office 2013 products is 4/11/2023. This issue does not impact Microsoft Office 2016 and above products. As we approach the EOL date, it is now considered better to completely remove the table. But if you still want your font to support OpenType features on Office 2013, then you may find it handy to add a fake signature on a dummy DSIG table by running one of the helper scripts provided at https://github.com/googlefonts/gftools Reference: https://github.com/googlefonts/fontbakery/issues/1845
[11] Literata[opsz,wght].ttf🔥 FAIL: Does DESCRIPTION file contain a upstream Git repo URL?--- Rationale --- The contents of the DESCRIPTION.en-us.html file are displayed on the Google Fonts website in the about section of each font family specimen page. Since all of the Google Fonts collection is composed of libre-licensed fonts, this check enforces a policy that there must be a hypertext link in that page directing users to the repository where the font project files are made available. Such hosting is typically done on sites like Github, Gitlab, GNU Savannah or any other git-based version control service.
🔥 FAIL: Ensure component transforms do not perform scaling or rotation.--- Rationale --- Some families have glyphs which have been constructed by using transformed components e.g the 'u' being constructed from a flipped 'n'. From a designers point of view, this sounds like a win (less work). However, such approaches can lead to rasterization issues, such as having the 'u' not sitting on the baseline at certain sizes after running the font through ttfautohint. As of July 2019, Marc Foley observed that ttfautohint assigns cvt values to transformed glyphs as if they are not transformed and the result is they render very badly, and that vttLib does not support flipped components. When building the font with fontmake, this problem can be fixed by using the "Decompose Transformed Components" filter.
🔥 FAIL: Check glyphs do not have components which are themselves components.--- Rationale --- There have been bugs rendering variable fonts with nested components. Additionally, some static fonts with nested components have been reported to have rendering and printing issues. For more info, see: * https://github.com/googlefonts/fontbakery/issues/2961 * https://github.com/arrowtype/recursive/issues/412
⚠ WARN: DESCRIPTION.en_us.html should end in a linebreak.--- Rationale --- Some older text-handling tools sometimes misbehave if the last line of data in a text file is not terminated with a newline character (also known as '\n'). We know that this is a very small detail, but for the sake of keeping all DESCRIPTION.en_us.html files uniformly formatted throughout the GFonts collection, we chose to adopt the practice of placing this final linebreak char on them.
⚠ WARN: Check copyright namerecords match license file.--- Rationale --- A known licensing description must be provided in the NameID 14 (LICENSE DESCRIPTION) entries of the name table. The source of truth for this check (to determine which license is in use) is a file placed side-by-side to your font project including the licensing terms. Depending on the chosen license, one of the following string snippets is expected to be found on the NameID 13 (LICENSE DESCRIPTION) entries of the name table: - "This Font Software is licensed under the SIL Open Font License, Version 1.1. This license is available with a FAQ at: https://scripts.sil.org/OFL" - "Licensed under the Apache License, Version 2.0" - "Licensed under the Ubuntu Font Licence 1.0." Currently accepted licenses are Apache or Open Font License. For a small set of legacy families the Ubuntu Font License may be acceptable as well. When in doubt, please choose OFL for new font projects.
⚠ WARN: License URL matches License text on name table?--- Rationale --- A known license URL must be provided in the NameID 14 (LICENSE INFO URL) entry of the name table. The source of truth for this check is the licensing text found on the NameID 13 entry (LICENSE DESCRIPTION). The string snippets used for detecting licensing terms are: - "This Font Software is licensed under the SIL Open Font License, Version 1.1. This license is available with a FAQ at: https://scripts.sil.org/OFL" - "Licensed under the Apache License, Version 2.0" - "Licensed under the Ubuntu Font Licence 1.0." Currently accepted licenses are Apache or Open Font License. For a small set of legacy families the Ubuntu Font License may be acceptable as well. When in doubt, please choose OFL for new font projects.
⚠ WARN: Are there caret positions declared for every ligature?--- Rationale --- All ligatures in a font must have corresponding caret (text cursor) positions defined in the GDEF table, otherwhise, users may experience issues with caret rendering. If using GlyphsApp or UFOs, ligature carets can be defined as anchors with names starting with 'caret_'. These can be compiled with fontmake as of version v2.4.0.
⚠ WARN: Is there kerning info for non-ligated sequences?--- Rationale --- Fonts with ligatures should have kerning on the corresponding non-ligated sequences for text where ligatures aren't used (eg https://github.com/impallari/Raleway/issues/14).
⚠ WARN: A static fonts directory with at least two fonts must accompany variable fonts--- Rationale --- Variable font family directories kept in the google/fonts git repo may include a static/ subdir containing static fonts. These files are meant to be served for users that still lack support for variable fonts in their web browsers.
⚠ WARN: Ensure fonts have ScriptLangTags declared on the 'meta' table.--- Rationale --- The OpenType 'meta' table originated at Apple. Microsoft added it to OT with just two DataMap records: - dlng: comma-separated ScriptLangTags that indicate which scripts, or languages and scripts, with possible variants, the font is designed for - slng: comma-separated ScriptLangTags that indicate which scripts, or languages and scripts, with possible variants, the font supports The slng structure is intended to describe which languages and scripts the font overall supports. For example, a Traditional Chinese font that also contains Latin characters, can indicate Hant,Latn, showing that it supports Hant, the Traditional Chinese variant of the Hani script, and it also supports the Latn script The dlng structure is far more interesting. A font may contain various glyphs, but only a particular subset of the glyphs may be truly "leading" in the design, while other glyphs may have been included for technical reasons. Such a Traditional Chinese font could only list Hant there, showing that it’s designed for Traditional Chinese, but the font would omit Latn, because the developers don’t think the font is really recommended for purely Latin-script use. The tags used in the structures can comprise just script, or also language and script. For example, if a font has Bulgarian Cyrillic alternates in the locl feature for the cyrl BGR OT languagesystem, it could also indicate in dlng explicitly that it supports bul-Cyrl. (Note that the scripts and languages in meta use the ISO language and script codes, not the OpenType ones). This check ensures that the font has the meta table containing the slng and dlng structures. All families in the Google Fonts collection should contain the 'meta' table. Windows 10 already uses it when deciding on which fonts to fall back to. The Google Fonts API and also other environments could use the data for smarter filtering. Most importantly, those entries should be added to the Noto fonts. In the font making process, some environments store this data in external files already. But the meta table provides a convenient way to store this inside the font file, so some tools may add the data, and unrelated tools may read this data. This makes the solution much more portable and universal.
⚠ WARN: Does the font have a DSIG table?--- Rationale --- Microsoft Office 2013 and below products expect fonts to have a digital signature declared in a DSIG table in order to implement OpenType features. The EOL date for Microsoft Office 2013 products is 4/11/2023. This issue does not impact Microsoft Office 2016 and above products. As we approach the EOL date, it is now considered better to completely remove the table. But if you still want your font to support OpenType features on Office 2013, then you may find it handy to add a fake signature on a dummy DSIG table by running one of the helper scripts provided at https://github.com/googlefonts/gftools Reference: https://github.com/googlefonts/fontbakery/issues/1845
Summary
Note: The following loglevels were omitted in this report:
|
What holds back this PR? |
* Literata Version 3.102;gftools[0.9.29] taken from the upstream repo https://github.com/googlefonts/literata at commit googlefonts/literata@5996ce7.
Updated Literata: Version 3.102;gftools[0.9.29] added1508d77: [gftools-packager] Literata: Version 3.102;gftools[0.9.29] added
|
1f68cd0
to
1508d77
Compare
Fontbakery reportFontbakery version: 0.8.12a0 [1] Family checksℹ INFO: Check axis ordering on the STAT table. (com.google.fonts/check/STAT/axis_order)
[21] Literata[opsz,wght].ttf🔥 FAIL: Does DESCRIPTION file contain a upstream Git repo URL? (com.google.fonts/check/description/git_url)
🔥 FAIL: Check font names are correct (com.google.fonts/check/font_names)
⚠ WARN: DESCRIPTION.en_us.html should end in a linebreak. (com.google.fonts/check/description/eof_linebreak)
⚠ WARN: Check for codepoints not covered by METADATA subsets. (com.google.fonts/check/metadata/unreachable_subsetting)
Use -F or --full-lists to disable shortening of long lists. Or you can add the above codepoints to one of the subsets supported by the font: ⚠ WARN: Glyphs are similiar to Google Fonts version? (com.google.fonts/check/production_glyphs_similarity)
Use -F or --full-lists to disable shortening of long lists. ⚠ WARN: Are there caret positions declared for every ligature? (com.google.fonts/check/ligature_carets)
⚠ WARN: Is there kerning info for non-ligated sequences? (com.google.fonts/check/kerning_for_non_ligated_sequences)
Use -F or --full-lists to disable shortening of long lists. [code: lacks-kern-info] ⚠ WARN: A static fonts directory with at least two fonts must accompany variable fonts (com.google.fonts/check/repo/vf_has_static_fonts)
⚠ WARN: Ensure fonts have ScriptLangTags declared on the 'meta' table. (com.google.fonts/check/meta/script_lang_tags)
⚠ WARN: Glyph names are all valid? (com.google.fonts/check/valid_glyphnames)
⚠ WARN: Check font contains no unreachable glyphs (com.google.fonts/check/unreachable_glyphs)
Use -F or --full-lists to disable shortening of long lists. ⚠ WARN: Does the font contain a soft hyphen? (com.google.fonts/check/soft_hyphen)
⚠ WARN: Ensure dotted circle glyph is present and can attach marks. (com.google.fonts/check/dotted_circle)
⚠ WARN: Detect any interpolation issues in the font. (com.google.fonts/check/interpolation_issues)
ℹ INFO: Show hinting filesize impact. (com.google.fonts/check/hinting_impact)
ℹ INFO: Font has old ttfautohint applied? (com.google.fonts/check/old_ttfautohint)
ℹ INFO: EPAR table present in font? (com.google.fonts/check/epar)
ℹ INFO: Is the Grid-fitting and Scan-conversion Procedure ('gasp') table set to optimize rendering? (com.google.fonts/check/gasp)
PPM <= 65535: ℹ INFO: Check for font-v versioning. (com.google.fonts/check/fontv)
ℹ INFO: Font contains all required tables? (com.google.fonts/check/required_tables)
ℹ INFO: List all superfamily filepaths (com.google.fonts/check/superfamily/list)
[22] Literata-Italic[opsz,wght].ttf🔥 FAIL: Does DESCRIPTION file contain a upstream Git repo URL? (com.google.fonts/check/description/git_url)
🔥 FAIL: Check font names are correct (com.google.fonts/check/font_names)
⚠ WARN: DESCRIPTION.en_us.html should end in a linebreak. (com.google.fonts/check/description/eof_linebreak)
⚠ WARN: Check for codepoints not covered by METADATA subsets. (com.google.fonts/check/metadata/unreachable_subsetting)
Use -F or --full-lists to disable shortening of long lists. Or you can add the above codepoints to one of the subsets supported by the font: ⚠ WARN: Glyphs are similiar to Google Fonts version? (com.google.fonts/check/production_glyphs_similarity)
Use -F or --full-lists to disable shortening of long lists. ⚠ WARN: Are there caret positions declared for every ligature? (com.google.fonts/check/ligature_carets)
⚠ WARN: Is there kerning info for non-ligated sequences? (com.google.fonts/check/kerning_for_non_ligated_sequences)
Use -F or --full-lists to disable shortening of long lists. [code: lacks-kern-info] ⚠ WARN: A static fonts directory with at least two fonts must accompany variable fonts (com.google.fonts/check/repo/vf_has_static_fonts)
⚠ WARN: On a family update, the DESCRIPTION.en_us.html file should ideally also be updated. (com.google.fonts/check/description/family_update)
⚠ WARN: Ensure fonts have ScriptLangTags declared on the 'meta' table. (com.google.fonts/check/meta/script_lang_tags)
⚠ WARN: Glyph names are all valid? (com.google.fonts/check/valid_glyphnames)
⚠ WARN: Check font contains no unreachable glyphs (com.google.fonts/check/unreachable_glyphs)
Use -F or --full-lists to disable shortening of long lists. ⚠ WARN: Does the font contain a soft hyphen? (com.google.fonts/check/soft_hyphen)
⚠ WARN: Ensure dotted circle glyph is present and can attach marks. (com.google.fonts/check/dotted_circle)
⚠ WARN: Check math signs have the same width. (com.google.fonts/check/math_signs_width)
Width = 577: ℹ INFO: Show hinting filesize impact. (com.google.fonts/check/hinting_impact)
ℹ INFO: Font has old ttfautohint applied? (com.google.fonts/check/old_ttfautohint)
ℹ INFO: EPAR table present in font? (com.google.fonts/check/epar)
ℹ INFO: Is the Grid-fitting and Scan-conversion Procedure ('gasp') table set to optimize rendering? (com.google.fonts/check/gasp)
PPM <= 65535: ℹ INFO: Check for font-v versioning. (com.google.fonts/check/fontv)
ℹ INFO: Font contains all required tables? (com.google.fonts/check/required_tables)
ℹ INFO: List all superfamily filepaths (com.google.fonts/check/superfamily/list)
Summary
Note: The following loglevels were omitted in this report:
|
closing this old PR and opening a new one |
69d495d: [gftools-packager] Literata: Version 3.021 added
1f68cd0: [gftools-packager] ofl/literata remove METADATA "source". #2587