Skip to content
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

Format HTML with new gftools formatter #7286

Closed
wants to merge 1 commit into from
Closed

Format HTML with new gftools formatter #7286

wants to merge 1 commit into from

Conversation

yanone
Copy link
Collaborator

@yanone yanone commented Feb 16, 2024

@yanone yanone requested a review from m4rc1e February 16, 2024 10:30
Copy link

FontBakery report

fontbakery version: 0.12.0a1

Check results

[38] Aclonica-Regular.ttf
🔥 FAIL: Checking OS/2 usWinAscent & usWinDescent. (com.google.fonts/check/family/win_ascent_and_descent)
  • 🔥 FAIL OS/2.usWinAscent value should be equal or greater than 2141, but got 1687 instead [code: ascent]
  • 🔥 FAIL OS/2.usWinDescent value should be equal or greater than 607, but got 533 instead [code: descent]
🔥 FAIL: Font contains '.notdef' as its first glyph? (com.google.fonts/check/mandatory_glyphs)
  • 🔥 FAIL The '.notdef' glyph should contain a drawing, but it is blank. [code: notdef-is-blank]
🔥 FAIL: Check accent of Lcaron, dcaron, lcaron, tcaron (com.google.fonts/check/alt_caron)
  • 🔥 FAIL dcaron uses component quoteright. [code: bad-mark]
  • 🔥 FAIL tcaron uses component quoteright. [code: bad-mark]
  • 🔥 FAIL Lcaron uses component quoteright. [code: bad-mark]
  • 🔥 FAIL lcaron uses component quoteright. [code: bad-mark]
🔥 FAIL: Copyright field for this font on METADATA.pb matches all copyright notice entries on the name table ? (com.google.fonts/check/metadata/nameid/copyright)
  • 🔥 FAIL Copyright field for this font on METADATA.pb ("Copyright (c) 2010 Brian J. Bonislawsky (astigma@astigmatic.com)") differs from a copyright notice entry on the name table: "Copyright (c) 2010 by Brian J. Bonislawsky DBA Astigmatic (AOETI). All rights reserved. Available under the Apache 2.0 licence.
    http://www.apache.org/licenses/LICENSE-2.0.html" [code: mismatch]
  • 🔥 FAIL Copyright field for this font on METADATA.pb ("Copyright (c) 2010 Brian J. Bonislawsky (astigma@astigmatic.com)") differs from a copyright notice entry on the name table: "Copyright (c) 2010 by Brian J. Bonislawsky DBA Astigmatic (AOETI). All rights reserved. Available under the Apache 2.0 licence.
    http://www.apache.org/licenses/LICENSE-2.0.html" [code: mismatch]
🔥 FAIL: Copyright notices match canonical pattern in METADATA.pb (com.google.fonts/check/metadata/valid_copyright)
  • 🔥 FAIL METADATA.pb: Copyright notices should match a pattern similar to:

"Copyright 2020 The Familyname Project Authors (git url)"

But instead we have got:

"copyright (c) 2010 brian j. bonislawsky (astigma@astigmatic.com)" [code: bad-notice-format]

🔥 FAIL: METADATA.pb: Check URL on copyright string is the same as in repository_url field. (com.google.fonts/check/metadata/consistent_repo_urls)
  • 🔥 FAIL Please add a family.source.repository_url entry. [code: lacks-repo-url]
🔥 FAIL: Shapes languages in all GF glyphsets. (com.google.fonts/check/glyphsets/shape_languages)
  • 🔥 FAIL GF_Latin_Core glyphset:
Language FAIL messages
ca_Latn (Catalan) Some mark glyphs were missing: ◌̀, ◌́, ◌̈, ◌̧
cs_Latn (Czech) Some mark glyphs were missing: ◌́, ◌̊, ◌̌
cy_Latn (Welsh) Some mark glyphs were missing: ◌̀, ◌́, ◌̂, ◌̈
da_Latn (Danish) Some mark glyphs were missing: ◌́, ◌̊
de_Latn (German) Some base glyphs were missing: ẞ
^ Some mark glyphs were missing: ◌̀, ◌́, ◌̈
^ Shaper produced a .notdef
en_Latn (English) Some mark glyphs were missing: ◌̀, ◌́, ◌̂, ◌̃, ◌̈, ◌̧
es_Latn (Spanish) Some mark glyphs were missing: ◌́, ◌̃, ◌̈
fi_Latn (Finnish) Some mark glyphs were missing: ◌̃, ◌̈, ◌̊, ◌̌
fr_Latn (French) Some mark glyphs were missing: ◌̀, ◌́, ◌̂, ◌̈, ◌̧
hr_Latn (Croatian) Some mark glyphs were missing: ◌́, ◌̌
hu_Latn (Hungarian) Some mark glyphs were missing: ◌́, ◌̈, ◌̋
is_Latn (Icelandic) Some mark glyphs were missing: ◌́, ◌̈, ◌̨
it_Latn (Italian) Some mark glyphs were missing: ◌̀, ◌́, ◌̂, ◌̈
lt_Latn (Lithuanian) Some mark glyphs were missing: ◌̄, ◌̇, ◌̌, ◌̨
lv_Latn (Latvian) Some mark glyphs were missing: ◌̄, ◌̌, ◌̧
mt_Latn (Maltese) Some mark glyphs were missing: ◌̀, ◌̂, ◌̇
nb_Latn (Norwegian Bokmål) Some mark glyphs were missing: ◌̀, ◌́, ◌̂, ◌̈, ◌̊
nl_Latn (Dutch) Some base glyphs were missing: ÍJ́, íj́
^ Some mark glyphs were missing: ◌̀, ◌́, ◌̂, ◌̈
^ Shaper produced a .notdef
pl_Latn (Polish) Some mark glyphs were missing: ◌́, ◌̇, ◌̨
pt_Latn (Portuguese) Some mark glyphs were missing: ◌̀, ◌́, ◌̂, ◌̃, ◌̈, ◌̧
ro_Latn (Romanian) Some mark glyphs were missing: ◌̂, ◌̆, ◌̧
^ Shaper didn't attach uni0326 to t
^ Shaper didn't attach uni0326 to T
^ Shaper didn't attach uni0326 to s
^ Shaper didn't attach uni0326 to S
sk_Latn (Slovak) Some mark glyphs were missing: ◌́, ◌̂, ◌̈, ◌̌
sq_Latn (Albanian) Some mark glyphs were missing: ◌̈, ◌̧
sv_Latn (Swedish) Some mark glyphs were missing: ◌̀, ◌́, ◌̈, ◌̊
tr_Latn (Turkish) Some mark glyphs were missing: ◌̂, ◌̆, ◌̇, ◌̈, ◌̧

[code: failed-language-shaping]

  • WARN GF_Latin_Core glyphset:
Language FAIL messages
de_Latn (German) Some auxiliary glyphs were missing: ẞ
nl_Latn (Dutch) Some auxiliary glyphs were missing: ÍJ́, íj́

[code: warning-language-shaping]

🔥 FAIL: Does DESCRIPTION file contain a upstream Git repo URL? (com.google.fonts/check/description/git_url)
  • 🔥 FAIL Please host your font project on a public Git repo (such as GitHub or GitLab) and place a link in the DESCRIPTION.en_us.html file. [code: lacks-git-url]
🔥 FAIL: Check license file has good copyright string. (com.google.fonts/check/license/OFL_copyright)
  • 🔥 FAIL First line in license file is:

"apache license"

which does not match the expected format, similar to:

"Copyright 2022 The Familyname Project Authors (git url)" [code: bad-format]

🔥 FAIL: Check Google Fonts glyph coverage. (com.google.fonts/check/glyph_coverage)
  • 🔥 FAIL Missing required codepoints:

    • 0x0218 (LATIN CAPITAL LETTER S WITH COMMA BELOW)

    • 0x0219 (LATIN SMALL LETTER S WITH COMMA BELOW)

    • 0x021A (LATIN CAPITAL LETTER T WITH COMMA BELOW)

    • 0x021B (LATIN SMALL LETTER T WITH COMMA BELOW)

    • 0x0300 (COMBINING GRAVE ACCENT)

    • 0x0301 (COMBINING ACUTE ACCENT)

    • 0x0302 (COMBINING CIRCUMFLEX ACCENT)

    • 0x0303 (COMBINING TILDE)

    • 0x0304 (COMBINING MACRON)

    • 0x0306 (COMBINING BREVE)

    • 8 more.

Use -F or --full-lists to disable shortening of long lists. [code: missing-codepoints]

🔥 FAIL: Copyright notices match canonical pattern in fonts (com.google.fonts/check/font_copyright)
  • 🔥 FAIL Name Table entry: Copyright notices should match a pattern similar to:

"Copyright 2019 The Familyname Project Authors (git url)"

But instead we have got:

"Copyright (c) 2010 by Brian J. Bonislawsky DBA Astigmatic (AOETI). All rights reserved. Available under the Apache 2.0 licence.
http://www.apache.org/licenses/LICENSE-2.0.html"
[code: bad-notice-format]

  • 🔥 FAIL Name Table entry: Copyright notices should match a pattern similar to:

"Copyright 2019 The Familyname Project Authors (git url)"

But instead we have got:

"Copyright (c) 2010 by Brian J. Bonislawsky DBA Astigmatic (AOETI). All rights reserved. Available under the Apache 2.0 licence.
http://www.apache.org/licenses/LICENSE-2.0.html"
[code: bad-notice-format]

🔥 FAIL: Font enables smart dropout control in "prep" table instructions? (com.google.fonts/check/smart_dropout)
  • 🔥 FAIL The 'prep' table does not contain TrueType instructions enabling smart dropout control. To fix, export the font with autohinting enabled, or run ttfautohint on the font, or run the gftools fix-nonhinting script. [code: lacks-smart-dropout]
WARN: Check if OS/2 xAvgCharWidth is correct. (com.google.fonts/check/xavgcharwidth)
  • WARN OS/2 xAvgCharWidth is 1128 but it should be 1261 which corresponds to the average of the widths of all glyphs in the font. [code: xAvgCharWidth-wrong]
WARN: Font has **proper** whitespace glyph names? (com.google.fonts/check/whitespace_glyphnames)
  • WARN Glyph 0x00A0 is called "nonbreakingspace": Change to "uni00A0" [code: not-recommended-00a0]
WARN: Check that legacy accents aren't used in composite glyphs. (com.google.fonts/check/legacy_accents)
  • WARN Glyph "Scaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "scaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Yacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "yacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Zcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "zcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Agrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Atilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Otilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ydieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ydieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Acircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ecircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Aacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Edieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Egrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Iacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Icircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Idieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Igrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Oacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ocircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ograve" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Uacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ucircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ugrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Adieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Eacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ntilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Odieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Udieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "aacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "agrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "acircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "adieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "atilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "aring" has a legacy accent component (ring). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "eacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "egrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ecircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "edieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "iacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "igrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "icircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "idieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ntilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "oacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ograve" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ocircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "odieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "otilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ugrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ucircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "udieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "AEacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "aeacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Amacron" has a legacy accent component (macron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "amacron" has a legacy accent component (macron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Abreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "abreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Cacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "cacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ccircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ccircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Cdotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "cdotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ccaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ccaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Dcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Emacron" has a legacy accent component (macron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "emacron" has a legacy accent component (macron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ebreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ebreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Edotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "edotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ecaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ecaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ygrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ygrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Zacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "zacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Zdotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "zdotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ycircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ycircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "wacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Wdieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "wdieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Rcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "rcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Sacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "sacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Scircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "scircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Omacron" has a legacy accent component (macron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "omacron" has a legacy accent component (macron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Obreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "obreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ohungarumlaut" has a legacy accent component (hungarumlaut). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ohungarumlaut" has a legacy accent component (hungarumlaut). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Jcircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "jcircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Utilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "utilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Umacron" has a legacy accent component (macron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "umacron" has a legacy accent component (macron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ubreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ubreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Uring" has a legacy accent component (ring). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uring" has a legacy accent component (ring). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Uhungarumlaut" has a legacy accent component (hungarumlaut). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uhungarumlaut" has a legacy accent component (hungarumlaut). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Wcircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "wcircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Wgrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "wgrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Wacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Tcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Racute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "racute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Nacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "nacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ncaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ncaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Lacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "lacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Gcircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "gcircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Gbreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "gbreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Gdotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "gdotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Hcircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "hcircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Itilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "itilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Imacron" has a legacy accent component (macron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "imacron" has a legacy accent component (macron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ibreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ibreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Idotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
WARN: Check font contains no unreachable glyphs (com.google.fonts/check/unreachable_glyphs)
  • WARN The following glyphs could not be reached by codepoint or substitution rules:

    • nonmarkingreturn
      [code: unreachable-glyphs]
WARN: Check if each glyph has the recommended amount of contours. (com.google.fonts/check/contour_count)
  • WARN This check inspects the glyph outlines and detects the total number of contours in each of them. The expected values are infered from the typical ammounts of contours observed in a large collection of reference font families. The divergences listed below may simply indicate a significantly different design on some of your glyphs. On the other hand, some of these may flag actual bugs in the font such as glyphs mapped to an incorrect codepoint. Please consider reviewing the design and codepoint assignment of these to make sure they are correct.

The following glyphs do not have the recommended number of contours:

- Glyph name: A	Contours detected: 1	Expected: 2

- Glyph name: uni00AD	Contours detected: 1	Expected: 0

- Glyph name: registered	Contours detected: 5	Expected: 3 or 4

- Glyph name: Agrave	Contours detected: 2	Expected: 3

- Glyph name: Aacute	Contours detected: 2	Expected: 3

- Glyph name: Acircumflex	Contours detected: 2	Expected: 3

- Glyph name: Atilde	Contours detected: 2	Expected: 3

- Glyph name: Adieresis	Contours detected: 3	Expected: 4

- Glyph name: Aring	Contours detected: 2	Expected: 3 or 4

- Glyph name: AE	Contours detected: 1	Expected: 2

- 19 more.

Use -F or --full-lists to disable shortening of long lists.
[code: contour-count]

WARN: Does the font contain a soft hyphen? (com.google.fonts/check/soft_hyphen)
  • WARN This font has a 'Soft Hyphen' character. [code: softhyphen]
WARN: Check math signs have the same width. (com.google.fonts/check/math_signs_width)
  • WARN The most common width is 916 among a set of 2 math glyphs.
    The following math glyphs have a different width, though:

Width = 1005:
plus

Width = 1115:
equal, minus

Width = 1129:
logicalnot

Width = 1081:
plusminus

Width = 1113:
multiply

Width = 1017:
divide

Width = 1121:
approxequal

Width = 1059:
notequal
[code: width-outliers]

WARN: Checking Vertical Metric Linegaps. (com.google.fonts/check/linegaps)
  • WARN hhea lineGap is not equal to 0. [code: hhea]
WARN: Are there any misaligned on-curve points? (com.google.fonts/check/outline_alignment_miss)
  • WARN The following glyphs have on-curve points which have potentially incorrect y coordinates:

    • ampersand (U+0026): X=471.5,Y=1.5 (should be at baseline 0?)

    • parenleft (U+0028): X=311.0,Y=1440.5 (should be at cap-height 1440?)

    • parenright (U+0029): X=406.0,Y=1440.5 (should be at cap-height 1440?)

    • comma (U+002C): X=181.5,Y=1.0 (should be at baseline 0?)

    • three (U+0033): X=1033.0,Y=1.5 (should be at baseline 0?)

    • six (U+0036): X=1083.0,Y=-1.0 (should be at baseline 0?)

    • eight (U+0038): X=1117.0,Y=1.5 (should be at baseline 0?)

    • semicolon (U+003B): X=217.5,Y=1.0 (should be at baseline 0?)

    • A (U+0041): X=1044.5,Y=1440.5 (should be at cap-height 1440?)

    • K (U+004B): X=1178.0,Y=1441.0 (should be at cap-height 1440?)

    • 69 more.

Use -F or --full-lists to disable shortening of long lists. [code: found-misalignments]

WARN: Are any segments inordinately short? (com.google.fonts/check/outline_short_segments)
  • WARN The following glyphs have segments which seem very short:

    • less (U+003C) contains a short segment L<<302.0,703.0>--<302.0,690.0>>

    • greater (U+003E) contains a short segment L<<614.0,690.0>--<614.0,703.0>>

    • at (U+0040) contains a short segment B<<906.0,-137.0>-<937.0,-137.0>-<972.0,-132.0>>

    • at (U+0040) contains a short segment B<<972.0,-132.0>-<1007.0,-127.0>-<1039.5,-119.0>>

    • at (U+0040) contains a short segment B<<1039.5,-119.0>-<1072.0,-111.0>-<1099.0,-101.5>>

    • at (U+0040) contains a short segment B<<1099.0,-101.5>-<1126.0,-92.0>-<1143.0,-83.0>>

    • at (U+0040) contains a short segment B<<1345.0,92.0>-<1315.0,92.0>-<1281.5,102.5>>

    • at (U+0040) contains a short segment B<<1281.5,102.5>-<1248.0,113.0>-<1218.0,133.5>>

    • at (U+0040) contains a short segment B<<1218.0,133.5>-<1188.0,154.0>-<1164.0,183.0>>

    • at (U+0040) contains a short segment B<<1365.0,292.0>-<1385.0,261.0>-<1414.0,249.0>>

    • 55 more.

Use -F or --full-lists to disable shortening of long lists. [code: found-short-segments]

WARN: Do outlines contain any jaggy segments? (com.google.fonts/check/outline_jaggy_segments)
  • WARN The following glyphs have jaggy segments:

    • braceleft (U+007B): B<<428.0,736.5>-<365.0,705.0>-<274.0,709.0>>/B<<274.0,709.0>-<369.0,707.0>-<432.5,677.0>> = 1.3108268777194043

    • braceright (U+007D): B<<452.5,677.0>-<516.0,707.0>-<611.0,709.0>>/B<<611.0,709.0>-<520.0,705.0>-<457.0,736.5>> = 1.3108268777194043

    • fi (U+FB01): B<<1036.5,1380.0>-<1038.0,1356.0>-<1039.0,1344.0>>/B<<1039.0,1344.0>-<1037.0,1370.0>-<1031.0,1401.0>> = 0.36493633573052764 [code: found-jaggy-segments]

WARN: Ensure soft_dotted characters lose their dot when combined with marks that replace the dot. (com.google.fonts/check/soft_dotted)
  • WARN The dot of soft dotted characters should disappear in other cases, for example: i̒ i̦̒ j̒ j̦̒ į̒ į̦̒

Your font does not cover the following languages that require the soft-dotted feature: Cicipu (Latn, 44,000 speakers), Ijo, Southeast (Latn, 2,471,000 speakers), Ejagham (Latn, 120,000 speakers), Ekpeye (Latn, 226,000 speakers), Avokaya (Latn, 100,000 speakers), Fur (Latn, 1,230,163 speakers), Ukrainian (Cyrl, 29,273,587 speakers), Igbo (Latn, 27,823,640 speakers), Kom (Latn, 360,685 speakers), Dan (Latn, 1,099,244 speakers), Ma’di (Latn, 584,000 speakers), Mfumte (Latn, 79,000 speakers), Lithuanian (Latn, 2,357,094 speakers), Nzakara (Latn, 50,000 speakers), Sar (Latn, 500,000 speakers), Mango (Latn, 77,000 speakers), Koonzime (Latn, 40,000 speakers), Zapotec (Latn, 490,000 speakers), Makaa (Latn, 221,000 speakers), Aghem (Latn, 38,843 speakers), Ngbaka (Latn, 1,020,000 speakers), Kpelle, Guinea (Latn, 622,000 speakers), South Central Banda (Latn, 244,000 speakers), Lugbara (Latn, 2,200,000 speakers), Navajo (Latn, 166,319 speakers), Nateni (Latn, 100,000 speakers), Basaa (Latn, 332,940 speakers), Bete-Bendi (Latn, 100,000 speakers), Gulay (Latn, 250,478 speakers), Yala (Latn, 200,000 speakers), Mundani (Latn, 34,000 speakers), Dii (Latn, 71,000 speakers), Belarusian (Cyrl, 10,064,517 speakers), Dutch (Latn, 31,709,104 speakers), Bafut (Latn, 158,146 speakers), Ebira (Latn, 2,200,000 speakers), Southern Kisi (Latn, 360,000 speakers). [code: soft-dotted]

WARN: Check for codepoints not covered by METADATA subsets. (com.google.fonts/check/metadata/unreachable_subsetting)
  • WARN The following codepoints supported by the font are not covered by
    any subsets defined in the font's metadata file, and will never
    be served. You can solve this by either manually adding additional
    subset declarations to METADATA.pb, or by editing the glyphset
    definitions.

  • U+0020 SPACE: try adding one of: duployan, gurmukhi, coptic, miao, limbu, dogra, phoenician, multani, inscriptional-parthian, latin-ext, korean, mende-kikakui, linear-b, tirhuta, meroitic-hieroglyphs, kayah-li, mongolian, old-italic, makasar, gujarati, wancho, tifinagh, tagalog, tangut, malayalam, saurashtra, newa, sogdian, zanabazar-square, medefaidrin, old-sogdian, lycian, myanmar, samaritan, old-turkic, siddham, tai-le, sora-sompeng, math, cherokee, nko, old-uyghur, nushu, shavian, hanifi-rohingya, grantha, arabic, meroitic, cyrillic, chinese-simplified, sinhala, tamil-supplement, ol-chiki, bhaiksuki, cypriot, kharoshthi, bengali, thai, ogham, adlam, glagolitic, chakma, manichaean, tamil, tai-tham, ahom, khitan-small-script, yezidi, cham, deseret, kaithi, khmer, georgian, vithkuqi, old-persian, meetei-mayek, gothic, nandinagari, tangsa, anatolian-hieroglyphs, japanese, khojki, meroitic-cursive, balinese, cypro-minoan, syriac, marchen, phags-pa, runic, hanunoo, mayan-numerals, indic-siyaq-numbers, takri, old-south-arabian, yi, sharada, mandaic, vai, elbasan, brahmi, javanese, music, masaram-gondi, lepcha, sundanese, ugaritic, pahawh-hmong, chinese-hongkong, soyombo, bassa-vah, osmanya, cyrillic-ext, chorasmian, pau-cin-hau, linear-a, chinese-traditional, caucasian-albanian, nabataean, egyptian-hieroglyphs, khudawadi, znamenny, carian, greek, buginese, armenian, old-permic, cuneiform, hatran, kawi, rejang, tai-viet, modi, warang-citi, symbols, avestan, braille, devanagari, mro, osage, elymaic, imperial-aramaic, nag-mundari, kannada, signwriting, batak, lydian, dives-akuru, lisu, inscriptional-pahlavi, psalter-pahlavi, gunjala-gondi, lao, mahajani, toto, greek-ext, vietnamese, bamum, old-hungarian, oriya, tibetan, buhid, palmyrene, ethiopic, telugu, ottoman-siyaq-numbers, new-tai-lue, old-north-arabian, tagbanwa, canadian-aboriginal, hebrew, nyiakeng-puachue-hmong, syloti-nagri, thaana

  • U+00A0 NO-BREAK SPACE: try adding one of: duployan, gurmukhi, coptic, miao, limbu, dogra, phoenician, multani, inscriptional-parthian, latin-ext, korean, mende-kikakui, linear-b, tirhuta, meroitic-hieroglyphs, kayah-li, mongolian, old-italic, makasar, gujarati, wancho, tifinagh, tagalog, tangut, malayalam, saurashtra, newa, sogdian, zanabazar-square, medefaidrin, old-sogdian, lycian, myanmar, samaritan, old-turkic, siddham, tai-le, sora-sompeng, math, cherokee, nko, old-uyghur, nushu, shavian, hanifi-rohingya, grantha, arabic, meroitic, cyrillic, chinese-simplified, sinhala, tamil-supplement, ol-chiki, bhaiksuki, cypriot, kharoshthi, bengali, thai, ogham, adlam, glagolitic, chakma, manichaean, tamil, tai-tham, ahom, khitan-small-script, yezidi, cham, deseret, kaithi, khmer, georgian, vithkuqi, old-persian, meetei-mayek, gothic, nandinagari, tangsa, anatolian-hieroglyphs, japanese, khojki, meroitic-cursive, balinese, cypro-minoan, syriac, marchen, phags-pa, runic, hanunoo, mayan-numerals, indic-siyaq-numbers, takri, old-south-arabian, yi, sharada, mandaic, vai, elbasan, brahmi, javanese, music, masaram-gondi, lepcha, sundanese, ugaritic, pahawh-hmong, chinese-hongkong, soyombo, bassa-vah, osmanya, cyrillic-ext, chorasmian, pau-cin-hau, linear-a, chinese-traditional, caucasian-albanian, nabataean, egyptian-hieroglyphs, khudawadi, znamenny, carian, greek, buginese, armenian, old-permic, cuneiform, hatran, kawi, rejang, tai-viet, modi, warang-citi, symbols, avestan, braille, devanagari, mro, osage, elymaic, imperial-aramaic, nag-mundari, kannada, signwriting, batak, lydian, dives-akuru, lisu, inscriptional-pahlavi, psalter-pahlavi, gunjala-gondi, lao, mahajani, toto, greek-ext, vietnamese, bamum, old-hungarian, oriya, tibetan, buhid, palmyrene, ethiopic, telugu, ottoman-siyaq-numbers, new-tai-lue, old-north-arabian, tagbanwa, canadian-aboriginal, hebrew, nyiakeng-puachue-hmong, syloti-nagri, thaana

  • U+0100 LATIN CAPITAL LETTER A WITH MACRON: try adding latin-ext

  • U+0101 LATIN SMALL LETTER A WITH MACRON: try adding latin-ext

  • U+0102 LATIN CAPITAL LETTER A WITH BREVE: try adding one of: latin-ext, vietnamese

  • U+0103 LATIN SMALL LETTER A WITH BREVE: try adding one of: latin-ext, vietnamese

  • U+0104 LATIN CAPITAL LETTER A WITH OGONEK: try adding latin-ext

  • U+0105 LATIN SMALL LETTER A WITH OGONEK: try adding latin-ext

  • U+0106 LATIN CAPITAL LETTER C WITH ACUTE: try adding latin-ext

  • U+0107 LATIN SMALL LETTER C WITH ACUTE: try adding latin-ext
    147 more.

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: latin, menu [code: unreachable-subsetting]

WARN: License URL matches License text on name table? (com.google.fonts/check/name/license_url)
  • WARN Please consider using HTTPS URLs at name table entry [plat=1, enc=0, name=14] [code: http-in-license-info]
  • WARN Please consider using HTTPS URLs at name table entry [plat=3, enc=1, name=14] [code: http-in-license-info]
WARN: Checking OS/2 achVendID. (com.google.fonts/check/vendor_id)
  • WARN OS/2 VendorID value 'AOEF' is not yet recognized. If you registered it recently, then it's safe to ignore this warning message. Otherwise, you should set it to your own unique 4 character code, and register it with Microsoft at https://www.microsoft.com/typography/links/vendorlist.aspx
    [code: unknown]
WARN: Are there caret positions declared for every ligature? (com.google.fonts/check/ligature_carets)
  • WARN GDEF table is missing, but it is mandatory to declare it on fonts that provide ligature glyphs because the caret (text cursor) positioning for each ligature must be provided in this table. [code: GDEF-missing]
WARN: Is there kerning info for non-ligated sequences? (com.google.fonts/check/kerning_for_non_ligated_sequences)
  • WARN GPOS table lacks kerning info for the following non-ligated sequences:

    • f + i

    • i + l [code: lacks-kern-info]

WARN: Is the Grid-fitting and Scan-conversion Procedure ('gasp') table set to optimize rendering? (com.google.fonts/check/gasp)
  • INFO These are the ppm ranges declared on the gasp table:

PPM <= 65535:
flag = 0x0A
- Use grayscale rendering
- Use smoothing along multiple axes with ClearType®
[code: ranges]

  • WARN The gasp range 0xFFFF value 0x0A should be set to 0x0F. [code: unset-flags]
WARN: Ensure fonts have ScriptLangTags declared on the 'meta' table. (com.google.fonts/check/meta/script_lang_tags)
  • WARN This font file does not have a 'meta' table. [code: lacks-meta-table]
INFO: Is there a usable "kern" table declared in the font? (com.google.fonts/check/kern_table)
  • INFO Only a few programs may require the kerning info that this font provides on its "kern" table. [code: kern-found]
INFO: List all superfamily filepaths (com.google.fonts/check/superfamily/list)
  • INFO apache/aclonica [code: family-path]
INFO: Font contains all required tables? (com.google.fonts/check/required_tables)
  • INFO This font contains the following optional tables:

    • cvt

    • fpgm

    • loca

    • prep

    • GPOS

    • GSUB

    • gasp

    • kern [code: optional-tables]

INFO: Check for font-v versioning. (com.google.fonts/check/fontv)
  • INFO Version string is: "Version 1.001"
    The version string must ideally include a git commit hash and either a "dev" or a "release" suffix such as in the example below:
    "Version 1.3; git-0d08353-release" [code: bad-format]
INFO: EPAR table present in font? (com.google.fonts/check/epar)
INFO: Show hinting filesize impact. (com.google.fonts/check/hinting_impact)
  • INFO Hinting filesize impact:
Font(file='apache/aclonica/Aclonica-Regular.ttf', context=CheckRunContext(testables=[...], config={'com.google.fonts/check/file_size': {'WARN_SIZE': 1048576, 'FAIL_SIZE': 9437184}, 'custom_order': None, 'explicit_checks': None, 'exclude_checks': None, 'full_lists': False, 'skip_network': False}))
Dehinted Size 65.3kb
Hinted Size 67.1kb
Increase 1.9kb
Change 2.9 %
[code: size-impact]
INFO: Font has old ttfautohint applied? (com.google.fonts/check/old_ttfautohint)
  • INFO Could not detect which version of ttfautohint was used in this font. It is typically specified as a comment in the font version entries of the 'name' table. Such font version strings are currently: ['Version 1.001', 'Version 1.001'] [code: version-not-detected]

[2] Family checks
🔥 FAIL: OS/2.fsSelection bit 7 (USE_TYPO_METRICS) is set in all fonts. (com.google.fonts/check/os2/use_typo_metrics)
  • 🔥 FAIL OS/2.fsSelection bit 7 (USE_TYPO_METRICS) wasNOT set in the following fonts: ['apache/aclonica/Aclonica-Regular.ttf']. [code: missing-os2-fsselection-bit7]
INFO: Check axis ordering on the STAT table. (com.google.fonts/check/STAT/axis_order)
  • INFO All of the fonts lack a STAT table.
    [code: summary]

Summary

💔 ERROR ☠ FATAL 🔥 FAIL ⚠ WARN 💤 SKIP ℹ INFO 🍞 PASS 🔎 DEBUG
0 0 13 19 65 8 152 0
0% 0% 5% 7% 25% 3% 59% 0%

Note: The following loglevels were omitted in this report:

  • SKIP
  • PASS
  • DEBUG

Copy link

FontBakery report

fontbakery version: 0.12.0a1

Experimental checks

These won't break the CI job for now, but will become effective after some time if nobody raises any concern.

[2] Arimo[wght].ttf
🔥 FAIL: Check tabular widths don't have kerning. (com.google.fonts/check/tabular_kerning)
  • 🔥 FAIL Kerning between one and one is not zero [code: has-tabular-kerning]
  • 🔥 FAIL Kerning between one and one is not zero [code: has-tabular-kerning]
  • 🔥 FAIL Kerning between one and one is not zero [code: has-tabular-kerning]
  • 🔥 FAIL Kerning between one and one is not zero [code: has-tabular-kerning]
🔥 FAIL: Ensure the font supports case swapping for all its glyphs. (com.google.fonts/check/case_mapping)
  • 🔥 FAIL The following glyphs lack their case-swapping counterparts:
Glyph present in the font Missing case-swapping counterpart
U+1D8E: LATIN SMALL LETTER Z WITH PALATAL HOOK U+A7C6: LATIN CAPITAL LETTER Z WITH PALATAL HOOK
U+2184: LATIN SMALL LETTER REVERSED C U+2183: ROMAN NUMERAL REVERSED ONE HUNDRED
U+A794: LATIN SMALL LETTER C WITH PALATAL HOOK U+A7C4: LATIN CAPITAL LETTER C WITH PALATAL HOOK

[code: missing-case-counterparts]


[2] Arimo-Italic[wght].ttf
🔥 FAIL: Check tabular widths don't have kerning. (com.google.fonts/check/tabular_kerning)
  • 🔥 FAIL Kerning between one and one is not zero [code: has-tabular-kerning]
  • 🔥 FAIL Kerning between one and one is not zero [code: has-tabular-kerning]
  • 🔥 FAIL Kerning between one and one is not zero [code: has-tabular-kerning]
  • 🔥 FAIL Kerning between one and one is not zero [code: has-tabular-kerning]
🔥 FAIL: Ensure the font supports case swapping for all its glyphs. (com.google.fonts/check/case_mapping)
  • 🔥 FAIL The following glyphs lack their case-swapping counterparts:
Glyph present in the font Missing case-swapping counterpart
U+1D8E: LATIN SMALL LETTER Z WITH PALATAL HOOK U+A7C6: LATIN CAPITAL LETTER Z WITH PALATAL HOOK
U+2184: LATIN SMALL LETTER REVERSED C U+2183: ROMAN NUMERAL REVERSED ONE HUNDRED
U+A794: LATIN SMALL LETTER C WITH PALATAL HOOK U+A7C4: LATIN CAPITAL LETTER C WITH PALATAL HOOK

[code: missing-case-counterparts]


All other checks

[30] Arimo[wght].ttf
🔥 FAIL: Validates that when an instance record is included for the default instance, its subfamilyNameID value is set to a name ID whose string is equal to the string of either name ID 2 or 17, and its postScriptNameID value is set to a name ID whose string is equal to the string of name ID 6. (com.adobe.fonts/check/varfont/valid_default_instance_nameids)
  • 🔥 FAIL 'Regular' instance has the same coordinates as the default instance; its postscript name should be 'Arimo-Regular', instead of 'ArimoRoman-Regular'. [code: invalid-default-instance-postscript-name]
🔥 FAIL: Ensure dotted circle glyph is present and can attach marks. (com.google.fonts/check/dotted_circle)
  • 🔥 FAIL The following glyphs could not be attached to the dotted circle glyph:

    • uni031B [code: unattached-dotted-circle-marks]
🔥 FAIL: METADATA.pb: Check URL on copyright string is the same as in repository_url field. (com.google.fonts/check/metadata/consistent_repo_urls)
  • 🔥 FAIL Please add a family.source.repository_url entry. [code: lacks-repo-url]
🔥 FAIL: Shapes languages in all GF glyphsets. (com.google.fonts/check/glyphsets/shape_languages)
  • 🔥 FAIL GF_Latin_African glyphset:
Language FAIL messages
toq_Latn (Toposa) The locl feature did not affect Eng
nus_Latn (Nuer) The locl feature did not affect Eng
mcn_Latn (Masana) The locl feature did not affect Eng
nnh_Latn (Ngiemboon) The locl feature did not affect Eng
csk_Latn (Jola-Kasa) The locl feature did not affect Eng
fub_Latn (Fulfulde, Adamawa) The locl feature did not affect Eng
ntr_Latn (Delo) The locl feature did not affect Eng
bze_Latn (Jenaama Bozo) The locl feature did not affect Eng
bzx_Latn (Bozo, Hainyaxo) The locl feature did not affect Eng
snf_Latn (Noon) The locl feature did not affect Eng
bax_Latn (Bamun, Latin) The locl feature did not affect Eng
maw_Latn (Mampruli) The locl feature did not affect Eng
krs_Latn (Gbaya (Sudan)) The locl feature did not affect Eng
lam_Latn (Lamba) The locl feature did not affect Eng
mfd_Latn (Mendankwe-Nkwen) The locl feature did not affect Eng
ahl_Latn (Igo) The locl feature did not affect Eng
sig_Latn (Paasaal) The locl feature did not affect Eng
hag_Latn (Hanga) The locl feature did not affect Eng
bib_Latn (Bissa) The locl feature did not affect Eng
yav_Latn (Yangben) The locl feature did not affect Eng
vai_Latn (Vai (Latin)) The locl feature did not affect Eng
nnw_Latn (Southern Nuni) The locl feature did not affect Eng
gnd_Latn (Zulgo-Gemzek) The locl feature did not affect Eng
ahs_Latn (Ashe) The locl feature did not affect Eng
mcp_Latn (Makaa) The locl feature did not affect Eng
bsp_Latn (Baga Sitemu) The locl feature did not affect Eng
mmu_Latn (Mmaala) The locl feature did not affect Eng
dzg_Latn (Dazaga) The locl feature did not affect Eng
nmg_Latn (Kwasio) The locl feature did not affect Eng
lgg_Latn (Lugbara) The locl feature did not affect Eng
mcu_Latn (Mambila, Cameroon) The locl feature did not affect Eng
agc_Latn (Agatu) The locl feature did not affect Eng
rub_Latn (Gungu) The locl feature did not affect Eng
ife_Latn (Ifè) The locl feature did not affect Eng
bud_Latn (Ntcham) The locl feature did not affect Eng
tod_Latn (Toma) The locl feature did not affect Eng
bim_Latn (Bimoba) The locl feature did not affect Eng
tem_Latn (Timne) The locl feature did not affect Eng
srr_Latn (Serer) The locl feature did not affect Eng
taq_Latn (Tamasheq, Latin) The locl feature did not affect Eng
adj_Latn (Adioukrou) The locl feature did not affect Eng
shz_Latn (Syenara Senoufo) The locl feature did not affect Eng
lmp_Latn (Limbum) The locl feature did not affect Eng
mwk_Latn (Kita Maninkakan) The locl feature did not affect Eng
mfq_Latn (Moba) The locl feature did not affect Eng
cae_Latn (Lehar) The locl feature did not affect Eng
mbu_Latn (Mbula-Bwazza) The locl feature did not affect Eng
ndv_Latn (Ndut) The locl feature did not affect Eng
sld_Latn (Sissala) The locl feature did not affect Eng
bbo_Latn (Northern Bobo Madaré) The locl feature did not affect Eng
mas_Latn (Masai) The locl feature did not affect Eng
byv_Latn (Medumba) Shaper didn't attach gravecomb to uni2C6D
^ Shaper didn't attach uni030C to uni2C6D
^ Shaper didn't attach uni0302 to uni2C6D
^ Shaper didn't attach gravecomb to uni2C6D
^ Shaper didn't attach uni0302 to uni2C6D
^ Shaper didn't attach uni030C to uni2C6D
^ The locl feature did not affect Eng
anv_Latn (Denya) The locl feature did not affect Eng
ewo_Latn (Ewondo) The locl feature did not affect Eng
tik_Latn (Tikar) The locl feature did not affect Eng
fue_Latn (Fulfulde, Borgu) The locl feature did not affect Eng
dnj_Latn_LR (Dan) Shaper didn't attach tildecomb to uniA78D
^ Shaper didn't attach uni0302 to uniA78D
^ Shaper didn't attach acutecomb to uniA78D
^ Shaper didn't attach gravecomb to uniA78D
mdj_Latn (Mangbetu) The locl feature did not affect Eng
xuo_Latn (Kuo) The locl feature did not affect Eng
dts_Latn (Dogon, Toro So) The locl feature did not affect Eng
xon_Latn (Konkomba) The locl feature did not affect Eng
bqj_Latn (Bandial) The locl feature did not affect Eng
daa_Latn (Dangaléat) The locl feature did not affect Eng
nuv_Latn (Nuni, Northern) The locl feature did not affect Eng
mfi_Latn (Wandala) The locl feature did not affect Eng
bza_Latn (Bandi) The locl feature did not affect Eng
muy_Latn (Muyang) The locl feature did not affect Eng
yas_Latn (Nugunu) The locl feature did not affect Eng
etu_Latn (Ejagham) The locl feature did not affect Eng
yat_Latn (Yambeta) The locl feature did not affect Eng
tpm_Latn (Tampulma) The locl feature did not affect Eng
lok_Latn (Loko) The locl feature did not affect Eng
dyi_Latn (Sénoufo, Djimini) The locl feature did not affect Eng
meq_Latn (Merey) The locl feature did not affect Eng
ncu_Latn (Chumburung) The locl feature did not affect Eng
xrb_Latn (Karaboro, Eastern) The locl feature did not affect Eng
lun_Latn (Lunda) The locl feature did not affect Eng
mbo_Latn (Mbo) The locl feature did not affect Eng
idu_Latn (Idoma) The locl feature did not affect Eng
dje_Latn (Zarma) The locl feature did not affect Eng
dnj_Latn (Dan) Some base glyphs were missing: Ɤ, Ɤ̀, Ɤ́, Ɤ̂, Ɤ̄, Ɤ̋, Ɤ̏
^ Shaper produced a .notdef
^ Shaper produced a .notdef
^ The locl feature did not affect Eng
cme_Latn (Cerma) The locl feature did not affect Eng
fuh_Latn (Fulfulde, Western Niger) The locl feature did not affect Eng
fvr_Latn (Fur) The locl feature did not affect Eng
loq_Latn (Lobala) The locl feature did not affect Eng
kqp_Latn (Kimré) The locl feature did not affect Eng
mgc_Latn (Morokodo) The locl feature did not affect Eng
pil_Latn (Yom) The locl feature did not affect Eng
mzw_Latn (Deg) The locl feature did not affect Eng
bqv_Latn (Koro Wachi) The locl feature did not affect Eng
dua_Latn (Duala) The locl feature did not affect Eng
kpo_Latn (Ikposo) The locl feature did not affect Eng
mnf_Latn (Mundani) The locl feature did not affect Eng
vut_Latn (Vute) The locl feature did not affect Eng
gmm_Latn (Gbaya-Mbodomo) The locl feature did not affect Eng
ikx_Latn (Ik) The locl feature did not affect Eng
lem_Latn (Nomaande) The locl feature did not affect Eng
nko_Latn (Nkonya) The locl feature did not affect Eng
avn_Latn (Avatime) The locl feature did not affect Eng
gna_Latn (Kaansa) The locl feature did not affect Eng
xsm_Latn (Kasem) The locl feature did not affect Eng
ffm_Latn (Maasina Fulfulde) The locl feature did not affect Eng
yam_Latn (Yamba) The locl feature did not affect Eng
ny_Latn (Nyanja) The locl feature did not affect Eng
ses_Latn (Koyraboro Senni) The locl feature did not affect Eng
emk_Latn (Maninkakan, Eastern) The locl feature did not affect Eng
kzc_Latn (Bondoukou Kulango) Shaper didn't attach tildecomb to uniA7B6
^ Shaper didn't attach tildecomb to uniA7AE
^ Shaper didn't attach tildecomb to uniA7B7
^ Shaper didn't attach tildecomb to uniA7AE
^ Shaper didn't attach tildecomb to uniA7B7
^ Shaper didn't attach tildecomb to uniA7B6
^ The locl feature did not affect Eng
ach_Latn (Acoli) The locl feature did not affect Eng
kbp_Latn (Kabiyé) The locl feature did not affect Eng
gux_Latn (Gourmanchéma) The locl feature did not affect Eng
lg_Latn (Ganda) The locl feature did not affect Eng
knp_Latn (Kwanja) The locl feature did not affect Eng
myk_Latn (Mamara Senoufo) The locl feature did not affect Eng
mev_Latn (Mano) The locl feature did not affect Eng
pbi_Latn (Parkwa) The locl feature did not affect Eng
bzw_Latn (Basa) The locl feature did not affect Eng
khq_Latn (Koyra Chiini) The locl feature did not affect Eng
mfv_Latn (Mandjak) The locl feature did not affect Eng
moa_Latn (Mwan) The locl feature did not affect Eng
ddn_Latn (Dendi) The locl feature did not affect Eng
soy_Latn (Miyobe) The locl feature did not affect Eng
gaa_Latn (Ga) The locl feature did not affect Eng
wwa_Latn (Waama) The locl feature did not affect Eng
jgo_Latn (Ngomba) The locl feature did not affect Eng
bum_Latn (Bulu) The locl feature did not affect Eng
fmp_Latn (Fe’fe’) Shaper didn't attach uni030C to uni2C6D
^ Shaper didn't attach uni0304 to uni2C6D
^ Shaper didn't attach gravecomb to uni2C6D
^ Shaper didn't attach acutecomb to uni2C6D
^ Shaper didn't attach acutecomb to uni2C6D
^ Shaper didn't attach gravecomb to uni2C6D
^ Shaper didn't attach uni030C to uni2C6D
^ Shaper didn't attach uni0304 to uni2C6D
^ The locl feature did not affect Eng
bjt_Latn (Balanta-Ganja) The locl feature did not affect Eng
kqs_Latn (Kissi, Northern) The locl feature did not affect Eng
mdt_Latn (Mbere) The locl feature did not affect Eng
log_Latn (Logo) The locl feature did not affect Eng
keu_Latn (Akebu) The locl feature did not affect Eng
biv_Latn (Birifor, Southern) The locl feature did not affect Eng
mnk_Latn (Mandinka) The locl feature did not affect Eng
xwe_Latn (Gbe, Xwela) The locl feature did not affect Eng
twq_Latn (Tasawaq) The locl feature did not affect Eng
ken_Latn (Kenyang) The locl feature did not affect Eng
kib_Latn (Koalib) Shaper didn't attach gravecomb to uni2C6F
^ Shaper didn't attach acutecomb to uni2C6F
^ Shaper didn't attach uni0302 to uni2C6F
^ The locl feature did not affect Eng
pnz_Latn (Pana (Central African Republic)) The locl feature did not affect Eng
ee_Latn (Ewe) The locl feature did not affect Eng
ozm_Latn (Koonzime) The locl feature did not affect Eng
kzr_Latn (Karang) The locl feature did not affect Eng
cko_Latn (Anufo) The locl feature did not affect Eng
gkp_Latn (Kpelle, Guinea) The locl feature did not affect Eng
sok_Latn (Sokoro) The locl feature did not affect Eng
tuq_Latn (Tedaga) The locl feature did not affect Eng
dyu_Latn (Dyula) The locl feature did not affect Eng
mor_Latn (Moro) Some base glyphs were missing: Ꟈ, ꟈ
^ Shaper produced a .notdef
^ The locl feature did not affect Eng
knf_Latn (Mankanya) The locl feature did not affect Eng
god_Latn (Godié) The locl feature did not affect Eng
tvu_Latn (Tunen) The locl feature did not affect Eng
sil_Latn (Sisaala, Tumulung) The locl feature did not affect Eng
wci_Latn (Gbe, Waci) The locl feature did not affect Eng
ekm_Latn (Elip) The locl feature did not affect Eng
bfa_Latn (Bari) The locl feature did not affect Eng
dop_Latn (Lukpa) The locl feature did not affect Eng
sav_Latn (Saafi-Saafi) The locl feature did not affect Eng
dgi_Latn (Northern Dagara) The locl feature did not affect Eng
bss_Latn (Akoose) The locl feature did not affect Eng
dag_Latn (Dagbani) The locl feature did not affect Eng
kia_Latn (Kim) The locl feature did not affect Eng
kmy_Latn (Koma) The locl feature did not affect Eng
fuc_Latn (Pulaar) The locl feature did not affect Eng
nym_Latn (Nyamwezi) The locl feature did not affect Eng
naw_Latn (Nawuri) The locl feature did not affect Eng
dno_Latn (Ndrulo) The locl feature did not affect Eng
boz_Latn (Tiéyaxo Bozo) The locl feature did not affect Eng
bas_Latn (Basaa) The locl feature did not affect Eng
nhb_Latn (Beng) The locl feature did not affect Eng
wo_Latn (Wolof) The locl feature did not affect Eng
dtm_Latn (Tomo Kan Dogon) The locl feature did not affect Eng
bm_Latn (Bambara) The locl feature did not affect Eng
xed_Latn (Hdi) The locl feature did not affect Eng
bbj_Latn (Ghomala) The locl feature did not affect Eng
agq_Latn (Aghem) The locl feature did not affect Eng
kss_Latn (Southern Kisi) The locl feature did not affect Eng
fuq_Latn (Central-Eastern Niger Fulfulde) The locl feature did not affect Eng
saf_Latn (Safaliba) The locl feature did not affect Eng
gjn_Latn (Gonja) The locl feature did not affect Eng
dow_Latn (Doyayo) The locl feature did not affect Eng
lia_Latn (Limba, West-Central) The locl feature did not affect Eng
nyb_Latn (Nyangbo) The locl feature did not affect Eng
dip_Latn (Dinka, Northeastern) The locl feature did not affect Eng
ksf_Latn (Bafia) The locl feature did not affect Eng
vag_Latn (Vagla) The locl feature did not affect Eng
kdh_Latn (Tem) The locl feature did not affect Eng
sxw_Latn (Saxwe Gbe) The locl feature did not affect Eng
lig_Latn (Ligbi) The locl feature did not affect Eng
laj_Latn (Lango [Uganda]) The locl feature did not affect Eng
fan_Latn (Fang) The locl feature did not affect Eng
ktj_Latn (Krumen, Plapo) The locl feature did not affect Eng
ted_Latn (Krumen, Tepo) The locl feature did not affect Eng
kye_Latn (Krache) The locl feature did not affect Eng
azo_Latn (Awing) The locl feature did not affect Eng
pug_Latn (Phuie) The locl feature did not affect Eng
acd_Latn (Gikyode) The locl feature did not affect Eng
mur_Latn (Murle) The locl feature did not affect Eng
ttq_Latn (Tawallammat Tamajaq) The locl feature did not affect Eng
gde_Latn (Gude) The locl feature did not affect Eng
nza_Latn (Tigon Mbembe) The locl feature did not affect Eng
neb_Latn (Toura) The locl feature did not affect Eng
bfd_Latn (Bafut) The locl feature did not affect Eng
bcw_Latn (Bana) The locl feature did not affect Eng
ade_Latn (Adele) The locl feature did not affect Eng
spp_Latn (Sénoufo, Supyire) The locl feature did not affect Eng
gej_Latn (Gen) The locl feature did not affect Eng
gur_Latn (Frafra) The locl feature did not affect Eng
bex_Latn (Jur Modo) The locl feature did not affect Eng
gov_Latn (Goo) Some base glyphs were missing: Ɤ, Ɤ̀, Ɤ́, Ɤ̂
^ Shaper produced a .notdef
mls_Latn (Masalit) The locl feature did not affect Eng
kkj_Latn (Kako) The locl feature did not affect Eng
nhu_Latn (Noone) The locl feature did not affect Eng
mua_Latn (Mundang) The locl feature did not affect Eng
ndz_Latn (Ndogo) The locl feature did not affect Eng
nfr_Latn (Nafaanra) The locl feature did not affect Eng
bav_Latn (Vengo) The locl feature did not affect Eng
kao_Latn (Xaasongaxango) The locl feature did not affect Eng
lee_Latn (Lyélé) The locl feature did not affect Eng
lns_Latn (Lamnso’) The locl feature did not affect Eng
gud_Latn (Dida, Yocoboué) The locl feature did not affect Eng
mgo_Latn (Metaʼ) The locl feature did not affect Eng
cou_Latn (Wamey) The locl feature did not affect Eng
sef_Latn (Cebaara Senoufo) The locl feature did not affect Eng
nfu_Latn (Mfumte) The locl feature did not affect Eng
nku_Latn (Kulango, Bouna) The locl feature did not affect Eng
nmz_Latn (Nawdm) The locl feature did not affect Eng
gng_Latn (Ngangam) The locl feature did not affect Eng
wan_Latn (Wan) The locl feature did not affect Eng
avu_Latn (Avokaya) The locl feature did not affect Eng
las_Latn (Lama (Togo)) The locl feature did not affect Eng
tnr_Latn (Ménik) The locl feature did not affect Eng
kvf_Latn (Kabalai) The locl feature did not affect Eng
tcd_Latn (Tafi) The locl feature did not affect Eng
sbd_Latn (Southern Samo) The locl feature did not affect Eng
ig_Latn (Igbo) The locl feature did not affect Eng
ybb_Latn (Yemba) The locl feature did not affect Eng
fod_Latn (Foodo) The locl feature did not affect Eng
dur_Latn (Dii) The locl feature did not affect Eng
ajg_Latn (Aja) The locl feature did not affect Eng
dyo_Latn (Jola-Fonyi) The locl feature did not affect Eng
blo_Latn (Anii) The locl feature did not affect Eng
kyf_Latn (Kouya) The locl feature did not affect Eng
bsc_Latn (Bassari) The locl feature did not affect Eng
udu_Latn (Uduk) The locl feature did not affect Eng
fuf_Latn (Pular) The locl feature did not affect Eng
kyq_Latn (Kenga) The locl feature did not affect Eng
bkm_Latn (Kom) The locl feature did not affect Eng
kus_Latn (Kusaal) The locl feature did not affect Eng

[code: failed-language-shaping]

  • WARN GF_Latin_African glyphset:
Language FAIL messages
tod_Latn (Toma) No variant glyphs were found for uni028B
^ No variant glyphs were found for uni01B2
ggn_Latn (Eastern Gurung, Latin) No exemplar glyphs were defined for language Eastern Gurung, Latin
dnj_Latn (Dan) Some auxiliary glyphs were missing: Ɤ, Ɤ̀, Ɤ́, Ɤ̂, Ɤ̄, Ɤ̋, Ɤ̏
^ No variant glyphs were found for uni0181
gaa_Latn (Ga) No variant glyphs were found for uni01A9
^ No variant glyphs were found for uni01B7
cch_Latn (Atsam) No exemplar glyphs were defined for language Atsam
mor_Latn (Moro) Some auxiliary glyphs were missing: Ꟈ, ꟈ
kfo_Latn (Koro) No exemplar glyphs were defined for language Koro
hna_Latn (Mina) No exemplar glyphs were defined for language Mina
mgy_Latn (Mbunga) No exemplar glyphs were defined for language Mbunga
syi_Latn (Seki) No exemplar glyphs were defined for language Seki
gov_Latn (Goo) Some auxiliary glyphs were missing: Ɤ, Ɤ̀, Ɤ́, Ɤ̂
amo_Latn (Amo) No exemplar glyphs were defined for language Amo

[code: warning-language-shaping]

🔥 FAIL: Does DESCRIPTION file contain a upstream Git repo URL? (com.google.fonts/check/description/git_url)
  • 🔥 FAIL Please host your font project on a public Git repo (such as GitHub or GitLab) and place a link in the DESCRIPTION.en_us.html file. [code: lacks-git-url]
🔥 FAIL: Check copyright namerecords match license file. (com.google.fonts/check/name/license)
  • 🔥 FAIL License file LICENSE.txt exists but NameID 13 (LICENSE DESCRIPTION) value on platform 3 (WINDOWS) is not specified for that. Value was: "This Font Software is licensed under the SIL Open Font License, Version 1.1. This Font Software is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the SIL Open Font License for the specific language, permissions and limitations governing your use of this Font Software." Must be changed to "Licensed under the Apache License, Version 2.0" [code: wrong]
🔥 FAIL: Check license file has good copyright string. (com.google.fonts/check/license/OFL_copyright)
  • 🔥 FAIL First line in license file is:

"apache license"

which does not match the expected format, similar to:

"Copyright 2022 The Familyname Project Authors (git url)" [code: bad-format]

🔥 FAIL: Check variable font instances (com.google.fonts/check/fvar_instances)
  • 🔥 FAIL fvar instances are incorrect:
  • Add missing instances
Name current expected
Regular wght=400.0 wght=400.0
Medium N/A wght=500.0
SemiBold N/A wght=600.0
Bold wght=700.0 wght=700.0
🔥 FAIL: Font enables smart dropout control in "prep" table instructions? (com.google.fonts/check/smart_dropout)
  • 🔥 FAIL The 'prep' table does not contain TrueType instructions enabling smart dropout control. To fix, export the font with autohinting enabled, or run ttfautohint on the font, or run the gftools fix-nonhinting script. [code: lacks-smart-dropout]
WARN: Does the font have a DSIG table? (com.google.fonts/check/dsig)
  • WARN This font has a digital signature (DSIG table) which is only required - even if only a placeholder - on old programs like MS Office 2013 in order to work properly.
    The current recommendation is to completely remove the DSIG table. [code: found-DSIG]
WARN: Font has **proper** whitespace glyph names? (com.google.fonts/check/whitespace_glyphnames)
  • WARN Glyph 0x00A0 is called "nbspace": Change to "uni00A0" [code: not-recommended-00a0]
WARN: Check that legacy accents aren't used in composite glyphs. (com.google.fonts/check/legacy_accents)
  • WARN Glyph "Aring" has a legacy accent component (ring). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ccedilla" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "aacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "agrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "acircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "adieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "atilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "aring" has a legacy accent component (ring). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ccedilla" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "eacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "egrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ecircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "edieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "iacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "igrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "icircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "idieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ntilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "oacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ograve" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ocircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "odieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "otilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ugrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ucircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "udieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ydieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "scaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "zcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "yacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "gbreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Idotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Scedilla" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "scedilla" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "cacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ccaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "abreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Aogonek" has a legacy accent component (ogonek). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "aogonek" has a legacy accent component (ogonek). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Eogonek" has a legacy accent component (ogonek). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "eogonek" has a legacy accent component (ogonek). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ecaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ldot" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ldot" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "nacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ncaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ohungarumlaut" has a legacy accent component (hungarumlaut). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "racute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "rcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "sacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Tcommaaccent" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "tcommaaccent" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Uring" has a legacy accent component (ring). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uring" has a legacy accent component (ring). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uhungarumlaut" has a legacy accent component (hungarumlaut). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "zacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Zdotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "zdotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ccircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Cdotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "cdotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ebreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Edotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "edotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "gcircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Gdotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "gdotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "itilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ibreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Iogonek" has a legacy accent component (ogonek). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "iogonek" has a legacy accent component (ogonek). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "obreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "scircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "utilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ubreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Uogonek" has a legacy accent component (ogonek). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uogonek" has a legacy accent component (ogonek). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "wcircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ycircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "aringacute" has a legacy accent component (ring). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "aringacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "aeacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "oslashacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "wgrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "wacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "wdieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ygrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "iotadieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "upsilondieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni0451" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni0453" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni0457" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni045C" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "grave.alt1" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "grave.alt2" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "grave.alt3" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "acute.alt1" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "acute.alt2" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "acute.alt3" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "tilde.alt1" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "tilde.alt2" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "breve.alt1" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "circumflex.alt1" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "acute.alt4" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "acute.alt5" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "grave.alt4" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "grave.alt5" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "tilde.alt3" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "tilde.alt4" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "tilde.alt5" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "tilde.alt6" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "tilde.alt7" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "tilde.alt8" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "tilde.alt9" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "tilde.alt10" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "tilde.alt11" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "tilde.alt12" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "tilde.alt13" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "acircumflexdotbelow" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "abrevedotbelow" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "etilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ecircumflexdotbelow" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ocircumflexdotbelow" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ohornacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ohorngrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ohorntilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uhornacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uhorngrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uhorntilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ytilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01CE" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01D0" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01D2" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01D4" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01D6" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01D8" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01D8" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01DA" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01DA" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01DC" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01DC" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01C5" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01C6" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01DF" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01E1" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01E7" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01EA" has a legacy accent component (ogonek). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01EB" has a legacy accent component (ogonek). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01EC" has a legacy accent component (ogonek). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01ED" has a legacy accent component (ogonek). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01EF" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01F0" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01F5" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01F9" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni0226" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni0227" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni0228" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni0229" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni022B" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni022D" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni022E" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni022F" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni0231" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni02EC" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni0450" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni045D" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni04D1" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni04D3" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni04D7" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni04DB" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni04DD" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni04DF" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni04E5" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni04E7" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni04EB" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni04ED" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni04F1" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni04F3" has a legacy accent component (hungarumlaut). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni04F5" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni04F9" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E02" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E03" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E08" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E09" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E09" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E0A" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E0B" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E15" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E17" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E1C" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E1D" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E1D" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E1E" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E1F" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E22" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E23" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E27" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E28" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E29" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E2B" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E2F" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E2F" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E3F" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E40" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E41" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E44" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E45" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E4D" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E4F" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E51" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E53" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E55" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E56" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E57" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E58" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E59" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E60" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E61" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E67" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E68" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E69" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E6A" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E6B" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E7B" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E7D" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E86" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E87" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E8A" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E8B" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E8D" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E8E" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E8F" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E91" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E97" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E98" has a legacy accent component (ring). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E99" has a legacy accent component (ring). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E9B" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1FB0" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1FB6" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1FB7" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1FC6" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1FC7" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1FD0" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1FD2" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1FD3" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1FD6" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1FE0" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1FE2" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1FE3" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1FE6" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1FF6" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1FF7" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03B1030603130300" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03B1030603130301" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03B1030603140300" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03B1030603140301" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03B9030603130300" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03B9030603130301" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03B9030603140300" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03B9030603140301" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03C5030603130300" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03C5030603130301" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03C5030603140300" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03C5030603140301" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03B9030803040300" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03B9030803040301" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03B9030803060300" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03B9030803060300" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03B9030803060301" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03B9030803060301" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03C5030803040300" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03C5030803040301" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03C5030803060300" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03C5030803060300" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03C5030803060301" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03C5030803060301" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1AB0" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1AB0" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1DCB" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1DCC" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1DD3" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1DD3" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni212B" has a legacy accent component (ring). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni2C7A" has a legacy accent component (ring). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uniA690" has a legacy accent component (ogonek). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uniA691" has a legacy accent component (ogonek). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uniAB38" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uniAB38" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Lcommaaccent.loclMAH" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "lcommaaccent.loclMAH" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ncommaaccent.loclMAH" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ncommaaccent.loclMAH" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
WARN: Check font contains no unreachable glyphs (com.google.fonts/check/unreachable_glyphs)
  • WARN The following glyphs could not be reached by codepoint or substitution rules:

    • Eng.alt1

    • Eng.alt2

    • Eng.alt3

    • acute.alt1

    • acute.alt2

    • acute.alt3

    • acute.alt4

    • acute.alt5

    • aleflamedhatafsegol

    • aleflamedsegol

    • 52 more.

Use -F or --full-lists to disable shortening of long lists.
[code: unreachable-glyphs]

WARN: Does the font contain a soft hyphen? (com.google.fonts/check/soft_hyphen)
  • WARN This font has a 'Soft Hyphen' character. [code: softhyphen]
WARN: Detect any interpolation issues in the font. (com.google.fonts/check/interpolation_issues)
  • WARN Interpolation issues were found in the font:

    • Contour order differs in glyph 'uniA718': [0, 1] in wght=400, [1, 0] in wght=700. [code: interpolation-issues]
WARN: Check math signs have the same width. (com.google.fonts/check/math_signs_width)
  • WARN The most common width is 1196 among a set of 7 math glyphs.
    The following math glyphs have a different width, though:

Width = 1124:
approxequal, greaterequal, lessequal, plusminus, divide, notequal

Width = 2005:
orthogonal

Width = 1195:
equivalence
[code: width-outliers]

WARN: Checking Vertical Metric Linegaps. (com.google.fonts/check/linegaps)
  • WARN hhea lineGap is not equal to 0. [code: hhea]
WARN: Ensure soft_dotted characters lose their dot when combined with marks that replace the dot. (com.google.fonts/check/soft_dotted)
  • WARN The dot of soft dotted characters used in orthographies must disappear in the following strings: į̀ į́ į̂ į̃ į̄ į̌ ɨ̧̀ ɨ̧́ ɨ̧̂ ɨ̧̌ ɨ̱̀ ɨ̱́ ɨ̱̈ і́ ḭ̀ ḭ́ ḭ̄ ị̀ ị́ ị̂ ị̃ ị̄

The dot of soft dotted characters should disappear in other cases, for example: i҇ i᪰ i᪱ i᪲ i᪳ i᪴ i᪻ i᪼ i᷋ i᷌ i᷑ i᷒ iᷓ iᷔ iᷕ iᷖ iᷗ iᷘ iᷙ iᷚ

Your font fully covers the following languages that require the soft-dotted feature: Ebira (Latn, 2,200,000 speakers), Navajo (Latn, 166,319 speakers), Cicipu (Latn, 44,000 speakers), Gulay (Latn, 250,478 speakers), Ukrainian (Cyrl, 29,273,587 speakers), Mango (Latn, 77,000 speakers), Lithuanian (Latn, 2,357,094 speakers), Zapotec (Latn, 490,000 speakers), Ngbaka (Latn, 1,020,000 speakers), Nzakara (Latn, 50,000 speakers), Ma’di (Latn, 584,000 speakers), Sar (Latn, 500,000 speakers), Nateni (Latn, 100,000 speakers), Yala (Latn, 200,000 speakers), Ijo, Southeast (Latn, 2,471,000 speakers), Belarusian (Cyrl, 10,064,517 speakers), Ekpeye (Latn, 226,000 speakers), Bete-Bendi (Latn, 100,000 speakers), Dutch (Latn, 31,709,104 speakers), South Central Banda (Latn, 244,000 speakers).

Your font does not cover the following languages that require the soft-dotted feature: Igbo (Latn, 27,823,640 speakers), Kpelle, Guinea (Latn, 622,000 speakers), Aghem (Latn, 38,843 speakers), Dan (Latn, 1,099,244 speakers), Southern Kisi (Latn, 360,000 speakers), Mfumte (Latn, 79,000 speakers), Avokaya (Latn, 100,000 speakers), Mundani (Latn, 34,000 speakers), Dii (Latn, 71,000 speakers), Kom (Latn, 360,685 speakers), Ejagham (Latn, 120,000 speakers), Basaa (Latn, 332,940 speakers), Koonzime (Latn, 40,000 speakers), Bafut (Latn, 158,146 speakers), Makaa (Latn, 221,000 speakers), Lugbara (Latn, 2,200,000 speakers), Fur (Latn, 1,230,163 speakers). [code: soft-dotted]

WARN: Check for codepoints not covered by METADATA subsets. (com.google.fonts/check/metadata/unreachable_subsetting)
  • WARN The following codepoints supported by the font are not covered by
    any subsets defined in the font's metadata file, and will never
    be served. You can solve this by either manually adding additional
    subset declarations to METADATA.pb, or by editing the glyphset
    definitions.

  • U+0000 : try adding one of: nag-mundari, pau-cin-hau, armenian, malayalam, old-hungarian, medefaidrin, egyptian-hieroglyphs, mayan-numerals, nko, cypriot, old-uyghur, nabataean, dogra, kharoshthi, yi, linear-a, hatran, linear-b, nandinagari, adlam, runic, hanunoo, lepcha, ottoman-siyaq-numbers, old-persian, osage, osmanya, coptic, buhid, pahawh-hmong, chinese-simplified, mro, tai-tham, vithkuqi, cypro-minoan, siddham, limbu, masaram-gondi, elymaic, manichaean, kawi, imperial-aramaic, symbols, tibetan, meroitic-hieroglyphs, ugaritic, lisu, mende-kikakui, old-permic, sora-sompeng, old-sogdian, brahmi, modi, nyiakeng-puachue-hmong, japanese, syriac, tai-viet, shavian, sinhala, phags-pa, meroitic, inscriptional-parthian, meroitic-cursive, elbasan, thaana, miao, new-tai-lue, tangsa, glagolitic, gothic, old-turkic, dives-akuru, samaritan, ol-chiki, telugu, marchen, grantha, psalter-pahlavi, lycian, hanifi-rohingya, carian, chorasmian, nushu, syloti-nagri, devanagari, chinese-traditional, kannada, tamil, indic-siyaq-numbers, soyombo, bhaiksuki, toto, old-north-arabian, makasar, tamil-supplement, znamenny, duployan, gujarati, avestan, deseret, takri, caucasian-albanian, palmyrene, vai, georgian, wancho, meetei-mayek, phoenician, inscriptional-pahlavi, bamum, chinese-hongkong, korean, myanmar, khudawadi, sundanese, cham, multani, batak, ethiopic, newa, ogham, sogdian, lao, sharada, cuneiform, gunjala-gondi, oriya, lydian, buginese, signwriting, arabic, math, gurmukhi, kayah-li, mahajani, tifinagh, tai-le, bengali, yezidi, anatolian-hieroglyphs, old-south-arabian, tagbanwa, khitan-small-script, tirhuta, chakma, old-italic, rejang, balinese, javanese, kaithi, canadian-aboriginal, bassa-vah, warang-citi, music, cherokee, mandaic, zanabazar-square, khojki, mongolian, thai, tangut, saurashtra, ahom, khmer, tagalog, braille

  • U+000D : try adding one of: nag-mundari, pau-cin-hau, armenian, malayalam, old-hungarian, medefaidrin, egyptian-hieroglyphs, mayan-numerals, nko, cypriot, old-uyghur, nabataean, dogra, kharoshthi, yi, linear-a, hatran, linear-b, nandinagari, adlam, runic, hanunoo, lepcha, ottoman-siyaq-numbers, old-persian, osage, osmanya, coptic, buhid, pahawh-hmong, chinese-simplified, mro, tai-tham, vithkuqi, cypro-minoan, siddham, limbu, masaram-gondi, elymaic, manichaean, kawi, imperial-aramaic, symbols, tibetan, meroitic-hieroglyphs, ugaritic, lisu, mende-kikakui, old-permic, sora-sompeng, old-sogdian, brahmi, modi, nyiakeng-puachue-hmong, japanese, syriac, tai-viet, shavian, sinhala, phags-pa, meroitic, inscriptional-parthian, meroitic-cursive, elbasan, thaana, miao, new-tai-lue, tangsa, glagolitic, gothic, old-turkic, dives-akuru, samaritan, ol-chiki, telugu, marchen, grantha, psalter-pahlavi, lycian, hanifi-rohingya, carian, chorasmian, nushu, syloti-nagri, devanagari, chinese-traditional, kannada, tamil, indic-siyaq-numbers, soyombo, bhaiksuki, toto, old-north-arabian, makasar, tamil-supplement, znamenny, duployan, gujarati, avestan, deseret, takri, caucasian-albanian, palmyrene, vai, georgian, wancho, meetei-mayek, phoenician, inscriptional-pahlavi, bamum, chinese-hongkong, korean, myanmar, khudawadi, sundanese, cham, multani, batak, ethiopic, newa, ogham, sogdian, lao, sharada, cuneiform, gunjala-gondi, oriya, lydian, buginese, signwriting, arabic, math, gurmukhi, kayah-li, mahajani, tifinagh, tai-le, bengali, yezidi, anatolian-hieroglyphs, old-south-arabian, tagbanwa, khitan-small-script, tirhuta, chakma, old-italic, rejang, balinese, javanese, kaithi, canadian-aboriginal, bassa-vah, warang-citi, music, cherokee, mandaic, zanabazar-square, khojki, mongolian, thai, tangut, saurashtra, ahom, khmer, tagalog, braille

  • U+0020 SPACE: try adding one of: nag-mundari, pau-cin-hau, armenian, malayalam, old-hungarian, medefaidrin, egyptian-hieroglyphs, mayan-numerals, nko, cypriot, old-uyghur, nabataean, dogra, kharoshthi, yi, linear-a, hatran, linear-b, nandinagari, adlam, runic, hanunoo, lepcha, ottoman-siyaq-numbers, old-persian, osage, osmanya, coptic, buhid, pahawh-hmong, chinese-simplified, mro, tai-tham, vithkuqi, cypro-minoan, siddham, limbu, masaram-gondi, elymaic, manichaean, kawi, imperial-aramaic, symbols, tibetan, meroitic-hieroglyphs, ugaritic, lisu, mende-kikakui, old-permic, sora-sompeng, old-sogdian, brahmi, modi, nyiakeng-puachue-hmong, japanese, syriac, tai-viet, shavian, sinhala, phags-pa, meroitic, inscriptional-parthian, meroitic-cursive, elbasan, thaana, miao, new-tai-lue, tangsa, glagolitic, gothic, old-turkic, dives-akuru, samaritan, ol-chiki, telugu, marchen, grantha, psalter-pahlavi, lycian, hanifi-rohingya, carian, chorasmian, nushu, syloti-nagri, devanagari, chinese-traditional, kannada, tamil, indic-siyaq-numbers, soyombo, bhaiksuki, toto, old-north-arabian, makasar, tamil-supplement, znamenny, duployan, gujarati, avestan, deseret, takri, caucasian-albanian, palmyrene, vai, georgian, wancho, meetei-mayek, phoenician, inscriptional-pahlavi, bamum, chinese-hongkong, korean, myanmar, khudawadi, sundanese, cham, multani, batak, ethiopic, newa, ogham, sogdian, lao, sharada, cuneiform, gunjala-gondi, oriya, lydian, buginese, signwriting, arabic, math, gurmukhi, kayah-li, mahajani, tifinagh, tai-le, bengali, yezidi, anatolian-hieroglyphs, old-south-arabian, tagbanwa, khitan-small-script, tirhuta, chakma, old-italic, rejang, balinese, javanese, kaithi, canadian-aboriginal, bassa-vah, warang-citi, music, cherokee, mandaic, zanabazar-square, khojki, mongolian, thai, tangut, saurashtra, ahom, khmer, tagalog, braille

  • U+00A0 NO-BREAK SPACE: try adding one of: nag-mundari, pau-cin-hau, armenian, malayalam, old-hungarian, medefaidrin, egyptian-hieroglyphs, mayan-numerals, nko, cypriot, old-uyghur, nabataean, dogra, kharoshthi, yi, linear-a, hatran, linear-b, nandinagari, adlam, runic, hanunoo, lepcha, ottoman-siyaq-numbers, old-persian, osage, osmanya, coptic, buhid, pahawh-hmong, chinese-simplified, mro, tai-tham, vithkuqi, cypro-minoan, siddham, limbu, masaram-gondi, elymaic, manichaean, kawi, imperial-aramaic, symbols, tibetan, meroitic-hieroglyphs, ugaritic, lisu, mende-kikakui, old-permic, sora-sompeng, old-sogdian, brahmi, modi, nyiakeng-puachue-hmong, japanese, syriac, tai-viet, shavian, sinhala, phags-pa, meroitic, inscriptional-parthian, meroitic-cursive, elbasan, thaana, miao, new-tai-lue, tangsa, glagolitic, gothic, old-turkic, dives-akuru, samaritan, ol-chiki, telugu, marchen, grantha, psalter-pahlavi, lycian, hanifi-rohingya, carian, chorasmian, nushu, syloti-nagri, devanagari, chinese-traditional, kannada, tamil, indic-siyaq-numbers, soyombo, bhaiksuki, toto, old-north-arabian, makasar, tamil-supplement, znamenny, duployan, gujarati, avestan, deseret, takri, caucasian-albanian, palmyrene, vai, georgian, wancho, meetei-mayek, phoenician, inscriptional-pahlavi, bamum, chinese-hongkong, korean, myanmar, khudawadi, sundanese, cham, multani, batak, ethiopic, newa, ogham, sogdian, lao, sharada, cuneiform, gunjala-gondi, oriya, lydian, buginese, signwriting, arabic, math, gurmukhi, kayah-li, mahajani, tifinagh, tai-le, bengali, yezidi, anatolian-hieroglyphs, old-south-arabian, tagbanwa, khitan-small-script, tirhuta, chakma, old-italic, rejang, balinese, javanese, kaithi, canadian-aboriginal, bassa-vah, warang-citi, music, cherokee, mandaic, zanabazar-square, khojki, mongolian, thai, tangut, saurashtra, ahom, khmer, tagalog, braille

  • U+02B0 MODIFIER LETTER SMALL H: not included in any glyphset definition

  • U+02B1 MODIFIER LETTER SMALL H WITH HOOK: not included in any glyphset definition

  • U+02B2 MODIFIER LETTER SMALL J: not included in any glyphset definition

  • U+02B3 MODIFIER LETTER SMALL R: not included in any glyphset definition

  • U+02B4 MODIFIER LETTER SMALL TURNED R: not included in any glyphset definition

  • U+02B5 MODIFIER LETTER SMALL TURNED R WITH HOOK: not included in any glyphset definition
    908 more.

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: cyrillic, cyrillic-ext, greek, greek-ext, hebrew, latin, latin-ext, menu, vietnamese [code: unreachable-subsetting]

WARN: Description strings in the name table must not exceed 200 characters. (com.google.fonts/check/name/description_max_length)
  • WARN A few name table entries with ID=10 (NameID.DESCRIPTION) are longer than 200 characters. Please check whether those entries are copyright notices mistakenly stored in the description string entries by a bug in an old FontLab version. If that's the case, then such copyright notices must be removed from these entries. [code: too-long]
WARN: Is the Grid-fitting and Scan-conversion Procedure ('gasp') table set to optimize rendering? (com.google.fonts/check/gasp)
  • INFO These are the ppm ranges declared on the gasp table:

PPM <= 65535:
flag = 0x0A
- Use grayscale rendering
- Use smoothing along multiple axes with ClearType®
[code: ranges]

  • WARN The gasp range 0xFFFF value 0x0A should be set to 0x0F. [code: unset-flags]
WARN: Ensure variable fonts include an avar table. (com.google.fonts/check/mandatory_avar_table)
  • WARN This variable font does not have an avar table. [code: missing-avar]
WARN: Ensure fonts have ScriptLangTags declared on the 'meta' table. (com.google.fonts/check/meta/script_lang_tags)
  • WARN This font file does not have a 'meta' table. [code: lacks-meta-table]
INFO: List all superfamily filepaths (com.google.fonts/check/superfamily/list)
  • INFO apache/arimo [code: family-path]
INFO: Font contains all required tables? (com.google.fonts/check/required_tables)
  • INFO This font contains the following optional tables:

    • loca

    • prep

    • GPOS

    • GSUB

    • gasp [code: optional-tables]

INFO: Check for font-v versioning. (com.google.fonts/check/fontv)
  • INFO Version string is: "Version 1.33"
    The version string must ideally include a git commit hash and either a "dev" or a "release" suffix such as in the example below:
    "Version 1.3; git-0d08353-release" [code: bad-format]
INFO: EPAR table present in font? (com.google.fonts/check/epar)
INFO: Show hinting filesize impact. (com.google.fonts/check/hinting_impact)
  • INFO Hinting filesize impact:
Font(file='apache/arimo/Arimo[wght].ttf', context=CheckRunContext(testables=[..., Font(file='apache/arimo/Arimo-Italic[wght].ttf', context=...)], config={'com.google.fonts/check/file_size': {'WARN_SIZE': 1048576, 'FAIL_SIZE': 9437184}, 'custom_order': None, 'explicit_checks': None, 'exclude_checks': None, 'full_lists': False, 'skip_network': False}))
Dehinted Size 485.2kb
Hinted Size 485.2kb
Increase 24 bytes
Change 0.0 %
[code: size-impact]
INFO: Familyname must be unique according to namecheck.fontdata.com (com.google.fonts/check/fontdata_namecheck)
INFO: Font has old ttfautohint applied? (com.google.fonts/check/old_ttfautohint)
  • INFO Could not detect which version of ttfautohint was used in this font. It is typically specified as a comment in the font version entries of the 'name' table. Such font version strings are currently: ['Version 1.33'] [code: version-not-detected]

[31] Arimo-Italic[wght].ttf
🔥 FAIL: Validates that when an instance record is included for the default instance, its subfamilyNameID value is set to a name ID whose string is equal to the string of either name ID 2 or 17, and its postScriptNameID value is set to a name ID whose string is equal to the string of name ID 6. (com.adobe.fonts/check/varfont/valid_default_instance_nameids)
  • 🔥 FAIL 'Italic' instance has the same coordinates as the default instance; its postscript name should be 'Arimo-Italic', instead of 'ArimoItalic-Regular'. [code: invalid-default-instance-postscript-name]
🔥 FAIL: Ensure dotted circle glyph is present and can attach marks. (com.google.fonts/check/dotted_circle)
  • 🔥 FAIL The following glyphs could not be attached to the dotted circle glyph:

    • uni031B [code: unattached-dotted-circle-marks]
🔥 FAIL: METADATA.pb: Check URL on copyright string is the same as in repository_url field. (com.google.fonts/check/metadata/consistent_repo_urls)
  • 🔥 FAIL Please add a family.source.repository_url entry. [code: lacks-repo-url]
🔥 FAIL: Shapes languages in all GF glyphsets. (com.google.fonts/check/glyphsets/shape_languages)
  • 🔥 FAIL GF_Latin_African glyphset:
Language FAIL messages
toq_Latn (Toposa) The locl feature did not affect Eng
nus_Latn (Nuer) The locl feature did not affect Eng
mcn_Latn (Masana) The locl feature did not affect Eng
nnh_Latn (Ngiemboon) The locl feature did not affect Eng
csk_Latn (Jola-Kasa) The locl feature did not affect Eng
fub_Latn (Fulfulde, Adamawa) The locl feature did not affect Eng
ntr_Latn (Delo) The locl feature did not affect Eng
bze_Latn (Jenaama Bozo) The locl feature did not affect Eng
bzx_Latn (Bozo, Hainyaxo) The locl feature did not affect Eng
snf_Latn (Noon) The locl feature did not affect Eng
bax_Latn (Bamun, Latin) The locl feature did not affect Eng
maw_Latn (Mampruli) The locl feature did not affect Eng
krs_Latn (Gbaya (Sudan)) The locl feature did not affect Eng
lam_Latn (Lamba) The locl feature did not affect Eng
mfd_Latn (Mendankwe-Nkwen) The locl feature did not affect Eng
ahl_Latn (Igo) The locl feature did not affect Eng
sig_Latn (Paasaal) The locl feature did not affect Eng
hag_Latn (Hanga) The locl feature did not affect Eng
bib_Latn (Bissa) The locl feature did not affect Eng
yav_Latn (Yangben) The locl feature did not affect Eng
vai_Latn (Vai (Latin)) The locl feature did not affect Eng
nnw_Latn (Southern Nuni) The locl feature did not affect Eng
gnd_Latn (Zulgo-Gemzek) The locl feature did not affect Eng
ahs_Latn (Ashe) The locl feature did not affect Eng
mcp_Latn (Makaa) The locl feature did not affect Eng
bsp_Latn (Baga Sitemu) The locl feature did not affect Eng
mmu_Latn (Mmaala) The locl feature did not affect Eng
dzg_Latn (Dazaga) The locl feature did not affect Eng
nmg_Latn (Kwasio) The locl feature did not affect Eng
lgg_Latn (Lugbara) The locl feature did not affect Eng
mcu_Latn (Mambila, Cameroon) The locl feature did not affect Eng
agc_Latn (Agatu) The locl feature did not affect Eng
rub_Latn (Gungu) The locl feature did not affect Eng
ife_Latn (Ifè) The locl feature did not affect Eng
bud_Latn (Ntcham) The locl feature did not affect Eng
tod_Latn (Toma) The locl feature did not affect Eng
bim_Latn (Bimoba) The locl feature did not affect Eng
tem_Latn (Timne) The locl feature did not affect Eng
srr_Latn (Serer) The locl feature did not affect Eng
taq_Latn (Tamasheq, Latin) The locl feature did not affect Eng
adj_Latn (Adioukrou) The locl feature did not affect Eng
shz_Latn (Syenara Senoufo) The locl feature did not affect Eng
lmp_Latn (Limbum) The locl feature did not affect Eng
mwk_Latn (Kita Maninkakan) The locl feature did not affect Eng
mfq_Latn (Moba) The locl feature did not affect Eng
cae_Latn (Lehar) The locl feature did not affect Eng
mbu_Latn (Mbula-Bwazza) The locl feature did not affect Eng
ndv_Latn (Ndut) The locl feature did not affect Eng
sld_Latn (Sissala) The locl feature did not affect Eng
bbo_Latn (Northern Bobo Madaré) The locl feature did not affect Eng
mas_Latn (Masai) The locl feature did not affect Eng
byv_Latn (Medumba) Shaper didn't attach gravecomb to uni2C6D
^ Shaper didn't attach uni030C to uni2C6D
^ Shaper didn't attach uni0302 to uni2C6D
^ Shaper didn't attach gravecomb to uni2C6D
^ Shaper didn't attach uni0302 to uni2C6D
^ Shaper didn't attach uni030C to uni2C6D
^ The locl feature did not affect Eng
anv_Latn (Denya) The locl feature did not affect Eng
ewo_Latn (Ewondo) The locl feature did not affect Eng
tik_Latn (Tikar) The locl feature did not affect Eng
fue_Latn (Fulfulde, Borgu) The locl feature did not affect Eng
dnj_Latn_LR (Dan) Shaper didn't attach tildecomb to uniA78D
^ Shaper didn't attach uni0302 to uniA78D
^ Shaper didn't attach acutecomb to uniA78D
^ Shaper didn't attach gravecomb to uniA78D
mdj_Latn (Mangbetu) The locl feature did not affect Eng
xuo_Latn (Kuo) The locl feature did not affect Eng
dts_Latn (Dogon, Toro So) The locl feature did not affect Eng
xon_Latn (Konkomba) The locl feature did not affect Eng
bqj_Latn (Bandial) The locl feature did not affect Eng
daa_Latn (Dangaléat) The locl feature did not affect Eng
nuv_Latn (Nuni, Northern) The locl feature did not affect Eng
mfi_Latn (Wandala) The locl feature did not affect Eng
bza_Latn (Bandi) The locl feature did not affect Eng
muy_Latn (Muyang) The locl feature did not affect Eng
yas_Latn (Nugunu) The locl feature did not affect Eng
etu_Latn (Ejagham) The locl feature did not affect Eng
yat_Latn (Yambeta) The locl feature did not affect Eng
tpm_Latn (Tampulma) The locl feature did not affect Eng
lok_Latn (Loko) The locl feature did not affect Eng
dyi_Latn (Sénoufo, Djimini) The locl feature did not affect Eng
meq_Latn (Merey) The locl feature did not affect Eng
ncu_Latn (Chumburung) The locl feature did not affect Eng
xrb_Latn (Karaboro, Eastern) The locl feature did not affect Eng
lun_Latn (Lunda) The locl feature did not affect Eng
mbo_Latn (Mbo) The locl feature did not affect Eng
idu_Latn (Idoma) The locl feature did not affect Eng
dje_Latn (Zarma) The locl feature did not affect Eng
dnj_Latn (Dan) Some base glyphs were missing: Ɤ, Ɤ̀, Ɤ́, Ɤ̂, Ɤ̄, Ɤ̋, Ɤ̏
^ Shaper produced a .notdef
^ Shaper produced a .notdef
^ The locl feature did not affect Eng
cme_Latn (Cerma) The locl feature did not affect Eng
fuh_Latn (Fulfulde, Western Niger) The locl feature did not affect Eng
fvr_Latn (Fur) The locl feature did not affect Eng
loq_Latn (Lobala) The locl feature did not affect Eng
kqp_Latn (Kimré) The locl feature did not affect Eng
mgc_Latn (Morokodo) The locl feature did not affect Eng
pil_Latn (Yom) The locl feature did not affect Eng
mzw_Latn (Deg) The locl feature did not affect Eng
bqv_Latn (Koro Wachi) The locl feature did not affect Eng
dua_Latn (Duala) The locl feature did not affect Eng
kpo_Latn (Ikposo) The locl feature did not affect Eng
mnf_Latn (Mundani) The locl feature did not affect Eng
vut_Latn (Vute) The locl feature did not affect Eng
gmm_Latn (Gbaya-Mbodomo) The locl feature did not affect Eng
ikx_Latn (Ik) The locl feature did not affect Eng
lem_Latn (Nomaande) The locl feature did not affect Eng
nko_Latn (Nkonya) The locl feature did not affect Eng
avn_Latn (Avatime) The locl feature did not affect Eng
gna_Latn (Kaansa) The locl feature did not affect Eng
xsm_Latn (Kasem) The locl feature did not affect Eng
ffm_Latn (Maasina Fulfulde) The locl feature did not affect Eng
yam_Latn (Yamba) The locl feature did not affect Eng
ny_Latn (Nyanja) The locl feature did not affect Eng
ses_Latn (Koyraboro Senni) The locl feature did not affect Eng
emk_Latn (Maninkakan, Eastern) The locl feature did not affect Eng
kzc_Latn (Bondoukou Kulango) Shaper didn't attach tildecomb to uniA7B6
^ Shaper didn't attach tildecomb to uniA7AE
^ Shaper didn't attach tildecomb to uniA7B7
^ Shaper didn't attach tildecomb to uniA7AE
^ Shaper didn't attach tildecomb to uniA7B7
^ Shaper didn't attach tildecomb to uniA7B6
^ The locl feature did not affect Eng
ach_Latn (Acoli) The locl feature did not affect Eng
kbp_Latn (Kabiyé) The locl feature did not affect Eng
gux_Latn (Gourmanchéma) The locl feature did not affect Eng
lg_Latn (Ganda) The locl feature did not affect Eng
knp_Latn (Kwanja) The locl feature did not affect Eng
myk_Latn (Mamara Senoufo) The locl feature did not affect Eng
mev_Latn (Mano) The locl feature did not affect Eng
pbi_Latn (Parkwa) The locl feature did not affect Eng
bzw_Latn (Basa) The locl feature did not affect Eng
khq_Latn (Koyra Chiini) The locl feature did not affect Eng
mfv_Latn (Mandjak) The locl feature did not affect Eng
moa_Latn (Mwan) The locl feature did not affect Eng
ddn_Latn (Dendi) The locl feature did not affect Eng
soy_Latn (Miyobe) The locl feature did not affect Eng
gaa_Latn (Ga) The locl feature did not affect Eng
wwa_Latn (Waama) The locl feature did not affect Eng
jgo_Latn (Ngomba) The locl feature did not affect Eng
bum_Latn (Bulu) The locl feature did not affect Eng
fmp_Latn (Fe’fe’) Shaper didn't attach uni030C to uni2C6D
^ Shaper didn't attach uni0304 to uni2C6D
^ Shaper didn't attach gravecomb to uni2C6D
^ Shaper didn't attach acutecomb to uni2C6D
^ Shaper didn't attach acutecomb to uni2C6D
^ Shaper didn't attach gravecomb to uni2C6D
^ Shaper didn't attach uni030C to uni2C6D
^ Shaper didn't attach uni0304 to uni2C6D
^ The locl feature did not affect Eng
bjt_Latn (Balanta-Ganja) The locl feature did not affect Eng
kqs_Latn (Kissi, Northern) The locl feature did not affect Eng
mdt_Latn (Mbere) The locl feature did not affect Eng
log_Latn (Logo) The locl feature did not affect Eng
keu_Latn (Akebu) The locl feature did not affect Eng
biv_Latn (Birifor, Southern) The locl feature did not affect Eng
mnk_Latn (Mandinka) The locl feature did not affect Eng
xwe_Latn (Gbe, Xwela) The locl feature did not affect Eng
twq_Latn (Tasawaq) The locl feature did not affect Eng
ken_Latn (Kenyang) The locl feature did not affect Eng
kib_Latn (Koalib) Shaper didn't attach gravecomb to uni2C6F
^ Shaper didn't attach acutecomb to uni2C6F
^ Shaper didn't attach uni0302 to uni2C6F
^ The locl feature did not affect Eng
pnz_Latn (Pana (Central African Republic)) The locl feature did not affect Eng
ee_Latn (Ewe) The locl feature did not affect Eng
ozm_Latn (Koonzime) The locl feature did not affect Eng
kzr_Latn (Karang) The locl feature did not affect Eng
cko_Latn (Anufo) The locl feature did not affect Eng
gkp_Latn (Kpelle, Guinea) The locl feature did not affect Eng
sok_Latn (Sokoro) The locl feature did not affect Eng
tuq_Latn (Tedaga) The locl feature did not affect Eng
dyu_Latn (Dyula) The locl feature did not affect Eng
mor_Latn (Moro) Some base glyphs were missing: Ꟈ, ꟈ
^ Shaper produced a .notdef
^ The locl feature did not affect Eng
knf_Latn (Mankanya) The locl feature did not affect Eng
god_Latn (Godié) The locl feature did not affect Eng
tvu_Latn (Tunen) The locl feature did not affect Eng
sil_Latn (Sisaala, Tumulung) The locl feature did not affect Eng
wci_Latn (Gbe, Waci) The locl feature did not affect Eng
ekm_Latn (Elip) The locl feature did not affect Eng
bfa_Latn (Bari) The locl feature did not affect Eng
dop_Latn (Lukpa) The locl feature did not affect Eng
sav_Latn (Saafi-Saafi) The locl feature did not affect Eng
dgi_Latn (Northern Dagara) The locl feature did not affect Eng
bss_Latn (Akoose) The locl feature did not affect Eng
dag_Latn (Dagbani) The locl feature did not affect Eng
kia_Latn (Kim) The locl feature did not affect Eng
kmy_Latn (Koma) The locl feature did not affect Eng
fuc_Latn (Pulaar) The locl feature did not affect Eng
nym_Latn (Nyamwezi) The locl feature did not affect Eng
naw_Latn (Nawuri) The locl feature did not affect Eng
dno_Latn (Ndrulo) The locl feature did not affect Eng
boz_Latn (Tiéyaxo Bozo) The locl feature did not affect Eng
bas_Latn (Basaa) The locl feature did not affect Eng
nhb_Latn (Beng) The locl feature did not affect Eng
wo_Latn (Wolof) The locl feature did not affect Eng
dtm_Latn (Tomo Kan Dogon) The locl feature did not affect Eng
bm_Latn (Bambara) The locl feature did not affect Eng
xed_Latn (Hdi) The locl feature did not affect Eng
bbj_Latn (Ghomala) The locl feature did not affect Eng
agq_Latn (Aghem) The locl feature did not affect Eng
kss_Latn (Southern Kisi) The locl feature did not affect Eng
fuq_Latn (Central-Eastern Niger Fulfulde) The locl feature did not affect Eng
saf_Latn (Safaliba) The locl feature did not affect Eng
gjn_Latn (Gonja) The locl feature did not affect Eng
dow_Latn (Doyayo) The locl feature did not affect Eng
lia_Latn (Limba, West-Central) The locl feature did not affect Eng
nyb_Latn (Nyangbo) The locl feature did not affect Eng
dip_Latn (Dinka, Northeastern) The locl feature did not affect Eng
ksf_Latn (Bafia) The locl feature did not affect Eng
vag_Latn (Vagla) The locl feature did not affect Eng
kdh_Latn (Tem) The locl feature did not affect Eng
sxw_Latn (Saxwe Gbe) The locl feature did not affect Eng
lig_Latn (Ligbi) The locl feature did not affect Eng
laj_Latn (Lango [Uganda]) The locl feature did not affect Eng
fan_Latn (Fang) The locl feature did not affect Eng
ktj_Latn (Krumen, Plapo) The locl feature did not affect Eng
ted_Latn (Krumen, Tepo) The locl feature did not affect Eng
kye_Latn (Krache) The locl feature did not affect Eng
azo_Latn (Awing) The locl feature did not affect Eng
pug_Latn (Phuie) The locl feature did not affect Eng
acd_Latn (Gikyode) The locl feature did not affect Eng
mur_Latn (Murle) The locl feature did not affect Eng
ttq_Latn (Tawallammat Tamajaq) The locl feature did not affect Eng
gde_Latn (Gude) The locl feature did not affect Eng
nza_Latn (Tigon Mbembe) The locl feature did not affect Eng
neb_Latn (Toura) The locl feature did not affect Eng
bfd_Latn (Bafut) The locl feature did not affect Eng
bcw_Latn (Bana) The locl feature did not affect Eng
ade_Latn (Adele) The locl feature did not affect Eng
spp_Latn (Sénoufo, Supyire) The locl feature did not affect Eng
gej_Latn (Gen) The locl feature did not affect Eng
gur_Latn (Frafra) The locl feature did not affect Eng
bex_Latn (Jur Modo) The locl feature did not affect Eng
gov_Latn (Goo) Some base glyphs were missing: Ɤ, Ɤ̀, Ɤ́, Ɤ̂
^ Shaper produced a .notdef
mls_Latn (Masalit) The locl feature did not affect Eng
kkj_Latn (Kako) The locl feature did not affect Eng
nhu_Latn (Noone) The locl feature did not affect Eng
mua_Latn (Mundang) The locl feature did not affect Eng
ndz_Latn (Ndogo) The locl feature did not affect Eng
nfr_Latn (Nafaanra) The locl feature did not affect Eng
bav_Latn (Vengo) The locl feature did not affect Eng
kao_Latn (Xaasongaxango) The locl feature did not affect Eng
lee_Latn (Lyélé) The locl feature did not affect Eng
lns_Latn (Lamnso’) The locl feature did not affect Eng
gud_Latn (Dida, Yocoboué) The locl feature did not affect Eng
mgo_Latn (Metaʼ) The locl feature did not affect Eng
cou_Latn (Wamey) The locl feature did not affect Eng
sef_Latn (Cebaara Senoufo) The locl feature did not affect Eng
nfu_Latn (Mfumte) The locl feature did not affect Eng
nku_Latn (Kulango, Bouna) The locl feature did not affect Eng
nmz_Latn (Nawdm) The locl feature did not affect Eng
gng_Latn (Ngangam) The locl feature did not affect Eng
wan_Latn (Wan) The locl feature did not affect Eng
avu_Latn (Avokaya) The locl feature did not affect Eng
las_Latn (Lama (Togo)) The locl feature did not affect Eng
tnr_Latn (Ménik) The locl feature did not affect Eng
kvf_Latn (Kabalai) The locl feature did not affect Eng
tcd_Latn (Tafi) The locl feature did not affect Eng
sbd_Latn (Southern Samo) The locl feature did not affect Eng
ig_Latn (Igbo) The locl feature did not affect Eng
ybb_Latn (Yemba) The locl feature did not affect Eng
fod_Latn (Foodo) The locl feature did not affect Eng
dur_Latn (Dii) The locl feature did not affect Eng
ajg_Latn (Aja) The locl feature did not affect Eng
dyo_Latn (Jola-Fonyi) The locl feature did not affect Eng
blo_Latn (Anii) The locl feature did not affect Eng
kyf_Latn (Kouya) The locl feature did not affect Eng
bsc_Latn (Bassari) The locl feature did not affect Eng
udu_Latn (Uduk) The locl feature did not affect Eng
fuf_Latn (Pular) The locl feature did not affect Eng
kyq_Latn (Kenga) The locl feature did not affect Eng
bkm_Latn (Kom) The locl feature did not affect Eng
kus_Latn (Kusaal) The locl feature did not affect Eng

[code: failed-language-shaping]

  • WARN GF_Latin_African glyphset:
Language FAIL messages
tod_Latn (Toma) No variant glyphs were found for uni028B
^ No variant glyphs were found for uni01B2
ggn_Latn (Eastern Gurung, Latin) No exemplar glyphs were defined for language Eastern Gurung, Latin
dnj_Latn (Dan) Some auxiliary glyphs were missing: Ɤ, Ɤ̀, Ɤ́, Ɤ̂, Ɤ̄, Ɤ̋, Ɤ̏
^ No variant glyphs were found for uni0181
gaa_Latn (Ga) No variant glyphs were found for uni01A9
^ No variant glyphs were found for uni01B7
cch_Latn (Atsam) No exemplar glyphs were defined for language Atsam
mor_Latn (Moro) Some auxiliary glyphs were missing: Ꟈ, ꟈ
kfo_Latn (Koro) No exemplar glyphs were defined for language Koro
hna_Latn (Mina) No exemplar glyphs were defined for language Mina
mgy_Latn (Mbunga) No exemplar glyphs were defined for language Mbunga
syi_Latn (Seki) No exemplar glyphs were defined for language Seki
gov_Latn (Goo) Some auxiliary glyphs were missing: Ɤ, Ɤ̀, Ɤ́, Ɤ̂
amo_Latn (Amo) No exemplar glyphs were defined for language Amo

[code: warning-language-shaping]

🔥 FAIL: Does DESCRIPTION file contain a upstream Git repo URL? (com.google.fonts/check/description/git_url)
  • 🔥 FAIL Please host your font project on a public Git repo (such as GitHub or GitLab) and place a link in the DESCRIPTION.en_us.html file. [code: lacks-git-url]
🔥 FAIL: Check copyright namerecords match license file. (com.google.fonts/check/name/license)
  • 🔥 FAIL License file LICENSE.txt exists but NameID 13 (LICENSE DESCRIPTION) value on platform 3 (WINDOWS) is not specified for that. Value was: "This Font Software is licensed under the SIL Open Font License, Version 1.1. This Font Software is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the SIL Open Font License for the specific language, permissions and limitations governing your use of this Font Software." Must be changed to "Licensed under the Apache License, Version 2.0" [code: wrong]
🔥 FAIL: Check license file has good copyright string. (com.google.fonts/check/license/OFL_copyright)
  • 🔥 FAIL First line in license file is:

"apache license"

which does not match the expected format, similar to:

"Copyright 2022 The Familyname Project Authors (git url)" [code: bad-format]

🔥 FAIL: Check glyphs do not have components which are themselves components. (com.google.fonts/check/glyf_nested_components)
  • 🔥 FAIL The following glyphs have components which themselves are component glyphs:
    • uni2095 [code: found-nested-components]
🔥 FAIL: Check variable font instances (com.google.fonts/check/fvar_instances)
  • 🔥 FAIL fvar instances are incorrect:
  • Add missing instances
Name current expected
Italic wght=400.0 wght=400.0
Medium Italic N/A wght=500.0
SemiBold Italic N/A wght=600.0
Bold Italic wght=700.0 wght=700.0
🔥 FAIL: Font enables smart dropout control in "prep" table instructions? (com.google.fonts/check/smart_dropout)
  • 🔥 FAIL The 'prep' table does not contain TrueType instructions enabling smart dropout control. To fix, export the font with autohinting enabled, or run ttfautohint on the font, or run the gftools fix-nonhinting script. [code: lacks-smart-dropout]
WARN: Does the font have a DSIG table? (com.google.fonts/check/dsig)
  • WARN This font has a digital signature (DSIG table) which is only required - even if only a placeholder - on old programs like MS Office 2013 in order to work properly.
    The current recommendation is to completely remove the DSIG table. [code: found-DSIG]
WARN: Font has **proper** whitespace glyph names? (com.google.fonts/check/whitespace_glyphnames)
  • WARN Glyph 0x00A0 is called "nbspace": Change to "uni00A0" [code: not-recommended-00a0]
WARN: Check that legacy accents aren't used in composite glyphs. (com.google.fonts/check/legacy_accents)
  • WARN Glyph "Aogonek" has a legacy accent component (ogonek). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Aring" has a legacy accent component (ring). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Aringacute" has a legacy accent component (ring). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ccedilla" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Cdotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Edotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Eogonek" has a legacy accent component (ogonek). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Gdotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Idotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Iogonek" has a legacy accent component (ogonek). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ldot" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Scedilla" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Tcommaaccent" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Uogonek" has a legacy accent component (ogonek). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Uring" has a legacy accent component (ring). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ytilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Zdotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "aacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "abreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "abrevedotbelow" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "acircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "acircumflexdotbelow" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "adieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "agrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "aogonek" has a legacy accent component (ogonek). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "aring" has a legacy accent component (ring). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "aringacute" has a legacy accent component (ring). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "atilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "aeacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "cacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ccaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ccedilla" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ccircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "cdotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "eacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ebreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ecaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ecircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ecircumflexdotbelow" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "edieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "edotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "egrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "eogonek" has a legacy accent component (ogonek). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "etilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "gbreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "gcircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "gdotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "iacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ibreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "icircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "idieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "igrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "iogonek" has a legacy accent component (ogonek). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "itilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ldot" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "nacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ncaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ntilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "oacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "obreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ocircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ocircumflexdotbelow" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "odieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ograve" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ohornacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ohorngrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ohorntilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ohungarumlaut" has a legacy accent component (hungarumlaut). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "oslashacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "otilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "racute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "rcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "sacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "scaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "scedilla" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "scircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "tcommaaccent" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ubreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ucircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "udieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ugrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uhornacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uhorngrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uhorntilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uhungarumlaut" has a legacy accent component (hungarumlaut). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uogonek" has a legacy accent component (ogonek). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uring" has a legacy accent component (ring). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "utilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "wacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "wcircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "wdieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "wgrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "yacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ycircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ydieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ygrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ytilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "zacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "zcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "zdotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01EA" has a legacy accent component (ogonek). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01EC" has a legacy accent component (ogonek). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni0226" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni022E" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E02" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E08" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E0A" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E1C" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E1E" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E22" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E28" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E40" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E44" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E56" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E58" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E60" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E68" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E6A" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E86" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E8A" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E8E" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni212B" has a legacy accent component (ring). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Lcommaaccent.loclMAH" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ncommaaccent.loclMAH" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni04DA" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uniA690" has a legacy accent component (ogonek). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01C6" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01CE" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01D0" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01D2" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01D4" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01D6" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01D8" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01DA" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01DC" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01DF" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01E1" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01E7" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01EB" has a legacy accent component (ogonek). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01ED" has a legacy accent component (ogonek). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01EF" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01F0" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01F5" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01F9" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni0227" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni0229" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni022B" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni022D" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni022F" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni0231" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E03" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E09" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E09" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E0B" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E15" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E17" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E1D" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E1D" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E1F" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E23" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E27" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E29" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E2F" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E2F" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E3F" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E41" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E45" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E4D" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E4F" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E4F" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E55" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E57" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E59" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E61" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E69" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E6B" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E79" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E7B" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E7D" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E87" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E8B" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E8D" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E8F" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E91" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E97" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E98" has a legacy accent component (ring). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E99" has a legacy accent component (ring). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1E9B" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni2C7A" has a legacy accent component (ring). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uniAB38" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uniAB38" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "lcommaaccent.loclMAH" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ncommaaccent.loclMAH" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni037C" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni037D" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "iotadieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "upsilondieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1FB0" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1FD0" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1FD2" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1FD3" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1FE0" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1FE2" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1FE3" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni0450" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni0451" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni0457" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni045C" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni045D" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni04D1" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni04D3" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni04D7" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni04DB" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni04DD" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni04DF" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni04E5" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni04E7" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni04EB" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni04ED" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni04F1" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni04F3" has a legacy accent component (hungarumlaut). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni04F5" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni04F9" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni01C5" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni0327" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1AB0" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1AB0" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1DCB" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1DCC" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1DD3" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni1DD3" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03B1030603130300" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03B1030603130301" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03B1030603140300" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03B1030603140301" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03B9030603130300" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03B9030603130301" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03B9030603140300" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03B9030603140301" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03B9030803040300" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03B9030803040301" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03B9030803060300" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03B9030803060301" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03C5030803040300" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03C5030803040301" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03C5030803060300" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uni03C5030803060301" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
WARN: Check font contains no unreachable glyphs (com.google.fonts/check/unreachable_glyphs)
  • WARN The following glyphs could not be reached by codepoint or substitution rules:

    • Eng.alt1

    • Eng.alt2

    • Eng.alt3

    • acute.alt1

    • acute.alt2

    • acute.alt3

    • acute.alt4

    • acute.alt5

    • aleflamedhatafsegol

    • aleflamedsegol

    • 54 more.

Use -F or --full-lists to disable shortening of long lists.
[code: unreachable-glyphs]

WARN: Does the font contain a soft hyphen? (com.google.fonts/check/soft_hyphen)
  • WARN This font has a 'Soft Hyphen' character. [code: softhyphen]
WARN: Detect any interpolation issues in the font. (com.google.fonts/check/interpolation_issues)
  • WARN Interpolation issues were found in the font:

    • Contour 0 start point differs in glyph 'uni0358' between location wght=400 and location wght=700

    • Contour 3 start point differs in glyph 'uni20B7' between location wght=400 and location wght=700 [code: interpolation-issues]

WARN: Check math signs have the same width. (com.google.fonts/check/math_signs_width)
  • WARN The most common width is 1196 among a set of 8 math glyphs.
    The following math glyphs have a different width, though:

Width = 1124:
approxequal, greaterequal, lessequal, plusminus, divide, notequal

Width = 2005:
orthogonal
[code: width-outliers]

WARN: Checking Vertical Metric Linegaps. (com.google.fonts/check/linegaps)
  • WARN hhea lineGap is not equal to 0. [code: hhea]
WARN: Ensure soft_dotted characters lose their dot when combined with marks that replace the dot. (com.google.fonts/check/soft_dotted)
  • WARN The dot of soft dotted characters used in orthographies must disappear in the following strings: į̀ į́ į̂ į̃ į̄ į̌ ɨ̧̀ ɨ̧́ ɨ̧̂ ɨ̧̌ ɨ̱̀ ɨ̱́ ɨ̱̈ і́ ḭ̀ ḭ́ ḭ̄ ị̀ ị́ ị̂ ị̃ ị̄

The dot of soft dotted characters should disappear in other cases, for example: i҇ i᪰ i᪱ i᪲ i᪳ i᪴ i᪻ i᪼ i᷋ i᷌ i᷑ i᷒ iᷓ iᷔ iᷕ iᷖ iᷗ iᷘ iᷙ iᷚ

Your font fully covers the following languages that require the soft-dotted feature: Ebira (Latn, 2,200,000 speakers), Navajo (Latn, 166,319 speakers), Cicipu (Latn, 44,000 speakers), Gulay (Latn, 250,478 speakers), Ukrainian (Cyrl, 29,273,587 speakers), Mango (Latn, 77,000 speakers), Lithuanian (Latn, 2,357,094 speakers), Zapotec (Latn, 490,000 speakers), Ngbaka (Latn, 1,020,000 speakers), Nzakara (Latn, 50,000 speakers), Ma’di (Latn, 584,000 speakers), Sar (Latn, 500,000 speakers), Nateni (Latn, 100,000 speakers), Yala (Latn, 200,000 speakers), Ijo, Southeast (Latn, 2,471,000 speakers), Belarusian (Cyrl, 10,064,517 speakers), Ekpeye (Latn, 226,000 speakers), Bete-Bendi (Latn, 100,000 speakers), Dutch (Latn, 31,709,104 speakers), South Central Banda (Latn, 244,000 speakers).

Your font does not cover the following languages that require the soft-dotted feature: Igbo (Latn, 27,823,640 speakers), Kpelle, Guinea (Latn, 622,000 speakers), Aghem (Latn, 38,843 speakers), Dan (Latn, 1,099,244 speakers), Southern Kisi (Latn, 360,000 speakers), Mfumte (Latn, 79,000 speakers), Avokaya (Latn, 100,000 speakers), Mundani (Latn, 34,000 speakers), Dii (Latn, 71,000 speakers), Kom (Latn, 360,685 speakers), Ejagham (Latn, 120,000 speakers), Basaa (Latn, 332,940 speakers), Koonzime (Latn, 40,000 speakers), Bafut (Latn, 158,146 speakers), Makaa (Latn, 221,000 speakers), Lugbara (Latn, 2,200,000 speakers), Fur (Latn, 1,230,163 speakers). [code: soft-dotted]

WARN: Check for codepoints not covered by METADATA subsets. (com.google.fonts/check/metadata/unreachable_subsetting)
  • WARN The following codepoints supported by the font are not covered by
    any subsets defined in the font's metadata file, and will never
    be served. You can solve this by either manually adding additional
    subset declarations to METADATA.pb, or by editing the glyphset
    definitions.

  • U+0000 : try adding one of: nag-mundari, pau-cin-hau, armenian, malayalam, old-hungarian, medefaidrin, egyptian-hieroglyphs, mayan-numerals, nko, cypriot, old-uyghur, nabataean, dogra, kharoshthi, yi, linear-a, hatran, linear-b, nandinagari, adlam, runic, hanunoo, lepcha, ottoman-siyaq-numbers, old-persian, osage, osmanya, coptic, buhid, pahawh-hmong, chinese-simplified, mro, tai-tham, vithkuqi, cypro-minoan, siddham, limbu, masaram-gondi, elymaic, manichaean, kawi, imperial-aramaic, symbols, tibetan, meroitic-hieroglyphs, ugaritic, lisu, mende-kikakui, old-permic, sora-sompeng, old-sogdian, brahmi, modi, nyiakeng-puachue-hmong, japanese, syriac, tai-viet, shavian, sinhala, phags-pa, meroitic, inscriptional-parthian, meroitic-cursive, elbasan, thaana, miao, new-tai-lue, tangsa, glagolitic, gothic, old-turkic, dives-akuru, samaritan, ol-chiki, telugu, marchen, grantha, psalter-pahlavi, lycian, hanifi-rohingya, carian, chorasmian, nushu, syloti-nagri, devanagari, chinese-traditional, kannada, tamil, indic-siyaq-numbers, soyombo, bhaiksuki, toto, old-north-arabian, makasar, tamil-supplement, znamenny, duployan, gujarati, avestan, deseret, takri, caucasian-albanian, palmyrene, vai, georgian, wancho, meetei-mayek, phoenician, inscriptional-pahlavi, bamum, chinese-hongkong, korean, myanmar, khudawadi, sundanese, cham, multani, batak, ethiopic, newa, ogham, sogdian, lao, sharada, cuneiform, gunjala-gondi, oriya, lydian, buginese, signwriting, arabic, math, gurmukhi, kayah-li, mahajani, tifinagh, tai-le, bengali, yezidi, anatolian-hieroglyphs, old-south-arabian, tagbanwa, khitan-small-script, tirhuta, chakma, old-italic, rejang, balinese, javanese, kaithi, canadian-aboriginal, bassa-vah, warang-citi, music, cherokee, mandaic, zanabazar-square, khojki, mongolian, thai, tangut, saurashtra, ahom, khmer, tagalog, braille

  • U+000D : try adding one of: nag-mundari, pau-cin-hau, armenian, malayalam, old-hungarian, medefaidrin, egyptian-hieroglyphs, mayan-numerals, nko, cypriot, old-uyghur, nabataean, dogra, kharoshthi, yi, linear-a, hatran, linear-b, nandinagari, adlam, runic, hanunoo, lepcha, ottoman-siyaq-numbers, old-persian, osage, osmanya, coptic, buhid, pahawh-hmong, chinese-simplified, mro, tai-tham, vithkuqi, cypro-minoan, siddham, limbu, masaram-gondi, elymaic, manichaean, kawi, imperial-aramaic, symbols, tibetan, meroitic-hieroglyphs, ugaritic, lisu, mende-kikakui, old-permic, sora-sompeng, old-sogdian, brahmi, modi, nyiakeng-puachue-hmong, japanese, syriac, tai-viet, shavian, sinhala, phags-pa, meroitic, inscriptional-parthian, meroitic-cursive, elbasan, thaana, miao, new-tai-lue, tangsa, glagolitic, gothic, old-turkic, dives-akuru, samaritan, ol-chiki, telugu, marchen, grantha, psalter-pahlavi, lycian, hanifi-rohingya, carian, chorasmian, nushu, syloti-nagri, devanagari, chinese-traditional, kannada, tamil, indic-siyaq-numbers, soyombo, bhaiksuki, toto, old-north-arabian, makasar, tamil-supplement, znamenny, duployan, gujarati, avestan, deseret, takri, caucasian-albanian, palmyrene, vai, georgian, wancho, meetei-mayek, phoenician, inscriptional-pahlavi, bamum, chinese-hongkong, korean, myanmar, khudawadi, sundanese, cham, multani, batak, ethiopic, newa, ogham, sogdian, lao, sharada, cuneiform, gunjala-gondi, oriya, lydian, buginese, signwriting, arabic, math, gurmukhi, kayah-li, mahajani, tifinagh, tai-le, bengali, yezidi, anatolian-hieroglyphs, old-south-arabian, tagbanwa, khitan-small-script, tirhuta, chakma, old-italic, rejang, balinese, javanese, kaithi, canadian-aboriginal, bassa-vah, warang-citi, music, cherokee, mandaic, zanabazar-square, khojki, mongolian, thai, tangut, saurashtra, ahom, khmer, tagalog, braille

  • U+0020 SPACE: try adding one of: nag-mundari, pau-cin-hau, armenian, malayalam, old-hungarian, medefaidrin, egyptian-hieroglyphs, mayan-numerals, nko, cypriot, old-uyghur, nabataean, dogra, kharoshthi, yi, linear-a, hatran, linear-b, nandinagari, adlam, runic, hanunoo, lepcha, ottoman-siyaq-numbers, old-persian, osage, osmanya, coptic, buhid, pahawh-hmong, chinese-simplified, mro, tai-tham, vithkuqi, cypro-minoan, siddham, limbu, masaram-gondi, elymaic, manichaean, kawi, imperial-aramaic, symbols, tibetan, meroitic-hieroglyphs, ugaritic, lisu, mende-kikakui, old-permic, sora-sompeng, old-sogdian, brahmi, modi, nyiakeng-puachue-hmong, japanese, syriac, tai-viet, shavian, sinhala, phags-pa, meroitic, inscriptional-parthian, meroitic-cursive, elbasan, thaana, miao, new-tai-lue, tangsa, glagolitic, gothic, old-turkic, dives-akuru, samaritan, ol-chiki, telugu, marchen, grantha, psalter-pahlavi, lycian, hanifi-rohingya, carian, chorasmian, nushu, syloti-nagri, devanagari, chinese-traditional, kannada, tamil, indic-siyaq-numbers, soyombo, bhaiksuki, toto, old-north-arabian, makasar, tamil-supplement, znamenny, duployan, gujarati, avestan, deseret, takri, caucasian-albanian, palmyrene, vai, georgian, wancho, meetei-mayek, phoenician, inscriptional-pahlavi, bamum, chinese-hongkong, korean, myanmar, khudawadi, sundanese, cham, multani, batak, ethiopic, newa, ogham, sogdian, lao, sharada, cuneiform, gunjala-gondi, oriya, lydian, buginese, signwriting, arabic, math, gurmukhi, kayah-li, mahajani, tifinagh, tai-le, bengali, yezidi, anatolian-hieroglyphs, old-south-arabian, tagbanwa, khitan-small-script, tirhuta, chakma, old-italic, rejang, balinese, javanese, kaithi, canadian-aboriginal, bassa-vah, warang-citi, music, cherokee, mandaic, zanabazar-square, khojki, mongolian, thai, tangut, saurashtra, ahom, khmer, tagalog, braille

  • U+00A0 NO-BREAK SPACE: try adding one of: nag-mundari, pau-cin-hau, armenian, malayalam, old-hungarian, medefaidrin, egyptian-hieroglyphs, mayan-numerals, nko, cypriot, old-uyghur, nabataean, dogra, kharoshthi, yi, linear-a, hatran, linear-b, nandinagari, adlam, runic, hanunoo, lepcha, ottoman-siyaq-numbers, old-persian, osage, osmanya, coptic, buhid, pahawh-hmong, chinese-simplified, mro, tai-tham, vithkuqi, cypro-minoan, siddham, limbu, masaram-gondi, elymaic, manichaean, kawi, imperial-aramaic, symbols, tibetan, meroitic-hieroglyphs, ugaritic, lisu, mende-kikakui, old-permic, sora-sompeng, old-sogdian, brahmi, modi, nyiakeng-puachue-hmong, japanese, syriac, tai-viet, shavian, sinhala, phags-pa, meroitic, inscriptional-parthian, meroitic-cursive, elbasan, thaana, miao, new-tai-lue, tangsa, glagolitic, gothic, old-turkic, dives-akuru, samaritan, ol-chiki, telugu, marchen, grantha, psalter-pahlavi, lycian, hanifi-rohingya, carian, chorasmian, nushu, syloti-nagri, devanagari, chinese-traditional, kannada, tamil, indic-siyaq-numbers, soyombo, bhaiksuki, toto, old-north-arabian, makasar, tamil-supplement, znamenny, duployan, gujarati, avestan, deseret, takri, caucasian-albanian, palmyrene, vai, georgian, wancho, meetei-mayek, phoenician, inscriptional-pahlavi, bamum, chinese-hongkong, korean, myanmar, khudawadi, sundanese, cham, multani, batak, ethiopic, newa, ogham, sogdian, lao, sharada, cuneiform, gunjala-gondi, oriya, lydian, buginese, signwriting, arabic, math, gurmukhi, kayah-li, mahajani, tifinagh, tai-le, bengali, yezidi, anatolian-hieroglyphs, old-south-arabian, tagbanwa, khitan-small-script, tirhuta, chakma, old-italic, rejang, balinese, javanese, kaithi, canadian-aboriginal, bassa-vah, warang-citi, music, cherokee, mandaic, zanabazar-square, khojki, mongolian, thai, tangut, saurashtra, ahom, khmer, tagalog, braille

  • U+02B0 MODIFIER LETTER SMALL H: not included in any glyphset definition

  • U+02B1 MODIFIER LETTER SMALL H WITH HOOK: not included in any glyphset definition

  • U+02B2 MODIFIER LETTER SMALL J: not included in any glyphset definition

  • U+02B3 MODIFIER LETTER SMALL R: not included in any glyphset definition

  • U+02B4 MODIFIER LETTER SMALL TURNED R: not included in any glyphset definition

  • U+02B5 MODIFIER LETTER SMALL TURNED R WITH HOOK: not included in any glyphset definition
    908 more.

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: cyrillic, cyrillic-ext, greek, greek-ext, hebrew, latin, latin-ext, menu, vietnamese [code: unreachable-subsetting]

WARN: Description strings in the name table must not exceed 200 characters. (com.google.fonts/check/name/description_max_length)
  • WARN A few name table entries with ID=10 (NameID.DESCRIPTION) are longer than 200 characters. Please check whether those entries are copyright notices mistakenly stored in the description string entries by a bug in an old FontLab version. If that's the case, then such copyright notices must be removed from these entries. [code: too-long]
WARN: Is the Grid-fitting and Scan-conversion Procedure ('gasp') table set to optimize rendering? (com.google.fonts/check/gasp)
  • INFO These are the ppm ranges declared on the gasp table:

PPM <= 65535:
flag = 0x0A
- Use grayscale rendering
- Use smoothing along multiple axes with ClearType®
[code: ranges]

  • WARN The gasp range 0xFFFF value 0x0A should be set to 0x0F. [code: unset-flags]
WARN: Ensure variable fonts include an avar table. (com.google.fonts/check/mandatory_avar_table)
  • WARN This variable font does not have an avar table. [code: missing-avar]
WARN: Ensure fonts have ScriptLangTags declared on the 'meta' table. (com.google.fonts/check/meta/script_lang_tags)
  • WARN This font file does not have a 'meta' table. [code: lacks-meta-table]
INFO: List all superfamily filepaths (com.google.fonts/check/superfamily/list)
  • INFO apache/arimo [code: family-path]
INFO: Font contains all required tables? (com.google.fonts/check/required_tables)
  • INFO This font contains the following optional tables:

    • loca

    • prep

    • GPOS

    • GSUB

    • gasp [code: optional-tables]

INFO: Check for font-v versioning. (com.google.fonts/check/fontv)
  • INFO Version string is: "Version 1.33"
    The version string must ideally include a git commit hash and either a "dev" or a "release" suffix such as in the example below:
    "Version 1.3; git-0d08353-release" [code: bad-format]
INFO: EPAR table present in font? (com.google.fonts/check/epar)
INFO: Show hinting filesize impact. (com.google.fonts/check/hinting_impact)
  • INFO Hinting filesize impact:
Font(file='apache/arimo/Arimo-Italic[wght].ttf', context=CheckRunContext(testables=[Font(file='apache/arimo/Arimo[wght].ttf', context=...), ...], config={'com.google.fonts/check/file_size': {'WARN_SIZE': 1048576, 'FAIL_SIZE': 9437184}, 'custom_order': None, 'explicit_checks': None, 'exclude_checks': None, 'full_lists': False, 'skip_network': False}))
Dehinted Size 530.1kb
Hinted Size 530.1kb
Increase 24 bytes
Change 0.0 %
[code: size-impact]
INFO: Familyname must be unique according to namecheck.fontdata.com (com.google.fonts/check/fontdata_namecheck)
INFO: Font has old ttfautohint applied? (com.google.fonts/check/old_ttfautohint)
  • INFO Could not detect which version of ttfautohint was used in this font. It is typically specified as a comment in the font version entries of the 'name' table. Such font version strings are currently: ['Version 1.33'] [code: version-not-detected]

[1] Family checks
INFO: Check axis ordering on the STAT table. (com.google.fonts/check/STAT/axis_order)
  • INFO None of the fonts lack a STAT table.

    And these are the most common STAT axis orderings:
    ('wght-ital', 2) [code: summary]


Summary

💔 ERROR ☠ FATAL 🔥 FAIL ⚠ WARN 💤 SKIP ℹ INFO 🍞 PASS 🔎 DEBUG
0 0 23 28 83 15 345 0
0% 0% 5% 6% 17% 3% 70% 0%

Note: The following loglevels were omitted in this report:

  • SKIP
  • PASS
  • DEBUG

Copy link

FontBakery report

fontbakery version: 0.12.0a1

Check results

[28] Calligraffitti-Regular.ttf
🔥 FAIL: Checking OS/2 Metrics match hhea Metrics. (com.google.fonts/check/os2_metrics_match_hhea)
  • 🔥 FAIL OS/2 sTypoAscender (866) and hhea ascent (986) must be equal. [code: ascender]
🔥 FAIL: Font contains '.notdef' as its first glyph? (com.google.fonts/check/mandatory_glyphs)
  • 🔥 FAIL The '.notdef' glyph should contain a drawing, but it is blank. [code: notdef-is-blank]
🔥 FAIL: Copyright notices match canonical pattern in METADATA.pb (com.google.fonts/check/metadata/valid_copyright)
  • 🔥 FAIL METADATA.pb: Copyright notices should match a pattern similar to:

"Copyright 2020 The Familyname Project Authors (git url)"

But instead we have got:

"copyright (c) 2010 by open window. all rights reserved." [code: bad-notice-format]

🔥 FAIL: METADATA.pb: Check URL on copyright string is the same as in repository_url field. (com.google.fonts/check/metadata/consistent_repo_urls)
  • 🔥 FAIL Please add a family.source.repository_url entry. [code: lacks-repo-url]
🔥 FAIL: Does DESCRIPTION file contain a upstream Git repo URL? (com.google.fonts/check/description/git_url)
  • 🔥 FAIL Please host your font project on a public Git repo (such as GitHub or GitLab) and place a link in the DESCRIPTION.en_us.html file. [code: lacks-git-url]
🔥 FAIL: Check license file has good copyright string. (com.google.fonts/check/license/OFL_copyright)
  • 🔥 FAIL First line in license file is:

"apache license"

which does not match the expected format, similar to:

"Copyright 2022 The Familyname Project Authors (git url)" [code: bad-format]

🔥 FAIL: Check Google Fonts glyph coverage. (com.google.fonts/check/glyph_coverage)
  • 🔥 FAIL Missing required codepoints:

    • 0x0100 (LATIN CAPITAL LETTER A WITH MACRON)

    • 0x0101 (LATIN SMALL LETTER A WITH MACRON)

    • 0x0102 (LATIN CAPITAL LETTER A WITH BREVE)

    • 0x0103 (LATIN SMALL LETTER A WITH BREVE)

    • 0x0104 (LATIN CAPITAL LETTER A WITH OGONEK)

    • 0x0105 (LATIN SMALL LETTER A WITH OGONEK)

    • 0x0106 (LATIN CAPITAL LETTER C WITH ACUTE)

    • 0x0107 (LATIN SMALL LETTER C WITH ACUTE)

    • 0x010A (LATIN CAPITAL LETTER C WITH DOT ABOVE)

    • 0x010B (LATIN SMALL LETTER C WITH DOT ABOVE)

    • 98 more.

Use -F or --full-lists to disable shortening of long lists. [code: missing-codepoints]

🔥 FAIL: Copyright notices match canonical pattern in fonts (com.google.fonts/check/font_copyright)
  • 🔥 FAIL Name Table entry: Copyright notices should match a pattern similar to:

"Copyright 2019 The Familyname Project Authors (git url)"

But instead we have got:

"Copyright (c) 2010 by Open Window. All rights reserved."
[code: bad-notice-format]

  • 🔥 FAIL Name Table entry: Copyright notices should match a pattern similar to:

"Copyright 2019 The Familyname Project Authors (git url)"

But instead we have got:

"Copyright (c) 2010 by Open Window. All rights reserved."
[code: bad-notice-format]

🔥 FAIL: Font enables smart dropout control in "prep" table instructions? (com.google.fonts/check/smart_dropout)
  • 🔥 FAIL The 'prep' table does not contain TrueType instructions enabling smart dropout control. To fix, export the font with autohinting enabled, or run ttfautohint on the font, or run the gftools fix-nonhinting script. [code: lacks-smart-dropout]
🔥 FAIL: Check if the vertical metrics of a family are similar to the same family hosted on Google Fonts. (com.google.fonts/check/vertical_metrics_regressions)
  • 🔥 FAIL Calligraffitti Regular: OS/2 sTypoAscender is 866 when it should be 986 [code: bad-typo-ascender]
  • 🔥 FAIL Calligraffitti Regular: OS/2 sTypoDescender is -457 when it should be -607 [code: bad-typo-descender]
WARN: Does GPOS table have kerning information? This check skips monospaced fonts as defined by post.isFixedPitch value (com.google.fonts/check/gpos_kerning_info)
  • WARN GPOS table lacks kerning information. [code: lacks-kern-info]
WARN: Check that legacy accents aren't used in composite glyphs. (com.google.fonts/check/legacy_accents)
  • WARN Glyph "Scaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "scaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Yacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "yacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Zcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "zcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Adieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Eacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ntilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Odieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Udieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "aacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "agrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "acircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "adieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "atilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "eacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "egrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ecircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "edieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "iacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "igrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "icircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "idieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ntilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "oacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ograve" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ocircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "odieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "otilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ugrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ucircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "udieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Agrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Atilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Otilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ydieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ydieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Acircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ecircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Aacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Edieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Egrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Iacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Icircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Idieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Igrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Oacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ocircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ograve" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Uacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ucircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ugrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
WARN: Check if each glyph has the recommended amount of contours. (com.google.fonts/check/contour_count)
  • WARN This check inspects the glyph outlines and detects the total number of contours in each of them. The expected values are infered from the typical ammounts of contours observed in a large collection of reference font families. The divergences listed below may simply indicate a significantly different design on some of your glyphs. On the other hand, some of these may flag actual bugs in the font such as glyphs mapped to an incorrect codepoint. Please consider reviewing the design and codepoint assignment of these to make sure they are correct.

The following glyphs do not have the recommended number of contours:

- Glyph name: exclam	Contours detected: 3	Expected: 2

- Glyph name: eight	Contours detected: 2	Expected: 3

- Glyph name: colon	Contours detected: 4	Expected: 2

- Glyph name: semicolon	Contours detected: 3	Expected: 2

- Glyph name: question	Contours detected: 3	Expected: 2

- Glyph name: at	Contours detected: 1	Expected: 2

- Glyph name: O	Contours detected: 1	Expected: 2

- Glyph name: a	Contours detected: 1	Expected: 2

- Glyph name: e	Contours detected: 1	Expected: 2

- Glyph name: o	Contours detected: 1	Expected: 2

- 79 more.

Use -F or --full-lists to disable shortening of long lists.
[code: contour-count]

WARN: Does the font contain a soft hyphen? (com.google.fonts/check/soft_hyphen)
  • WARN This font has a 'Soft Hyphen' character. [code: softhyphen]
WARN: Check math signs have the same width. (com.google.fonts/check/math_signs_width)
  • WARN The most common width is 492 among a set of 1 math glyphs.
    The following math glyphs have a different width, though:

Width = 317:
less

Width = 595:
equal

Width = 310:
greater

Width = 603:
logicalnot

Width = 533:
plusminus

Width = 495:
multiply

Width = 513:
divide

Width = 544:
minus
[code: width-outliers]

WARN: Checking Vertical Metric Linegaps. (com.google.fonts/check/linegaps)
  • WARN hhea lineGap is not equal to 0. [code: hhea]
WARN: Do any segments have colinear vectors? (com.google.fonts/check/outline_colinear_vectors)
  • WARN The following glyphs have colinear vectors:

    • registered (U+00AE): L<<353.0,616.0>--<351.0,616.0>> -> L<<351.0,616.0>--<349.0,616.0>> [code: found-colinear-vectors]
WARN: Do outlines contain any jaggy segments? (com.google.fonts/check/outline_jaggy_segments)
  • WARN The following glyphs have jaggy segments:

    • H (U+0048): B<<161.5,417.0>-<157.0,420.0>-<156.0,425.0>>/L<<156.0,425.0>--<156.0,424.0>> = 11.309932474020195

    • M (U+004D): B<<834.0,467.5>-<852.0,530.0>-<869.0,576.0>>/B<<869.0,576.0>-<846.0,539.0>-<822.5,503.0>> = 11.583418604687056

    • ordfeminine (U+00AA): B<<153.0,421.0>-<153.0,418.0>-<149.0,416.0>>/B<<149.0,416.0>-<171.0,422.0>-<188.0,441.5>> = 11.309932474020162

    • ordfeminine (U+00AA): B<<268.0,451.5>-<267.0,442.0>-<265.0,432.0>>/L<<265.0,432.0>--<265.0,433.0>> = 11.309932474020195

    • ordmasculine (U+00BA): B<<252.0,581.0>-<245.0,587.0>-<237.0,592.0>>/B<<237.0,592.0>-<238.0,591.0>-<238.0,589.0>> = 12.994616791916483

    • registered (U+00AE): B<<213.0,400.0>-<208.0,404.0>-<207.0,408.0>>/L<<207.0,408.0>--<207.0,406.0>> = 14.036243467926484

    • yen (U+00A5): B<<263.0,229.5>-<268.0,234.0>-<276.0,236.0>>/L<<276.0,236.0>--<266.0,236.0>> = 14.036243467926484

    • yen (U+00A5): B<<325.0,259.0>-<308.0,246.0>-<290.0,240.0>>/B<<290.0,240.0>-<305.0,243.0>-<320.5,243.0>> = 7.125016348901705

    • yen (U+00A5): B<<407.5,197.5>-<396.0,196.0>-<387.0,195.0>>/L<<387.0,195.0>--<398.0,195.0>> = 6.340191745909908 [code: found-jaggy-segments]

WARN: Check for codepoints not covered by METADATA subsets. (com.google.fonts/check/metadata/unreachable_subsetting)
  • WARN The following codepoints supported by the font are not covered by
    any subsets defined in the font's metadata file, and will never
    be served. You can solve this by either manually adding additional
    subset declarations to METADATA.pb, or by editing the glyphset
    definitions.

  • U+0020 SPACE: try adding one of: telugu, samaritan, meroitic-hieroglyphs, coptic, multani, mandaic, oriya, old-italic, phoenician, kannada, kharoshthi, old-turkic, warang-citi, yezidi, canadian-aboriginal, tamil, linear-a, math, georgian, osmanya, old-north-arabian, buhid, tamil-supplement, limbu, nyiakeng-puachue-hmong, khmer, khitan-small-script, tangsa, sundanese, latin-ext, braille, new-tai-lue, khojki, lepcha, mro, runic, greek, inscriptional-parthian, caucasian-albanian, vietnamese, inscriptional-pahlavi, devanagari, mahajani, chinese-traditional, elbasan, signwriting, makasar, tagalog, tirhuta, miao, modi, avestan, syloti-nagri, tangut, buginese, carian, cuneiform, nandinagari, osage, cherokee, thaana, chinese-hongkong, glagolitic, pahawh-hmong, chakma, gunjala-gondi, old-persian, hebrew, hatran, tai-tham, medefaidrin, syriac, ogham, gothic, masaram-gondi, duployan, armenian, anatolian-hieroglyphs, greek-ext, tagbanwa, tai-le, kayah-li, wancho, linear-b, zanabazar-square, marchen, kaithi, lycian, old-uyghur, thai, japanese, gujarati, hanifi-rohingya, takri, old-south-arabian, ol-chiki, pau-cin-hau, gurmukhi, sharada, meetei-mayek, meroitic, old-sogdian, chorasmian, newa, nko, batak, phags-pa, toto, siddham, bengali, cypriot, khudawadi, nushu, dogra, korean, cham, bhaiksuki, soyombo, lao, nag-mundari, mayan-numerals, vithkuqi, myanmar, music, shavian, yi, deseret, meroitic-cursive, hanunoo, bassa-vah, palmyrene, imperial-aramaic, cyrillic, brahmi, balinese, manichaean, kawi, ahom, old-hungarian, lydian, saurashtra, javanese, psalter-pahlavi, sinhala, bamum, elymaic, nabataean, arabic, mongolian, old-permic, znamenny, egyptian-hieroglyphs, ethiopic, dives-akuru, mende-kikakui, tifinagh, tai-viet, lisu, indic-siyaq-numbers, ugaritic, sogdian, chinese-simplified, cypro-minoan, ottoman-siyaq-numbers, symbols, vai, tibetan, grantha, cyrillic-ext, malayalam, adlam, sora-sompeng, rejang

  • U+00A0 NO-BREAK SPACE: try adding one of: telugu, samaritan, meroitic-hieroglyphs, coptic, multani, mandaic, oriya, old-italic, phoenician, kannada, kharoshthi, old-turkic, warang-citi, yezidi, canadian-aboriginal, tamil, linear-a, math, georgian, osmanya, old-north-arabian, buhid, tamil-supplement, limbu, nyiakeng-puachue-hmong, khmer, khitan-small-script, tangsa, sundanese, latin-ext, braille, new-tai-lue, khojki, lepcha, mro, runic, greek, inscriptional-parthian, caucasian-albanian, vietnamese, inscriptional-pahlavi, devanagari, mahajani, chinese-traditional, elbasan, signwriting, makasar, tagalog, tirhuta, miao, modi, avestan, syloti-nagri, tangut, buginese, carian, cuneiform, nandinagari, osage, cherokee, thaana, chinese-hongkong, glagolitic, pahawh-hmong, chakma, gunjala-gondi, old-persian, hebrew, hatran, tai-tham, medefaidrin, syriac, ogham, gothic, masaram-gondi, duployan, armenian, anatolian-hieroglyphs, greek-ext, tagbanwa, tai-le, kayah-li, wancho, linear-b, zanabazar-square, marchen, kaithi, lycian, old-uyghur, thai, japanese, gujarati, hanifi-rohingya, takri, old-south-arabian, ol-chiki, pau-cin-hau, gurmukhi, sharada, meetei-mayek, meroitic, old-sogdian, chorasmian, newa, nko, batak, phags-pa, toto, siddham, bengali, cypriot, khudawadi, nushu, dogra, korean, cham, bhaiksuki, soyombo, lao, nag-mundari, mayan-numerals, vithkuqi, myanmar, music, shavian, yi, deseret, meroitic-cursive, hanunoo, bassa-vah, palmyrene, imperial-aramaic, cyrillic, brahmi, balinese, manichaean, kawi, ahom, old-hungarian, lydian, saurashtra, javanese, psalter-pahlavi, sinhala, bamum, elymaic, nabataean, arabic, mongolian, old-permic, znamenny, egyptian-hieroglyphs, ethiopic, dives-akuru, mende-kikakui, tifinagh, tai-viet, lisu, indic-siyaq-numbers, ugaritic, sogdian, chinese-simplified, cypro-minoan, ottoman-siyaq-numbers, symbols, vai, tibetan, grantha, cyrillic-ext, malayalam, adlam, sora-sompeng, rejang

  • U+0141 LATIN CAPITAL LETTER L WITH STROKE: try adding latin-ext

  • U+0142 LATIN SMALL LETTER L WITH STROKE: try adding latin-ext

  • U+0160 LATIN CAPITAL LETTER S WITH CARON: try adding latin-ext

  • U+0161 LATIN SMALL LETTER S WITH CARON: try adding latin-ext

  • U+0178 LATIN CAPITAL LETTER Y WITH DIAERESIS: try adding latin-ext

  • U+017D LATIN CAPITAL LETTER Z WITH CARON: try adding latin-ext

  • U+017E LATIN SMALL LETTER Z WITH CARON: try adding latin-ext

  • U+02C7 CARON: try adding one of: canadian-aboriginal, tifinagh, yi
    7 more.

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: latin, menu [code: unreachable-subsetting]

WARN: License URL matches License text on name table? (com.google.fonts/check/name/license_url)
  • WARN Please consider using HTTPS URLs at name table entry [plat=1, enc=0, name=14] [code: http-in-license-info]
  • WARN Please consider using HTTPS URLs at name table entry [plat=3, enc=1, name=14] [code: http-in-license-info]
WARN: Is the Grid-fitting and Scan-conversion Procedure ('gasp') table set to optimize rendering? (com.google.fonts/check/gasp)
  • INFO These are the ppm ranges declared on the gasp table:

PPM <= 65535:
flag = 0x0A
- Use grayscale rendering
- Use smoothing along multiple axes with ClearType®
[code: ranges]

  • WARN The gasp range 0xFFFF value 0x0A should be set to 0x0F. [code: unset-flags]
WARN: Ensure fonts have ScriptLangTags declared on the 'meta' table. (com.google.fonts/check/meta/script_lang_tags)
  • WARN This font file does not have a 'meta' table. [code: lacks-meta-table]
INFO: List all superfamily filepaths (com.google.fonts/check/superfamily/list)
  • INFO apache/calligraffitti [code: family-path]
INFO: Font contains all required tables? (com.google.fonts/check/required_tables)
  • INFO This font contains the following optional tables:

    • cvt

    • fpgm

    • loca

    • prep

    • gasp [code: optional-tables]

INFO: Check for font-v versioning. (com.google.fonts/check/fontv)
  • INFO Version string is: "Version 1.002"
    The version string must ideally include a git commit hash and either a "dev" or a "release" suffix such as in the example below:
    "Version 1.3; git-0d08353-release" [code: bad-format]
INFO: EPAR table present in font? (com.google.fonts/check/epar)
INFO: Show hinting filesize impact. (com.google.fonts/check/hinting_impact)
  • INFO Hinting filesize impact:
Font(file='apache/calligraffitti/Calligraffitti-Regular.ttf', context=CheckRunContext(testables=[...], config={'com.google.fonts/check/file_size': {'WARN_SIZE': 1048576, 'FAIL_SIZE': 9437184}, 'custom_order': None, 'explicit_checks': None, 'exclude_checks': None, 'full_lists': False, 'skip_network': False}))
Dehinted Size 45.7kb
Hinted Size 58.5kb
Increase 12.8kb
Change 28.0 %
[code: size-impact]
INFO: Font has old ttfautohint applied? (com.google.fonts/check/old_ttfautohint)
  • INFO Could not detect which version of ttfautohint was used in this font. It is typically specified as a comment in the font version entries of the 'name' table. Such font version strings are currently: ['Version 1.002', 'Version 1.002'] [code: version-not-detected]

[2] Family checks
🔥 FAIL: OS/2.fsSelection bit 7 (USE_TYPO_METRICS) is set in all fonts. (com.google.fonts/check/os2/use_typo_metrics)
  • 🔥 FAIL OS/2.fsSelection bit 7 (USE_TYPO_METRICS) wasNOT set in the following fonts: ['apache/calligraffitti/Calligraffitti-Regular.ttf']. [code: missing-os2-fsselection-bit7]
INFO: Check axis ordering on the STAT table. (com.google.fonts/check/STAT/axis_order)
  • INFO All of the fonts lack a STAT table.
    [code: summary]

Summary

💔 ERROR ☠ FATAL 🔥 FAIL ⚠ WARN 💤 SKIP ℹ INFO 🍞 PASS 🔎 DEBUG
0 0 11 12 67 7 160 0
0% 0% 4% 5% 26% 3% 62% 0%

Note: The following loglevels were omitted in this report:

  • SKIP
  • PASS
  • DEBUG

Copy link

FontBakery report

fontbakery version: 0.12.0a1

Check results

[31] CherryCreamSoda-Regular.ttf
🔥 FAIL: Checking OS/2 Metrics match hhea Metrics. (com.google.fonts/check/os2_metrics_match_hhea)
  • 🔥 FAIL OS/2 sTypoAscender (738) and hhea ascent (1006) must be equal. [code: ascender]
🔥 FAIL: Font contains '.notdef' as its first glyph? (com.google.fonts/check/mandatory_glyphs)
  • 🔥 FAIL The '.notdef' glyph should contain a drawing, but it is blank. [code: notdef-is-blank]
🔥 FAIL: Copyright notices match canonical pattern in METADATA.pb (com.google.fonts/check/metadata/valid_copyright)
  • 🔥 FAIL METADATA.pb: Copyright notices should match a pattern similar to:

"Copyright 2020 The Familyname Project Authors (git url)"

But instead we have got:

"copyright (c) 2010 by font diner, inc. all rights reserved." [code: bad-notice-format]

🔥 FAIL: METADATA.pb: Check URL on copyright string is the same as in repository_url field. (com.google.fonts/check/metadata/consistent_repo_urls)
  • 🔥 FAIL Please add a family.source.repository_url entry. [code: lacks-repo-url]
🔥 FAIL: Does DESCRIPTION file contain a upstream Git repo URL? (com.google.fonts/check/description/git_url)
  • 🔥 FAIL Please host your font project on a public Git repo (such as GitHub or GitLab) and place a link in the DESCRIPTION.en_us.html file. [code: lacks-git-url]
🔥 FAIL: Check license file has good copyright string. (com.google.fonts/check/license/OFL_copyright)
  • 🔥 FAIL First line in license file is:

"apache license"

which does not match the expected format, similar to:

"Copyright 2022 The Familyname Project Authors (git url)" [code: bad-format]

🔥 FAIL: Check Google Fonts glyph coverage. (com.google.fonts/check/glyph_coverage)
  • 🔥 FAIL Missing required codepoints:

    • 0x0100 (LATIN CAPITAL LETTER A WITH MACRON)

    • 0x0101 (LATIN SMALL LETTER A WITH MACRON)

    • 0x0102 (LATIN CAPITAL LETTER A WITH BREVE)

    • 0x0103 (LATIN SMALL LETTER A WITH BREVE)

    • 0x0104 (LATIN CAPITAL LETTER A WITH OGONEK)

    • 0x0105 (LATIN SMALL LETTER A WITH OGONEK)

    • 0x0106 (LATIN CAPITAL LETTER C WITH ACUTE)

    • 0x0107 (LATIN SMALL LETTER C WITH ACUTE)

    • 0x010A (LATIN CAPITAL LETTER C WITH DOT ABOVE)

    • 0x010B (LATIN SMALL LETTER C WITH DOT ABOVE)

    • 98 more.

Use -F or --full-lists to disable shortening of long lists. [code: missing-codepoints]

🔥 FAIL: Copyright notices match canonical pattern in fonts (com.google.fonts/check/font_copyright)
  • 🔥 FAIL Name Table entry: Copyright notices should match a pattern similar to:

"Copyright 2019 The Familyname Project Authors (git url)"

But instead we have got:

"Copyright (c) 2010 by Font Diner, Inc. All rights reserved."
[code: bad-notice-format]

  • 🔥 FAIL Name Table entry: Copyright notices should match a pattern similar to:

"Copyright 2019 The Familyname Project Authors (git url)"

But instead we have got:

"Copyright (c) 2010 by Font Diner, Inc. All rights reserved."
[code: bad-notice-format]

🔥 FAIL: Font enables smart dropout control in "prep" table instructions? (com.google.fonts/check/smart_dropout)
  • 🔥 FAIL The 'prep' table does not contain TrueType instructions enabling smart dropout control. To fix, export the font with autohinting enabled, or run ttfautohint on the font, or run the gftools fix-nonhinting script. [code: lacks-smart-dropout]
🔥 FAIL: Check if the vertical metrics of a family are similar to the same family hosted on Google Fonts. (com.google.fonts/check/vertical_metrics_regressions)
  • 🔥 FAIL Cherry Cream Soda Regular: OS/2 sTypoAscender is 738 when it should be 1006 [code: bad-typo-ascender]
WARN: Does GPOS table have kerning information? This check skips monospaced fonts as defined by post.isFixedPitch value (com.google.fonts/check/gpos_kerning_info)
  • WARN GPOS table lacks kerning information. [code: lacks-kern-info]
WARN: Check that legacy accents aren't used in composite glyphs. (com.google.fonts/check/legacy_accents)
  • WARN Glyph "Scaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "scaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Yacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "yacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Zcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "zcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Adieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Eacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ntilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Odieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Udieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "aacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "agrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "acircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "adieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "atilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "eacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "egrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ecircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "edieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "iacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "igrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "icircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "idieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ntilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "oacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ograve" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ocircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "odieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "otilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ugrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ucircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "udieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Agrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Atilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Otilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ydieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ydieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Acircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ecircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Aacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Edieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Egrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Iacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Icircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Idieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Igrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Oacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ocircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ograve" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Uacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ucircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ugrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
WARN: Check if each glyph has the recommended amount of contours. (com.google.fonts/check/contour_count)
  • WARN This check inspects the glyph outlines and detects the total number of contours in each of them. The expected values are infered from the typical ammounts of contours observed in a large collection of reference font families. The divergences listed below may simply indicate a significantly different design on some of your glyphs. On the other hand, some of these may flag actual bugs in the font such as glyphs mapped to an incorrect codepoint. Please consider reviewing the design and codepoint assignment of these to make sure they are correct.

The following glyphs do not have the recommended number of contours:

- Glyph name: sfthyphen	Contours detected: 1	Expected: 0

- Glyph name: aring	Contours detected: 3	Expected: 4

- Glyph name: summation	Contours detected: 3	Expected: 1

- Glyph name: aring	Contours detected: 3	Expected: 4

- Glyph name: fi	Contours detected: 1	Expected: 3

- Glyph name: fl	Contours detected: 1	Expected: 2

- Glyph name: summation	Contours detected: 3	Expected: 1

[code: contour-count]

WARN: Does the font contain a soft hyphen? (com.google.fonts/check/soft_hyphen)
  • WARN This font has a 'Soft Hyphen' character. [code: softhyphen]
WARN: Check math signs have the same width. (com.google.fonts/check/math_signs_width)
  • WARN The most common width is 532 among a set of 3 math glyphs.
    The following math glyphs have a different width, though:

Width = 508:
greater, less

Width = 555:
equal

Width = 706:
logicalnot

Width = 533:
multiply

Width = 510:
minus
[code: width-outliers]

WARN: Checking Vertical Metric Linegaps. (com.google.fonts/check/linegaps)
  • WARN hhea lineGap is not equal to 0. [code: hhea]
WARN: Do any segments have colinear vectors? (com.google.fonts/check/outline_colinear_vectors)
  • WARN The following glyphs have colinear vectors:

    • Z (U+005A): L<<589.0,641.0>--<517.0,642.0>> -> L<<517.0,642.0>--<413.0,642.0>>

    • Zcaron (U+017D): L<<589.0,641.0>--<517.0,642.0>> -> L<<517.0,642.0>--<413.0,642.0>>

    • braceright (U+007D): L<<191.0,60.0>--<191.0,221.0>> -> L<<191.0,221.0>--<191.0,300.0>>

    • onequarter (U+00BC): L<<412.0,120.0>--<412.0,127.0>> -> L<<412.0,127.0>--<412.0,189.0>>

    • onequarter (U+00BC): L<<693.0,192.0>--<693.0,299.0>> -> L<<693.0,299.0>--<693.0,335.0>>

    • threequarters (U+00BE): L<<729.0,187.0>--<734.0,187.0>> -> L<<734.0,187.0>--<798.0,187.0>>

    • threequarters (U+00BE): L<<734.0,187.0>--<798.0,187.0>> -> L<<798.0,187.0>--<900.0,187.0>> [code: found-colinear-vectors]

WARN: Do outlines contain any jaggy segments? (com.google.fonts/check/outline_jaggy_segments)
  • WARN The following glyphs have jaggy segments:

    • Aring (U+00C5): B<<521.5,745.5>-<504.0,739.0>-<486.0,735.0>>/L<<486.0,735.0>--<552.0,735.0>> = 12.528807709151492

    • Aring (U+00C5): L<<318.0,735.0>--<385.0,735.0>>/B<<385.0,735.0>-<367.0,739.0>-<350.5,745.5>> = 12.528807709151492

    • K (U+004B): B<<827.0,22.5>-<848.0,6.0>-<853.0,5.0>>/L<<853.0,5.0>--<651.0,0.0>> = 12.72785530547132

    • Oslash (U+00D8): L<<593.0,814.0>--<785.0,814.0>>/B<<785.0,814.0>-<774.0,813.0>-<759.0,796.5>> = 5.1944289077348

    • R (U+0052): B<<828.0,21.0>-<853.0,1.0>-<860.0,0.0>>/L<<860.0,0.0>--<653.0,0.0>> = 8.13010235415596

    • Thorn (U+00DE): L<<31.0,737.0>--<255.0,737.0>>/B<<255.0,737.0>-<243.0,735.0>-<235.0,716.5>> = 9.462322208025613

    • X (U+0058): B<<-4.0,710.5>-<-32.0,735.0>-<-42.0,737.0>>/L<<-42.0,737.0>--<192.0,737.0>> = 11.309932474020195

    • X (U+0058): B<<852.5,19.0>-<873.0,1.0>-<879.0,0.0>>/L<<879.0,0.0>--<659.0,0.0>> = 9.462322208025613

    • X (U+0058): L<<170.0,0.0>--<-51.0,0.0>>/B<<-51.0,0.0>-<-45.0,1.0>-<-24.5,19.0>> = 9.462322208025613

    • X (U+0058): L<<636.0,737.0>--<870.0,737.0>>/B<<870.0,737.0>-<860.0,735.0>-<832.0,710.5>> = 11.309932474020195

    • 31 more.

Use -F or --full-lists to disable shortening of long lists. [code: found-jaggy-segments]

WARN: Do outlines contain any semi-vertical or semi-horizontal lines? (com.google.fonts/check/outline_semi_vertical)
  • WARN The following glyphs have semi-vertical/semi-horizontal lines:

    • AE (U+00C6): L<<1367.0,2.0>--<641.0,0.0>>

    • D (U+0044): L<<31.0,738.0>--<226.0,737.0>>

    • E (U+0045): L<<31.0,737.0>--<757.0,735.0>>

    • E (U+0045): L<<773.0,2.0>--<47.0,0.0>>

    • Eacute (U+00C9): L<<31.0,737.0>--<757.0,735.0>>

    • Eacute (U+00C9): L<<773.0,2.0>--<47.0,0.0>>

    • Ecircumflex (U+00CA): L<<31.0,737.0>--<757.0,735.0>>

    • Ecircumflex (U+00CA): L<<773.0,2.0>--<47.0,0.0>>

    • Edieresis (U+00CB): L<<31.0,737.0>--<757.0,735.0>>

    • Edieresis (U+00CB): L<<773.0,2.0>--<47.0,0.0>>

    • 46 more.

Use -F or --full-lists to disable shortening of long lists. [code: found-semi-vertical]

WARN: Check for codepoints not covered by METADATA subsets. (com.google.fonts/check/metadata/unreachable_subsetting)
  • WARN The following codepoints supported by the font are not covered by
    any subsets defined in the font's metadata file, and will never
    be served. You can solve this by either manually adding additional
    subset declarations to METADATA.pb, or by editing the glyphset
    definitions.

  • U+0020 SPACE: try adding one of: cyrillic, adlam, makasar, shavian, greek, hatran, sinhala, old-north-arabian, osage, bassa-vah, mende-kikakui, meroitic-cursive, elymaic, sogdian, indic-siyaq-numbers, medefaidrin, khudawadi, telugu, coptic, chorasmian, elbasan, hebrew, math, tangut, lao, new-tai-lue, takri, siddham, arabic, gothic, old-south-arabian, sundanese, wancho, bamum, lycian, cham, gurmukhi, vithkuqi, mandaic, batak, tibetan, gunjala-gondi, linear-a, egyptian-hieroglyphs, japanese, thaana, glagolitic, chinese-simplified, nko, lydian, malayalam, tagbanwa, cypro-minoan, saurashtra, nandinagari, soyombo, old-permic, javanese, yi, osmanya, newa, khmer, deseret, ethiopic, caucasian-albanian, manichaean, old-sogdian, znamenny, syloti-nagri, tamil-supplement, mahajani, linear-b, sora-sompeng, old-hungarian, chinese-traditional, tangsa, old-italic, cyrillic-ext, inscriptional-parthian, bengali, marchen, phags-pa, kawi, cuneiform, dogra, psalter-pahlavi, phoenician, thai, inscriptional-pahlavi, imperial-aramaic, tagalog, sharada, nushu, tifinagh, masaram-gondi, khojki, oriya, tamil, greek-ext, kayah-li, georgian, kharoshthi, avestan, chinese-hongkong, hanunoo, lepcha, miao, samaritan, dives-akuru, myanmar, grantha, canadian-aboriginal, buginese, old-uyghur, ottoman-siyaq-numbers, mro, brahmi, mongolian, anatolian-hieroglyphs, symbols, meroitic-hieroglyphs, gujarati, balinese, meroitic, tai-le, meetei-mayek, old-turkic, bhaiksuki, kaithi, pau-cin-hau, signwriting, runic, cherokee, palmyrene, duployan, korean, tai-viet, lisu, limbu, zanabazar-square, braille, ol-chiki, warang-citi, ogham, buhid, pahawh-hmong, multani, nag-mundari, ahom, cypriot, mayan-numerals, rejang, syriac, chakma, toto, khitan-small-script, music, hanifi-rohingya, carian, latin-ext, modi, ugaritic, kannada, vai, vietnamese, old-persian, nyiakeng-puachue-hmong, yezidi, nabataean, armenian, devanagari, tai-tham, tirhuta

  • U+00A0 NO-BREAK SPACE: try adding one of: cyrillic, adlam, makasar, shavian, greek, hatran, sinhala, old-north-arabian, osage, bassa-vah, mende-kikakui, meroitic-cursive, elymaic, sogdian, indic-siyaq-numbers, medefaidrin, khudawadi, telugu, coptic, chorasmian, elbasan, hebrew, math, tangut, lao, new-tai-lue, takri, siddham, arabic, gothic, old-south-arabian, sundanese, wancho, bamum, lycian, cham, gurmukhi, vithkuqi, mandaic, batak, tibetan, gunjala-gondi, linear-a, egyptian-hieroglyphs, japanese, thaana, glagolitic, chinese-simplified, nko, lydian, malayalam, tagbanwa, cypro-minoan, saurashtra, nandinagari, soyombo, old-permic, javanese, yi, osmanya, newa, khmer, deseret, ethiopic, caucasian-albanian, manichaean, old-sogdian, znamenny, syloti-nagri, tamil-supplement, mahajani, linear-b, sora-sompeng, old-hungarian, chinese-traditional, tangsa, old-italic, cyrillic-ext, inscriptional-parthian, bengali, marchen, phags-pa, kawi, cuneiform, dogra, psalter-pahlavi, phoenician, thai, inscriptional-pahlavi, imperial-aramaic, tagalog, sharada, nushu, tifinagh, masaram-gondi, khojki, oriya, tamil, greek-ext, kayah-li, georgian, kharoshthi, avestan, chinese-hongkong, hanunoo, lepcha, miao, samaritan, dives-akuru, myanmar, grantha, canadian-aboriginal, buginese, old-uyghur, ottoman-siyaq-numbers, mro, brahmi, mongolian, anatolian-hieroglyphs, symbols, meroitic-hieroglyphs, gujarati, balinese, meroitic, tai-le, meetei-mayek, old-turkic, bhaiksuki, kaithi, pau-cin-hau, signwriting, runic, cherokee, palmyrene, duployan, korean, tai-viet, lisu, limbu, zanabazar-square, braille, ol-chiki, warang-citi, ogham, buhid, pahawh-hmong, multani, nag-mundari, ahom, cypriot, mayan-numerals, rejang, syriac, chakma, toto, khitan-small-script, music, hanifi-rohingya, carian, latin-ext, modi, ugaritic, kannada, vai, vietnamese, old-persian, nyiakeng-puachue-hmong, yezidi, nabataean, armenian, devanagari, tai-tham, tirhuta

  • U+0141 LATIN CAPITAL LETTER L WITH STROKE: try adding latin-ext

  • U+0142 LATIN SMALL LETTER L WITH STROKE: try adding latin-ext

  • U+0160 LATIN CAPITAL LETTER S WITH CARON: try adding latin-ext

  • U+0161 LATIN SMALL LETTER S WITH CARON: try adding latin-ext

  • U+0178 LATIN CAPITAL LETTER Y WITH DIAERESIS: try adding latin-ext

  • U+017D LATIN CAPITAL LETTER Z WITH CARON: try adding latin-ext

  • U+017E LATIN SMALL LETTER Z WITH CARON: try adding latin-ext

  • U+02C7 CARON: try adding one of: tifinagh, canadian-aboriginal, yi
    8 more.

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: latin, menu [code: unreachable-subsetting]

WARN: License URL matches License text on name table? (com.google.fonts/check/name/license_url)
  • WARN Please consider using HTTPS URLs at name table entry [plat=1, enc=0, name=14] [code: http-in-license-info]
  • WARN Please consider using HTTPS URLs at name table entry [plat=3, enc=1, name=14] [code: http-in-license-info]
WARN: Checking OS/2 achVendID. (com.google.fonts/check/vendor_id)
  • WARN OS/2 VendorID value 'DINR' is not yet recognized. If you registered it recently, then it's safe to ignore this warning message. Otherwise, you should set it to your own unique 4 character code, and register it with Microsoft at https://www.microsoft.com/typography/links/vendorlist.aspx
    [code: unknown]
WARN: Is the Grid-fitting and Scan-conversion Procedure ('gasp') table set to optimize rendering? (com.google.fonts/check/gasp)
  • INFO These are the ppm ranges declared on the gasp table:

PPM <= 65535:
flag = 0x0A
- Use grayscale rendering
- Use smoothing along multiple axes with ClearType®
[code: ranges]

  • WARN The gasp range 0xFFFF value 0x0A should be set to 0x0F. [code: unset-flags]
WARN: Ensure fonts have ScriptLangTags declared on the 'meta' table. (com.google.fonts/check/meta/script_lang_tags)
  • WARN This font file does not have a 'meta' table. [code: lacks-meta-table]
INFO: Is there a usable "kern" table declared in the font? (com.google.fonts/check/kern_table)
  • INFO Only a few programs may require the kerning info that this font provides on its "kern" table. [code: kern-found]
INFO: List all superfamily filepaths (com.google.fonts/check/superfamily/list)
  • INFO apache/cherrycreamsoda [code: family-path]
INFO: Font contains all required tables? (com.google.fonts/check/required_tables)
  • INFO This font contains the following optional tables:

    • cvt

    • fpgm

    • loca

    • prep

    • gasp

    • kern [code: optional-tables]

INFO: Check for font-v versioning. (com.google.fonts/check/fontv)
  • INFO Version string is: "Version 1.001"
    The version string must ideally include a git commit hash and either a "dev" or a "release" suffix such as in the example below:
    "Version 1.3; git-0d08353-release" [code: bad-format]
INFO: EPAR table present in font? (com.google.fonts/check/epar)
INFO: Show hinting filesize impact. (com.google.fonts/check/hinting_impact)
  • INFO Hinting filesize impact:
Font(file='apache/cherrycreamsoda/CherryCreamSoda-Regular.ttf', context=CheckRunContext(testables=[...], config={'com.google.fonts/check/file_size': {'WARN_SIZE': 1048576, 'FAIL_SIZE': 9437184}, 'custom_order': None, 'explicit_checks': None, 'exclude_checks': None, 'full_lists': False, 'skip_network': False}))
Dehinted Size 39.1kb
Hinted Size 49.1kb
Increase 9.9kb
Change 25.4 %
[code: size-impact]
INFO: Font has old ttfautohint applied? (com.google.fonts/check/old_ttfautohint)
  • INFO Could not detect which version of ttfautohint was used in this font. It is typically specified as a comment in the font version entries of the 'name' table. Such font version strings are currently: ['Version 1.001', 'Version 1.001'] [code: version-not-detected]

[2] Family checks
🔥 FAIL: OS/2.fsSelection bit 7 (USE_TYPO_METRICS) is set in all fonts. (com.google.fonts/check/os2/use_typo_metrics)
  • 🔥 FAIL OS/2.fsSelection bit 7 (USE_TYPO_METRICS) wasNOT set in the following fonts: ['apache/cherrycreamsoda/CherryCreamSoda-Regular.ttf']. [code: missing-os2-fsselection-bit7]
INFO: Check axis ordering on the STAT table. (com.google.fonts/check/STAT/axis_order)
  • INFO All of the fonts lack a STAT table.
    [code: summary]

Summary

💔 ERROR ☠ FATAL 🔥 FAIL ⚠ WARN 💤 SKIP ℹ INFO 🍞 PASS 🔎 DEBUG
0 0 11 14 67 8 157 0
0% 0% 4% 5% 26% 3% 61% 0%

Note: The following loglevels were omitted in this report:

  • SKIP
  • PASS
  • DEBUG

Copy link

FontBakery report

fontbakery version: 0.12.0a1

Check results

[32] Chewy-Regular.ttf
🔥 FAIL: Checking OS/2 Metrics match hhea Metrics. (com.google.fonts/check/os2_metrics_match_hhea)
  • 🔥 FAIL OS/2 sTypoAscender (801) and hhea ascent (1003) must be equal. [code: ascender]
🔥 FAIL: Font contains '.notdef' as its first glyph? (com.google.fonts/check/mandatory_glyphs)
  • 🔥 FAIL The '.notdef' glyph should contain a drawing, but it is blank. [code: notdef-is-blank]
🔥 FAIL: Copyright notices match canonical pattern in METADATA.pb (com.google.fonts/check/metadata/valid_copyright)
  • 🔥 FAIL METADATA.pb: Copyright notices should match a pattern similar to:

"Copyright 2020 The Familyname Project Authors (git url)"

But instead we have got:

"copyright (c) 2010 by font diner, inc dba sideshow. all rights reserved." [code: bad-notice-format]

🔥 FAIL: METADATA.pb: Designers are listed correctly on the Google Fonts catalog? (com.google.fonts/check/metadata/designer_profiles)
  • 🔥 FAIL Designer Sideshow still does not have an avatar image. Please provide one. [code: missing-avatar]
🔥 FAIL: METADATA.pb: Check URL on copyright string is the same as in repository_url field. (com.google.fonts/check/metadata/consistent_repo_urls)
  • 🔥 FAIL Please add a family.source.repository_url entry. [code: lacks-repo-url]
🔥 FAIL: Does DESCRIPTION file contain a upstream Git repo URL? (com.google.fonts/check/description/git_url)
  • 🔥 FAIL Please host your font project on a public Git repo (such as GitHub or GitLab) and place a link in the DESCRIPTION.en_us.html file. [code: lacks-git-url]
🔥 FAIL: Check license file has good copyright string. (com.google.fonts/check/license/OFL_copyright)
  • 🔥 FAIL First line in license file is:

"apache license"

which does not match the expected format, similar to:

"Copyright 2022 The Familyname Project Authors (git url)" [code: bad-format]

🔥 FAIL: Check Google Fonts glyph coverage. (com.google.fonts/check/glyph_coverage)
  • 🔥 FAIL Missing required codepoints:

    • 0x0100 (LATIN CAPITAL LETTER A WITH MACRON)

    • 0x0101 (LATIN SMALL LETTER A WITH MACRON)

    • 0x0102 (LATIN CAPITAL LETTER A WITH BREVE)

    • 0x0103 (LATIN SMALL LETTER A WITH BREVE)

    • 0x0104 (LATIN CAPITAL LETTER A WITH OGONEK)

    • 0x0105 (LATIN SMALL LETTER A WITH OGONEK)

    • 0x0106 (LATIN CAPITAL LETTER C WITH ACUTE)

    • 0x0107 (LATIN SMALL LETTER C WITH ACUTE)

    • 0x010A (LATIN CAPITAL LETTER C WITH DOT ABOVE)

    • 0x010B (LATIN SMALL LETTER C WITH DOT ABOVE)

    • 97 more.

Use -F or --full-lists to disable shortening of long lists. [code: missing-codepoints]

🔥 FAIL: Copyright notices match canonical pattern in fonts (com.google.fonts/check/font_copyright)
  • 🔥 FAIL Name Table entry: Copyright notices should match a pattern similar to:

"Copyright 2019 The Familyname Project Authors (git url)"

But instead we have got:

"Copyright (c) 2010 by Font Diner, Inc DBA Sideshow. All rights reserved."
[code: bad-notice-format]

  • 🔥 FAIL Name Table entry: Copyright notices should match a pattern similar to:

"Copyright 2019 The Familyname Project Authors (git url)"

But instead we have got:

"Copyright (c) 2010 by Font Diner, Inc DBA Sideshow. All rights reserved."
[code: bad-notice-format]

🔥 FAIL: Font enables smart dropout control in "prep" table instructions? (com.google.fonts/check/smart_dropout)
  • 🔥 FAIL The 'prep' table does not contain TrueType instructions enabling smart dropout control. To fix, export the font with autohinting enabled, or run ttfautohint on the font, or run the gftools fix-nonhinting script. [code: lacks-smart-dropout]
🔥 FAIL: Check if the vertical metrics of a family are similar to the same family hosted on Google Fonts. (com.google.fonts/check/vertical_metrics_regressions)
  • 🔥 FAIL Chewy Regular: OS/2 sTypoAscender is 801 when it should be 1003 [code: bad-typo-ascender]
  • 🔥 FAIL Chewy Regular: OS/2 sTypoDescender is -308 when it should be -310 [code: bad-typo-descender]
WARN: Does GPOS table have kerning information? This check skips monospaced fonts as defined by post.isFixedPitch value (com.google.fonts/check/gpos_kerning_info)
  • WARN GPOS table lacks kerning information. [code: lacks-kern-info]
WARN: Check that legacy accents aren't used in composite glyphs. (com.google.fonts/check/legacy_accents)
  • WARN Glyph "Scaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "scaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Yacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "yacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Zcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "zcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Adieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Eacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ntilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Odieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Udieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "aacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "agrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "acircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "adieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "atilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "eacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "egrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ecircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "edieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "iacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "igrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "icircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "idieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ntilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "oacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ograve" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ocircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "odieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "otilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ugrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ucircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "udieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Agrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Atilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Otilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ydieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ydieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Acircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ecircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Aacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Edieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Egrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Iacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Icircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Idieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Igrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Oacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ocircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ograve" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Uacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ucircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ugrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
WARN: Check if each glyph has the recommended amount of contours. (com.google.fonts/check/contour_count)
  • WARN This check inspects the glyph outlines and detects the total number of contours in each of them. The expected values are infered from the typical ammounts of contours observed in a large collection of reference font families. The divergences listed below may simply indicate a significantly different design on some of your glyphs. On the other hand, some of these may flag actual bugs in the font such as glyphs mapped to an incorrect codepoint. Please consider reviewing the design and codepoint assignment of these to make sure they are correct.

The following glyphs do not have the recommended number of contours:

- Glyph name: sfthyphen	Contours detected: 1	Expected: 0

- Glyph name: aring	Contours detected: 3	Expected: 4

- Glyph name: oslash	Contours detected: 2	Expected: 3

- Glyph name: aring	Contours detected: 3	Expected: 4

- Glyph name: fi	Contours detected: 1	Expected: 3

- Glyph name: oslash	Contours detected: 2	Expected: 3

[code: contour-count]

WARN: Does the font contain a soft hyphen? (com.google.fonts/check/soft_hyphen)
  • WARN This font has a 'Soft Hyphen' character. [code: softhyphen]
WARN: Check math signs have the same width. (com.google.fonts/check/math_signs_width)
  • WARN The most common width is 481 among a set of 2 math glyphs.
    The following math glyphs have a different width, though:

Width = 332:
less

Width = 492:
equal

Width = 323:
greater

Width = 542:
logicalnot

Width = 418:
multiply

Width = 450:
divide

Width = 480:
minus
[code: width-outliers]

WARN: Checking Vertical Metric Linegaps. (com.google.fonts/check/linegaps)
  • WARN hhea lineGap is not equal to 0. [code: hhea]
WARN: Do any segments have colinear vectors? (com.google.fonts/check/outline_colinear_vectors)
  • WARN The following glyphs have colinear vectors:

    • q (U+0071): L<<319.0,-72.0>--<319.0,6.0>> -> L<<319.0,6.0>--<319.0,62.0>> [code: found-colinear-vectors]
WARN: Do outlines contain any jaggy segments? (com.google.fonts/check/outline_jaggy_segments)
  • WARN The following glyphs have jaggy segments:

    • M (U+004D): B<<234.0,353.5>-<225.0,395.0>-<220.0,423.0>>/B<<220.0,423.0>-<220.0,402.0>-<219.5,376.5>> = 10.124671655397806

    • M (U+004D): B<<539.0,358.0>-<534.0,408.0>-<531.0,445.0>>/B<<531.0,445.0>-<525.0,407.0>-<517.0,360.0>> = 13.608090041799006

    • W (U+0057): B<<436.0,399.0>-<440.0,368.0>-<442.0,355.0>>/B<<442.0,355.0>-<443.0,371.0>-<447.0,405.5>> = 12.322496637552554

    • W (U+0057): L<<191.0,404.0>--<190.0,378.0>>/B<<190.0,378.0>-<193.0,391.0>-<200.5,419.0>> = 10.792018630150714

    • at (U+0040): B<<447.5,189.0>-<420.0,216.0>-<415.0,253.0>>/B<<415.0,253.0>-<414.0,233.0>-<404.5,218.0>> = 10.558456948128304 [code: found-jaggy-segments]

WARN: Check for codepoints not covered by METADATA subsets. (com.google.fonts/check/metadata/unreachable_subsetting)
  • WARN The following codepoints supported by the font are not covered by
    any subsets defined in the font's metadata file, and will never
    be served. You can solve this by either manually adding additional
    subset declarations to METADATA.pb, or by editing the glyphset
    definitions.

  • U+0020 SPACE: try adding one of: grantha, saurashtra, vietnamese, kawi, samaritan, znamenny, mahajani, nko, deseret, cypriot, tai-le, ottoman-siyaq-numbers, old-italic, nyiakeng-puachue-hmong, new-tai-lue, old-sogdian, dives-akuru, inscriptional-pahlavi, sinhala, masaram-gondi, sogdian, lycian, oriya, wancho, buginese, osmanya, phags-pa, nushu, medefaidrin, myanmar, mende-kikakui, gothic, mandaic, tai-tham, thaana, linear-a, egyptian-hieroglyphs, malayalam, duployan, manichaean, makasar, bamum, old-persian, pau-cin-hau, imperial-aramaic, khudawadi, arabic, chorasmian, kayah-li, shavian, carian, indic-siyaq-numbers, khojki, ethiopic, old-permic, cyrillic, symbols, signwriting, hatran, siddham, pahawh-hmong, khmer, dogra, tangut, ugaritic, rejang, cham, limbu, hanunoo, korean, chinese-traditional, inscriptional-parthian, chinese-simplified, ogham, cuneiform, elymaic, vai, toto, warang-citi, sora-sompeng, old-hungarian, yezidi, marchen, meroitic, chakma, nabataean, tirhuta, palmyrene, soyombo, modi, nandinagari, adlam, tifinagh, nag-mundari, gunjala-gondi, phoenician, lisu, syloti-nagri, tibetan, telugu, glagolitic, ahom, meetei-mayek, lydian, lao, latin-ext, math, kaithi, batak, cypro-minoan, armenian, braille, meroitic-cursive, devanagari, old-turkic, kannada, vithkuqi, miao, meroitic-hieroglyphs, hebrew, takri, brahmi, mro, hanifi-rohingya, georgian, greek-ext, mongolian, gujarati, tagbanwa, runic, chinese-hongkong, greek, gurmukhi, ol-chiki, cyrillic-ext, yi, bengali, sharada, canadian-aboriginal, elbasan, caucasian-albanian, newa, mayan-numerals, balinese, javanese, kharoshthi, tai-viet, lepcha, buhid, cherokee, tamil, old-north-arabian, multani, bhaiksuki, old-uyghur, thai, coptic, linear-b, syriac, japanese, zanabazar-square, old-south-arabian, sundanese, tamil-supplement, psalter-pahlavi, bassa-vah, tangsa, tagalog, music, khitan-small-script, anatolian-hieroglyphs, osage, avestan

  • U+00A0 NO-BREAK SPACE: try adding one of: grantha, saurashtra, vietnamese, kawi, samaritan, znamenny, mahajani, nko, deseret, cypriot, tai-le, ottoman-siyaq-numbers, old-italic, nyiakeng-puachue-hmong, new-tai-lue, old-sogdian, dives-akuru, inscriptional-pahlavi, sinhala, masaram-gondi, sogdian, lycian, oriya, wancho, buginese, osmanya, phags-pa, nushu, medefaidrin, myanmar, mende-kikakui, gothic, mandaic, tai-tham, thaana, linear-a, egyptian-hieroglyphs, malayalam, duployan, manichaean, makasar, bamum, old-persian, pau-cin-hau, imperial-aramaic, khudawadi, arabic, chorasmian, kayah-li, shavian, carian, indic-siyaq-numbers, khojki, ethiopic, old-permic, cyrillic, symbols, signwriting, hatran, siddham, pahawh-hmong, khmer, dogra, tangut, ugaritic, rejang, cham, limbu, hanunoo, korean, chinese-traditional, inscriptional-parthian, chinese-simplified, ogham, cuneiform, elymaic, vai, toto, warang-citi, sora-sompeng, old-hungarian, yezidi, marchen, meroitic, chakma, nabataean, tirhuta, palmyrene, soyombo, modi, nandinagari, adlam, tifinagh, nag-mundari, gunjala-gondi, phoenician, lisu, syloti-nagri, tibetan, telugu, glagolitic, ahom, meetei-mayek, lydian, lao, latin-ext, math, kaithi, batak, cypro-minoan, armenian, braille, meroitic-cursive, devanagari, old-turkic, kannada, vithkuqi, miao, meroitic-hieroglyphs, hebrew, takri, brahmi, mro, hanifi-rohingya, georgian, greek-ext, mongolian, gujarati, tagbanwa, runic, chinese-hongkong, greek, gurmukhi, ol-chiki, cyrillic-ext, yi, bengali, sharada, canadian-aboriginal, elbasan, caucasian-albanian, newa, mayan-numerals, balinese, javanese, kharoshthi, tai-viet, lepcha, buhid, cherokee, tamil, old-north-arabian, multani, bhaiksuki, old-uyghur, thai, coptic, linear-b, syriac, japanese, zanabazar-square, old-south-arabian, sundanese, tamil-supplement, psalter-pahlavi, bassa-vah, tangsa, tagalog, music, khitan-small-script, anatolian-hieroglyphs, osage, avestan

  • U+0141 LATIN CAPITAL LETTER L WITH STROKE: try adding latin-ext

  • U+0142 LATIN SMALL LETTER L WITH STROKE: try adding latin-ext

  • U+0160 LATIN CAPITAL LETTER S WITH CARON: try adding latin-ext

  • U+0161 LATIN SMALL LETTER S WITH CARON: try adding latin-ext

  • U+0178 LATIN CAPITAL LETTER Y WITH DIAERESIS: try adding latin-ext

  • U+017D LATIN CAPITAL LETTER Z WITH CARON: try adding latin-ext

  • U+017E LATIN SMALL LETTER Z WITH CARON: try adding latin-ext

  • U+02C7 CARON: try adding one of: tifinagh, yi, canadian-aboriginal
    7 more.

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: latin, menu [code: unreachable-subsetting]

WARN: License URL matches License text on name table? (com.google.fonts/check/name/license_url)
  • WARN Please consider using HTTPS URLs at name table entry [plat=1, enc=0, name=14] [code: http-in-license-info]
  • WARN Please consider using HTTPS URLs at name table entry [plat=3, enc=1, name=14] [code: http-in-license-info]
WARN: Checking OS/2 achVendID. (com.google.fonts/check/vendor_id)
  • WARN OS/2 VendorID value 'DINR' is not yet recognized. If you registered it recently, then it's safe to ignore this warning message. Otherwise, you should set it to your own unique 4 character code, and register it with Microsoft at https://www.microsoft.com/typography/links/vendorlist.aspx
    [code: unknown]
WARN: Is the Grid-fitting and Scan-conversion Procedure ('gasp') table set to optimize rendering? (com.google.fonts/check/gasp)
  • INFO These are the ppm ranges declared on the gasp table:

PPM <= 65535:
flag = 0x0A
- Use grayscale rendering
- Use smoothing along multiple axes with ClearType®
[code: ranges]

  • WARN The gasp range 0xFFFF value 0x0A should be set to 0x0F. [code: unset-flags]
WARN: Ensure fonts have ScriptLangTags declared on the 'meta' table. (com.google.fonts/check/meta/script_lang_tags)
  • WARN This font file does not have a 'meta' table. [code: lacks-meta-table]
INFO: Is there a usable "kern" table declared in the font? (com.google.fonts/check/kern_table)
  • INFO Only a few programs may require the kerning info that this font provides on its "kern" table. [code: kern-found]
INFO: List all superfamily filepaths (com.google.fonts/check/superfamily/list)
  • INFO apache/chewy [code: family-path]
INFO: Font contains all required tables? (com.google.fonts/check/required_tables)
  • INFO This font contains the following optional tables:

    • cvt

    • fpgm

    • loca

    • prep

    • gasp

    • kern [code: optional-tables]

INFO: Check for font-v versioning. (com.google.fonts/check/fontv)
  • INFO Version string is: "Version 1.001"
    The version string must ideally include a git commit hash and either a "dev" or a "release" suffix such as in the example below:
    "Version 1.3; git-0d08353-release" [code: bad-format]
INFO: EPAR table present in font? (com.google.fonts/check/epar)
INFO: Show hinting filesize impact. (com.google.fonts/check/hinting_impact)
  • INFO Hinting filesize impact:
Font(file='apache/chewy/Chewy-Regular.ttf', context=CheckRunContext(testables=[...], config={'com.google.fonts/check/file_size': {'WARN_SIZE': 1048576, 'FAIL_SIZE': 9437184}, 'custom_order': None, 'explicit_checks': None, 'exclude_checks': None, 'full_lists': False, 'skip_network': False}))
Dehinted Size 35.1kb
Hinted Size 40.3kb
Increase 5.2kb
Change 14.7 %
[code: size-impact]
INFO: Familyname must be unique according to namecheck.fontdata.com (com.google.fonts/check/fontdata_namecheck)
INFO: Font has old ttfautohint applied? (com.google.fonts/check/old_ttfautohint)
  • INFO Could not detect which version of ttfautohint was used in this font. It is typically specified as a comment in the font version entries of the 'name' table. Such font version strings are currently: ['Version 1.001', 'Version 1.001'] [code: version-not-detected]

[2] Family checks
🔥 FAIL: OS/2.fsSelection bit 7 (USE_TYPO_METRICS) is set in all fonts. (com.google.fonts/check/os2/use_typo_metrics)
  • 🔥 FAIL OS/2.fsSelection bit 7 (USE_TYPO_METRICS) wasNOT set in the following fonts: ['apache/chewy/Chewy-Regular.ttf']. [code: missing-os2-fsselection-bit7]
INFO: Check axis ordering on the STAT table. (com.google.fonts/check/STAT/axis_order)
  • INFO All of the fonts lack a STAT table.
    [code: summary]

Summary

💔 ERROR ☠ FATAL 🔥 FAIL ⚠ WARN 💤 SKIP ℹ INFO 🍞 PASS 🔎 DEBUG
0 0 12 13 67 9 156 0
0% 0% 5% 5% 26% 4% 61% 0%

Note: The following loglevels were omitted in this report:

  • SKIP
  • PASS
  • DEBUG

Copy link

FontBakery report

fontbakery version: 0.12.0a1

Check results

[31] ComingSoon-Regular.ttf
🔥 FAIL: Checking OS/2 Metrics match hhea Metrics. (com.google.fonts/check/os2_metrics_match_hhea)
  • 🔥 FAIL OS/2 sTypoAscender (792) and hhea ascent (1053) must be equal. [code: ascender]
🔥 FAIL: Font contains '.notdef' as its first glyph? (com.google.fonts/check/mandatory_glyphs)
  • 🔥 FAIL The '.notdef' glyph should contain a drawing, but it is blank. [code: notdef-is-blank]
🔥 FAIL: Copyright notices match canonical pattern in METADATA.pb (com.google.fonts/check/metadata/valid_copyright)
  • 🔥 FAIL METADATA.pb: Copyright notices should match a pattern similar to:

"Copyright 2020 The Familyname Project Authors (git url)"

But instead we have got:

"copyright (c) 2010 by open window. all rights reserved." [code: bad-notice-format]

🔥 FAIL: METADATA.pb: Check URL on copyright string is the same as in repository_url field. (com.google.fonts/check/metadata/consistent_repo_urls)
  • 🔥 FAIL Please add a family.source.repository_url entry. [code: lacks-repo-url]
🔥 FAIL: DESCRIPTION.en_us.html must have more than 200 bytes. (com.google.fonts/check/description/min_length)
  • 🔥 FAIL DESCRIPTION.en_us.html must have size larger than 200 bytes. [code: too-short]
🔥 FAIL: Does DESCRIPTION file contain a upstream Git repo URL? (com.google.fonts/check/description/git_url)
  • 🔥 FAIL Please host your font project on a public Git repo (such as GitHub or GitLab) and place a link in the DESCRIPTION.en_us.html file. [code: lacks-git-url]
🔥 FAIL: Check license file has good copyright string. (com.google.fonts/check/license/OFL_copyright)
  • 🔥 FAIL First line in license file is:

"apache license"

which does not match the expected format, similar to:

"Copyright 2022 The Familyname Project Authors (git url)" [code: bad-format]

🔥 FAIL: Check Google Fonts glyph coverage. (com.google.fonts/check/glyph_coverage)
  • 🔥 FAIL Missing required codepoints:

    • 0x0100 (LATIN CAPITAL LETTER A WITH MACRON)

    • 0x0101 (LATIN SMALL LETTER A WITH MACRON)

    • 0x0102 (LATIN CAPITAL LETTER A WITH BREVE)

    • 0x0103 (LATIN SMALL LETTER A WITH BREVE)

    • 0x0104 (LATIN CAPITAL LETTER A WITH OGONEK)

    • 0x0105 (LATIN SMALL LETTER A WITH OGONEK)

    • 0x0106 (LATIN CAPITAL LETTER C WITH ACUTE)

    • 0x0107 (LATIN SMALL LETTER C WITH ACUTE)

    • 0x010A (LATIN CAPITAL LETTER C WITH DOT ABOVE)

    • 0x010B (LATIN SMALL LETTER C WITH DOT ABOVE)

    • 98 more.

Use -F or --full-lists to disable shortening of long lists. [code: missing-codepoints]

🔥 FAIL: Copyright notices match canonical pattern in fonts (com.google.fonts/check/font_copyright)
  • 🔥 FAIL Name Table entry: Copyright notices should match a pattern similar to:

"Copyright 2019 The Familyname Project Authors (git url)"

But instead we have got:

"Copyright (c) 2010 by Open Window. All rights reserved."
[code: bad-notice-format]

  • 🔥 FAIL Name Table entry: Copyright notices should match a pattern similar to:

"Copyright 2019 The Familyname Project Authors (git url)"

But instead we have got:

"Copyright (c) 2010 by Open Window. All rights reserved."
[code: bad-notice-format]

🔥 FAIL: Font enables smart dropout control in "prep" table instructions? (com.google.fonts/check/smart_dropout)
  • 🔥 FAIL The 'prep' table does not contain TrueType instructions enabling smart dropout control. To fix, export the font with autohinting enabled, or run ttfautohint on the font, or run the gftools fix-nonhinting script. [code: lacks-smart-dropout]
🔥 FAIL: Check if the vertical metrics of a family are similar to the same family hosted on Google Fonts. (com.google.fonts/check/vertical_metrics_regressions)
  • 🔥 FAIL Coming Soon Regular: OS/2 sTypoAscender is 792 when it should be 1053 [code: bad-typo-ascender]
  • 🔥 FAIL Coming Soon Regular: OS/2 sTypoDescender is -444 when it should be -498 [code: bad-typo-descender]
WARN: Check that legacy accents aren't used in composite glyphs. (com.google.fonts/check/legacy_accents)
  • WARN Glyph "Agrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Aacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Acircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Atilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Adieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Egrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Eacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ecircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Edieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Igrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Iacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Icircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Idieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ntilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ograve" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Oacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ocircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Otilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Odieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ugrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Uacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ucircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Udieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Yacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "agrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "aacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "acircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "atilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "adieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "egrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "eacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ecircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "edieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "igrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "iacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "icircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "idieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ntilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ograve" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "oacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ocircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "otilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "odieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ugrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ucircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "udieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "yacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ydieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Scaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "scaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ydieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Zcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "zcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
WARN: Check font contains no unreachable glyphs (com.google.fonts/check/unreachable_glyphs)
  • WARN The following glyphs could not be reached by codepoint or substitution rules:

    • nonmarkingreturn
      [code: unreachable-glyphs]
WARN: Check if each glyph has the recommended amount of contours. (com.google.fonts/check/contour_count)
  • WARN This check inspects the glyph outlines and detects the total number of contours in each of them. The expected values are infered from the typical ammounts of contours observed in a large collection of reference font families. The divergences listed below may simply indicate a significantly different design on some of your glyphs. On the other hand, some of these may flag actual bugs in the font such as glyphs mapped to an incorrect codepoint. Please consider reviewing the design and codepoint assignment of these to make sure they are correct.

The following glyphs do not have the recommended number of contours:

- Glyph name: sfthyphen	Contours detected: 1	Expected: 0

- Glyph name: aring	Contours detected: 3	Expected: 4

- Glyph name: aring	Contours detected: 3	Expected: 4

- Glyph name: fi	Contours detected: 2	Expected: 3

- Glyph name: fl	Contours detected: 1	Expected: 2

[code: contour-count]

WARN: Does the font contain a soft hyphen? (com.google.fonts/check/soft_hyphen)
  • WARN This font has a 'Soft Hyphen' character. [code: softhyphen]
WARN: Check math signs have the same width. (com.google.fonts/check/math_signs_width)
  • WARN The most common width is 469 among a set of 2 math glyphs.
    The following math glyphs have a different width, though:

Width = 489:
plus

Width = 540:
equal

Width = 620:
logicalnot

Width = 498:
plusminus

Width = 422:
multiply

Width = 519:
divide

Width = 499:
minus
[code: width-outliers]

WARN: Checking Vertical Metric Linegaps. (com.google.fonts/check/linegaps)
  • WARN hhea lineGap is not equal to 0. [code: hhea]
WARN: Do any segments have colinear vectors? (com.google.fonts/check/outline_colinear_vectors)
  • WARN The following glyphs have colinear vectors:

    • Acircumflex (U+00C2): L<<198.0,848.0>--<260.0,913.0>> -> L<<260.0,913.0>--<325.0,972.0>>

    • Acircumflex (U+00C2): L<<349.0,918.0>--<299.0,872.0>> -> L<<299.0,872.0>--<238.0,809.0>>

    • Acircumflex (U+00C2): L<<372.0,971.0>--<444.0,915.0>> -> L<<444.0,915.0>--<516.0,858.0>>

    • Acircumflex (U+00C2): L<<481.0,814.0>--<410.0,871.0>> -> L<<410.0,871.0>--<349.0,918.0>>

    • B (U+0042): L<<518.0,190.0>--<519.0,201.0>> -> L<<519.0,201.0>--<519.0,208.0>>

    • Ccedilla (U+00C7): L<<144.0,-105.0>--<190.0,-56.0>> -> L<<190.0,-56.0>--<198.0,-48.0>>

    • Ecircumflex (U+00CA): L<<148.0,899.0>--<210.0,964.0>> -> L<<210.0,964.0>--<275.0,1023.0>>

    • Ecircumflex (U+00CA): L<<299.0,969.0>--<249.0,923.0>> -> L<<249.0,923.0>--<188.0,860.0>>

    • Ecircumflex (U+00CA): L<<322.0,1022.0>--<394.0,966.0>> -> L<<394.0,966.0>--<466.0,909.0>>

    • Ecircumflex (U+00CA): L<<431.0,865.0>--<360.0,922.0>> -> L<<360.0,922.0>--<299.0,969.0>>

    • 83 more.

Use -F or --full-lists to disable shortening of long lists. [code: found-colinear-vectors]

WARN: Do outlines contain any semi-vertical or semi-horizontal lines? (com.google.fonts/check/outline_semi_vertical)
  • WARN The following glyphs have semi-vertical/semi-horizontal lines:

    • macron (U+00AF): L<<251.0,602.0>--<466.0,601.0>>

    • macron (U+00AF): L<<466.0,545.0>--<251.0,546.0>> [code: found-semi-vertical]

WARN: Check for codepoints not covered by METADATA subsets. (com.google.fonts/check/metadata/unreachable_subsetting)
  • WARN The following codepoints supported by the font are not covered by
    any subsets defined in the font's metadata file, and will never
    be served. You can solve this by either manually adding additional
    subset declarations to METADATA.pb, or by editing the glyphset
    definitions.

  • U+0020 SPACE: try adding one of: medefaidrin, nandinagari, new-tai-lue, vietnamese, mende-kikakui, siddham, math, linear-b, ethiopic, warang-citi, kaithi, elymaic, adlam, cyrillic-ext, tangsa, nushu, ottoman-siyaq-numbers, japanese, old-uyghur, khmer, palmyrene, nko, tai-tham, makasar, bassa-vah, lao, hanifi-rohingya, old-south-arabian, music, psalter-pahlavi, sinhala, linear-a, osage, tibetan, tirhuta, gurmukhi, khitan-small-script, khudawadi, greek-ext, grantha, toto, nyiakeng-puachue-hmong, caucasian-albanian, deseret, phags-pa, multani, georgian, pahawh-hmong, masaram-gondi, nag-mundari, yezidi, bengali, yi, old-italic, gujarati, bamum, gunjala-gondi, canadian-aboriginal, vithkuqi, old-sogdian, nabataean, cham, cherokee, meroitic-cursive, buhid, old-hungarian, kayah-li, mro, saurashtra, myanmar, osmanya, latin-ext, hebrew, symbols, carian, greek, soyombo, avestan, elbasan, tai-le, old-turkic, ol-chiki, chorasmian, oriya, signwriting, hanunoo, tangut, mandaic, shavian, coptic, sogdian, ogham, syriac, runic, tagalog, meetei-mayek, tai-viet, javanese, sharada, tifinagh, chinese-traditional, znamenny, brahmi, egyptian-hieroglyphs, korean, cypro-minoan, lisu, armenian, limbu, syloti-nagri, lycian, cypriot, old-persian, vai, sora-sompeng, duployan, ugaritic, old-north-arabian, indic-siyaq-numbers, pau-cin-hau, kharoshthi, lydian, cyrillic, miao, mongolian, meroitic-hieroglyphs, modi, tagbanwa, buginese, tamil-supplement, anatolian-hieroglyphs, gothic, inscriptional-pahlavi, thaana, lepcha, newa, tamil, cuneiform, marchen, arabic, phoenician, chinese-simplified, takri, mahajani, batak, kannada, dogra, samaritan, rejang, balinese, glagolitic, zanabazar-square, telugu, bhaiksuki, dives-akuru, manichaean, malayalam, braille, sundanese, hatran, mayan-numerals, old-permic, inscriptional-parthian, khojki, thai, ahom, wancho, chakma, meroitic, imperial-aramaic, chinese-hongkong, kawi, devanagari

  • U+00A0 NO-BREAK SPACE: try adding one of: medefaidrin, nandinagari, new-tai-lue, vietnamese, mende-kikakui, siddham, math, linear-b, ethiopic, warang-citi, kaithi, elymaic, adlam, cyrillic-ext, tangsa, nushu, ottoman-siyaq-numbers, japanese, old-uyghur, khmer, palmyrene, nko, tai-tham, makasar, bassa-vah, lao, hanifi-rohingya, old-south-arabian, music, psalter-pahlavi, sinhala, linear-a, osage, tibetan, tirhuta, gurmukhi, khitan-small-script, khudawadi, greek-ext, grantha, toto, nyiakeng-puachue-hmong, caucasian-albanian, deseret, phags-pa, multani, georgian, pahawh-hmong, masaram-gondi, nag-mundari, yezidi, bengali, yi, old-italic, gujarati, bamum, gunjala-gondi, canadian-aboriginal, vithkuqi, old-sogdian, nabataean, cham, cherokee, meroitic-cursive, buhid, old-hungarian, kayah-li, mro, saurashtra, myanmar, osmanya, latin-ext, hebrew, symbols, carian, greek, soyombo, avestan, elbasan, tai-le, old-turkic, ol-chiki, chorasmian, oriya, signwriting, hanunoo, tangut, mandaic, shavian, coptic, sogdian, ogham, syriac, runic, tagalog, meetei-mayek, tai-viet, javanese, sharada, tifinagh, chinese-traditional, znamenny, brahmi, egyptian-hieroglyphs, korean, cypro-minoan, lisu, armenian, limbu, syloti-nagri, lycian, cypriot, old-persian, vai, sora-sompeng, duployan, ugaritic, old-north-arabian, indic-siyaq-numbers, pau-cin-hau, kharoshthi, lydian, cyrillic, miao, mongolian, meroitic-hieroglyphs, modi, tagbanwa, buginese, tamil-supplement, anatolian-hieroglyphs, gothic, inscriptional-pahlavi, thaana, lepcha, newa, tamil, cuneiform, marchen, arabic, phoenician, chinese-simplified, takri, mahajani, batak, kannada, dogra, samaritan, rejang, balinese, glagolitic, zanabazar-square, telugu, bhaiksuki, dives-akuru, manichaean, malayalam, braille, sundanese, hatran, mayan-numerals, old-permic, inscriptional-parthian, khojki, thai, ahom, wancho, chakma, meroitic, imperial-aramaic, chinese-hongkong, kawi, devanagari

  • U+0141 LATIN CAPITAL LETTER L WITH STROKE: try adding latin-ext

  • U+0142 LATIN SMALL LETTER L WITH STROKE: try adding latin-ext

  • U+0160 LATIN CAPITAL LETTER S WITH CARON: try adding latin-ext

  • U+0161 LATIN SMALL LETTER S WITH CARON: try adding latin-ext

  • U+0178 LATIN CAPITAL LETTER Y WITH DIAERESIS: try adding latin-ext

  • U+017D LATIN CAPITAL LETTER Z WITH CARON: try adding latin-ext

  • U+017E LATIN SMALL LETTER Z WITH CARON: try adding latin-ext

  • U+02C7 CARON: try adding one of: canadian-aboriginal, yi, tifinagh
    7 more.

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: latin, menu [code: unreachable-subsetting]

WARN: License URL matches License text on name table? (com.google.fonts/check/name/license_url)
  • WARN Please consider using HTTPS URLs at name table entry [plat=1, enc=0, name=14] [code: http-in-license-info]
  • WARN Please consider using HTTPS URLs at name table entry [plat=3, enc=1, name=14] [code: http-in-license-info]
WARN: Is the Grid-fitting and Scan-conversion Procedure ('gasp') table set to optimize rendering? (com.google.fonts/check/gasp)
  • INFO These are the ppm ranges declared on the gasp table:

PPM <= 65535:
flag = 0x0A
- Use grayscale rendering
- Use smoothing along multiple axes with ClearType®
[code: ranges]

  • WARN The gasp range 0xFFFF value 0x0A should be set to 0x0F. [code: unset-flags]
WARN: Ensure fonts have ScriptLangTags declared on the 'meta' table. (com.google.fonts/check/meta/script_lang_tags)
  • WARN This font file does not have a 'meta' table. [code: lacks-meta-table]
INFO: Is there a usable "kern" table declared in the font? (com.google.fonts/check/kern_table)
  • INFO Only a few programs may require the kerning info that this font provides on its "kern" table. [code: kern-found]
INFO: List all superfamily filepaths (com.google.fonts/check/superfamily/list)
  • INFO apache/comingsoon [code: family-path]
INFO: Font contains all required tables? (com.google.fonts/check/required_tables)
  • INFO This font contains the following optional tables:

    • cvt

    • fpgm

    • loca

    • prep

    • GPOS

    • gasp

    • kern [code: optional-tables]

INFO: Check for font-v versioning. (com.google.fonts/check/fontv)
  • INFO Version string is: "Version 1.002"
    The version string must ideally include a git commit hash and either a "dev" or a "release" suffix such as in the example below:
    "Version 1.3; git-0d08353-release" [code: bad-format]
INFO: EPAR table present in font? (com.google.fonts/check/epar)
INFO: Show hinting filesize impact. (com.google.fonts/check/hinting_impact)
  • INFO Hinting filesize impact:
Font(file='apache/comingsoon/ComingSoon-Regular.ttf', context=CheckRunContext(testables=[...], config={'com.google.fonts/check/file_size': {'WARN_SIZE': 1048576, 'FAIL_SIZE': 9437184}, 'custom_order': None, 'explicit_checks': None, 'exclude_checks': None, 'full_lists': False, 'skip_network': False}))
Dehinted Size 51.4kb
Hinted Size 52.0kb
Increase 588 bytes
Change 1.1 %
[code: size-impact]
INFO: Familyname must be unique according to namecheck.fontdata.com (com.google.fonts/check/fontdata_namecheck)
  • INFO The family name "ComingSoon" seems to be already in use.
    Please visit http://namecheck.fontdata.com for more info. [code: name-collision]
INFO: Font has old ttfautohint applied? (com.google.fonts/check/old_ttfautohint)
  • INFO Could not detect which version of ttfautohint was used in this font. It is typically specified as a comment in the font version entries of the 'name' table. Such font version strings are currently: ['Version 1.002', 'Version 1.002'] [code: version-not-detected]

[2] Family checks
🔥 FAIL: OS/2.fsSelection bit 7 (USE_TYPO_METRICS) is set in all fonts. (com.google.fonts/check/os2/use_typo_metrics)
  • 🔥 FAIL OS/2.fsSelection bit 7 (USE_TYPO_METRICS) wasNOT set in the following fonts: ['apache/comingsoon/ComingSoon-Regular.ttf']. [code: missing-os2-fsselection-bit7]
INFO: Check axis ordering on the STAT table. (com.google.fonts/check/STAT/axis_order)
  • INFO All of the fonts lack a STAT table.
    [code: summary]

Summary

💔 ERROR ☠ FATAL 🔥 FAIL ⚠ WARN 💤 SKIP ℹ INFO 🍞 PASS 🔎 DEBUG
0 0 12 12 67 9 157 0
0% 0% 5% 5% 26% 4% 61% 0%

Note: The following loglevels were omitted in this report:

  • SKIP
  • PASS
  • DEBUG

Copy link

FontBakery report

fontbakery version: 0.12.0a1

Check results

[30] CraftyGirls-Regular.ttf
🔥 FAIL: Checking OS/2 Metrics match hhea Metrics. (com.google.fonts/check/os2_metrics_match_hhea)
  • 🔥 FAIL OS/2 sTypoAscender (761) and hhea ascent (1001) must be equal. [code: ascender]
🔥 FAIL: Font contains '.notdef' as its first glyph? (com.google.fonts/check/mandatory_glyphs)
  • 🔥 FAIL The '.notdef' glyph should contain a drawing, but it is blank. [code: notdef-is-blank]
🔥 FAIL: Copyright notices match canonical pattern in METADATA.pb (com.google.fonts/check/metadata/valid_copyright)
  • 🔥 FAIL METADATA.pb: Copyright notices should match a pattern similar to:

"Copyright 2020 The Familyname Project Authors (git url)"

But instead we have got:

"copyright (c) 2010 by font diner, inc dba tart workshop. all rights reserved." [code: bad-notice-format]

🔥 FAIL: METADATA.pb: Check URL on copyright string is the same as in repository_url field. (com.google.fonts/check/metadata/consistent_repo_urls)
  • 🔥 FAIL Please add a family.source.repository_url entry. [code: lacks-repo-url]
🔥 FAIL: Does DESCRIPTION file contain a upstream Git repo URL? (com.google.fonts/check/description/git_url)
  • 🔥 FAIL Please host your font project on a public Git repo (such as GitHub or GitLab) and place a link in the DESCRIPTION.en_us.html file. [code: lacks-git-url]
🔥 FAIL: Check license file has good copyright string. (com.google.fonts/check/license/OFL_copyright)
  • 🔥 FAIL First line in license file is:

"apache license"

which does not match the expected format, similar to:

"Copyright 2022 The Familyname Project Authors (git url)" [code: bad-format]

🔥 FAIL: Check Google Fonts glyph coverage. (com.google.fonts/check/glyph_coverage)
  • 🔥 FAIL Missing required codepoints:

    • 0x0100 (LATIN CAPITAL LETTER A WITH MACRON)

    • 0x0101 (LATIN SMALL LETTER A WITH MACRON)

    • 0x0102 (LATIN CAPITAL LETTER A WITH BREVE)

    • 0x0103 (LATIN SMALL LETTER A WITH BREVE)

    • 0x0104 (LATIN CAPITAL LETTER A WITH OGONEK)

    • 0x0105 (LATIN SMALL LETTER A WITH OGONEK)

    • 0x0106 (LATIN CAPITAL LETTER C WITH ACUTE)

    • 0x0107 (LATIN SMALL LETTER C WITH ACUTE)

    • 0x010A (LATIN CAPITAL LETTER C WITH DOT ABOVE)

    • 0x010B (LATIN SMALL LETTER C WITH DOT ABOVE)

    • 98 more.

Use -F or --full-lists to disable shortening of long lists. [code: missing-codepoints]

🔥 FAIL: Copyright notices match canonical pattern in fonts (com.google.fonts/check/font_copyright)
  • 🔥 FAIL Name Table entry: Copyright notices should match a pattern similar to:

"Copyright 2019 The Familyname Project Authors (git url)"

But instead we have got:

"Copyright (c) 2010 by Font Diner, Inc DBA Tart Workshop. All rights reserved."
[code: bad-notice-format]

  • 🔥 FAIL Name Table entry: Copyright notices should match a pattern similar to:

"Copyright 2019 The Familyname Project Authors (git url)"

But instead we have got:

"Copyright (c) 2010 by Font Diner, Inc DBA Tart Workshop. All rights reserved."
[code: bad-notice-format]

🔥 FAIL: Font enables smart dropout control in "prep" table instructions? (com.google.fonts/check/smart_dropout)
  • 🔥 FAIL The 'prep' table does not contain TrueType instructions enabling smart dropout control. To fix, export the font with autohinting enabled, or run ttfautohint on the font, or run the gftools fix-nonhinting script. [code: lacks-smart-dropout]
🔥 FAIL: Check if the vertical metrics of a family are similar to the same family hosted on Google Fonts. (com.google.fonts/check/vertical_metrics_regressions)
  • 🔥 FAIL Crafty Girls Regular: OS/2 sTypoAscender is 761 when it should be 1001 [code: bad-typo-ascender]
  • 🔥 FAIL Crafty Girls Regular: OS/2 sTypoDescender is -327 when it should be -461 [code: bad-typo-descender]
WARN: Does GPOS table have kerning information? This check skips monospaced fonts as defined by post.isFixedPitch value (com.google.fonts/check/gpos_kerning_info)
  • WARN GPOS table lacks kerning information. [code: lacks-kern-info]
WARN: Check that legacy accents aren't used in composite glyphs. (com.google.fonts/check/legacy_accents)
  • WARN Glyph "Scaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "scaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Yacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "yacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Zcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "zcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Adieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Eacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ntilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Odieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Udieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "aacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "agrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "acircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "adieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "atilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "eacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "egrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ecircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "edieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "iacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "igrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "icircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "idieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ntilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "oacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ograve" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ocircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "odieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "otilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ugrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ucircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "udieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Agrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Atilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Otilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ydieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ydieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Acircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ecircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Aacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Edieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Egrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Iacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Icircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Idieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Igrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Oacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ocircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ograve" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Uacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ucircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ugrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
WARN: Check if each glyph has the recommended amount of contours. (com.google.fonts/check/contour_count)
  • WARN This check inspects the glyph outlines and detects the total number of contours in each of them. The expected values are infered from the typical ammounts of contours observed in a large collection of reference font families. The divergences listed below may simply indicate a significantly different design on some of your glyphs. On the other hand, some of these may flag actual bugs in the font such as glyphs mapped to an incorrect codepoint. Please consider reviewing the design and codepoint assignment of these to make sure they are correct.

The following glyphs do not have the recommended number of contours:

- Glyph name: two	Contours detected: 2	Expected: 1

- Glyph name: three	Contours detected: 2	Expected: 1

- Glyph name: E	Contours detected: 2	Expected: 1

- Glyph name: G	Contours detected: 2	Expected: 1

- Glyph name: L	Contours detected: 2	Expected: 1

- Glyph name: M	Contours detected: 2	Expected: 1

- Glyph name: V	Contours detected: 2	Expected: 1

- Glyph name: Y	Contours detected: 2	Expected: 1

- Glyph name: Z	Contours detected: 2	Expected: 1

- Glyph name: a	Contours detected: 3	Expected: 2

- 64 more.

Use -F or --full-lists to disable shortening of long lists.
[code: contour-count]

WARN: Does the font contain a soft hyphen? (com.google.fonts/check/soft_hyphen)
  • WARN This font has a 'Soft Hyphen' character. [code: softhyphen]
WARN: Check math signs have the same width. (com.google.fonts/check/math_signs_width)
  • WARN The most common width is 509 among a set of 2 math glyphs.
    The following math glyphs have a different width, though:

Width = 499:
less

Width = 518:
equal, divide

Width = 482:
greater

Width = 529:
logicalnot

Width = 439:
multiply

Width = 491:
minus
[code: width-outliers]

WARN: Checking Vertical Metric Linegaps. (com.google.fonts/check/linegaps)
  • WARN hhea lineGap is not equal to 0. [code: hhea]
WARN: Do outlines contain any jaggy segments? (com.google.fonts/check/outline_jaggy_segments)
  • WARN The following glyphs have jaggy segments:

    • OE (U+0152): B<<766.5,424.0>-<758.0,441.0>-<753.0,458.0>>/B<<753.0,458.0>-<755.0,433.0>-<760.5,409.0>> = 11.815619074133883 [code: found-jaggy-segments]
WARN: Check for codepoints not covered by METADATA subsets. (com.google.fonts/check/metadata/unreachable_subsetting)
  • WARN The following codepoints supported by the font are not covered by
    any subsets defined in the font's metadata file, and will never
    be served. You can solve this by either manually adding additional
    subset declarations to METADATA.pb, or by editing the glyphset
    definitions.

  • U+0020 SPACE: try adding one of: warang-citi, nag-mundari, kannada, brahmi, batak, takri, symbols, linear-b, vai, saurashtra, dogra, mandaic, bassa-vah, imperial-aramaic, music, mongolian, gothic, pahawh-hmong, chinese-simplified, inscriptional-pahlavi, kharoshthi, modi, hebrew, japanese, tai-viet, cham, cypro-minoan, greek, tagalog, tamil, thai, yi, rejang, mahajani, tibetan, khitan-small-script, ol-chiki, cypriot, avestan, lycian, mro, oriya, cyrillic-ext, elbasan, sora-sompeng, new-tai-lue, tamil-supplement, old-sogdian, newa, sinhala, kaithi, makasar, nabataean, syloti-nagri, telugu, shavian, duployan, miao, nyiakeng-puachue-hmong, old-italic, devanagari, pau-cin-hau, syriac, lepcha, canadian-aboriginal, braille, hanunoo, chinese-traditional, ugaritic, chorasmian, old-turkic, osmanya, medefaidrin, old-permic, old-south-arabian, nandinagari, tai-le, inscriptional-parthian, nushu, chinese-hongkong, gujarati, glagolitic, psalter-pahlavi, chakma, javanese, khmer, runic, marchen, adlam, siddham, old-north-arabian, meetei-mayek, osage, sharada, signwriting, palmyrene, thaana, grantha, multani, manichaean, vietnamese, meroitic-hieroglyphs, malayalam, georgian, khojki, linear-a, masaram-gondi, egyptian-hieroglyphs, mayan-numerals, old-persian, kayah-li, hatran, sogdian, gurmukhi, indic-siyaq-numbers, meroitic, toto, bengali, lydian, tagbanwa, phoenician, sundanese, lao, nko, tifinagh, greek-ext, tangsa, tai-tham, tirhuta, coptic, bhaiksuki, buhid, cuneiform, old-uyghur, khudawadi, ottoman-siyaq-numbers, balinese, armenian, old-hungarian, dives-akuru, bamum, deseret, anatolian-hieroglyphs, kawi, buginese, korean, math, zanabazar-square, hanifi-rohingya, znamenny, ahom, wancho, mende-kikakui, limbu, lisu, latin-ext, phags-pa, tangut, vithkuqi, ogham, cherokee, caucasian-albanian, ethiopic, elymaic, gunjala-gondi, carian, samaritan, cyrillic, soyombo, myanmar, meroitic-cursive, arabic, yezidi

  • U+00A0 NO-BREAK SPACE: try adding one of: warang-citi, nag-mundari, kannada, brahmi, batak, takri, symbols, linear-b, vai, saurashtra, dogra, mandaic, bassa-vah, imperial-aramaic, music, mongolian, gothic, pahawh-hmong, chinese-simplified, inscriptional-pahlavi, kharoshthi, modi, hebrew, japanese, tai-viet, cham, cypro-minoan, greek, tagalog, tamil, thai, yi, rejang, mahajani, tibetan, khitan-small-script, ol-chiki, cypriot, avestan, lycian, mro, oriya, cyrillic-ext, elbasan, sora-sompeng, new-tai-lue, tamil-supplement, old-sogdian, newa, sinhala, kaithi, makasar, nabataean, syloti-nagri, telugu, shavian, duployan, miao, nyiakeng-puachue-hmong, old-italic, devanagari, pau-cin-hau, syriac, lepcha, canadian-aboriginal, braille, hanunoo, chinese-traditional, ugaritic, chorasmian, old-turkic, osmanya, medefaidrin, old-permic, old-south-arabian, nandinagari, tai-le, inscriptional-parthian, nushu, chinese-hongkong, gujarati, glagolitic, psalter-pahlavi, chakma, javanese, khmer, runic, marchen, adlam, siddham, old-north-arabian, meetei-mayek, osage, sharada, signwriting, palmyrene, thaana, grantha, multani, manichaean, vietnamese, meroitic-hieroglyphs, malayalam, georgian, khojki, linear-a, masaram-gondi, egyptian-hieroglyphs, mayan-numerals, old-persian, kayah-li, hatran, sogdian, gurmukhi, indic-siyaq-numbers, meroitic, toto, bengali, lydian, tagbanwa, phoenician, sundanese, lao, nko, tifinagh, greek-ext, tangsa, tai-tham, tirhuta, coptic, bhaiksuki, buhid, cuneiform, old-uyghur, khudawadi, ottoman-siyaq-numbers, balinese, armenian, old-hungarian, dives-akuru, bamum, deseret, anatolian-hieroglyphs, kawi, buginese, korean, math, zanabazar-square, hanifi-rohingya, znamenny, ahom, wancho, mende-kikakui, limbu, lisu, latin-ext, phags-pa, tangut, vithkuqi, ogham, cherokee, caucasian-albanian, ethiopic, elymaic, gunjala-gondi, carian, samaritan, cyrillic, soyombo, myanmar, meroitic-cursive, arabic, yezidi

  • U+0141 LATIN CAPITAL LETTER L WITH STROKE: try adding latin-ext

  • U+0142 LATIN SMALL LETTER L WITH STROKE: try adding latin-ext

  • U+0160 LATIN CAPITAL LETTER S WITH CARON: try adding latin-ext

  • U+0161 LATIN SMALL LETTER S WITH CARON: try adding latin-ext

  • U+0178 LATIN CAPITAL LETTER Y WITH DIAERESIS: try adding latin-ext

  • U+017D LATIN CAPITAL LETTER Z WITH CARON: try adding latin-ext

  • U+017E LATIN SMALL LETTER Z WITH CARON: try adding latin-ext

  • U+02C7 CARON: try adding one of: canadian-aboriginal, tifinagh, yi
    9 more.

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: latin, menu [code: unreachable-subsetting]

WARN: License URL matches License text on name table? (com.google.fonts/check/name/license_url)
  • WARN Please consider using HTTPS URLs at name table entry [plat=1, enc=0, name=14] [code: http-in-license-info]
  • WARN Please consider using HTTPS URLs at name table entry [plat=3, enc=1, name=14] [code: http-in-license-info]
WARN: Checking OS/2 achVendID. (com.google.fonts/check/vendor_id)
  • WARN OS/2 VendorID value 'DINR' is not yet recognized. If you registered it recently, then it's safe to ignore this warning message. Otherwise, you should set it to your own unique 4 character code, and register it with Microsoft at https://www.microsoft.com/typography/links/vendorlist.aspx
    [code: unknown]
WARN: Is the Grid-fitting and Scan-conversion Procedure ('gasp') table set to optimize rendering? (com.google.fonts/check/gasp)
  • INFO These are the ppm ranges declared on the gasp table:

PPM <= 65535:
flag = 0x0A
- Use grayscale rendering
- Use smoothing along multiple axes with ClearType®
[code: ranges]

  • WARN The gasp range 0xFFFF value 0x0A should be set to 0x0F. [code: unset-flags]
WARN: Ensure fonts have ScriptLangTags declared on the 'meta' table. (com.google.fonts/check/meta/script_lang_tags)
  • WARN This font file does not have a 'meta' table. [code: lacks-meta-table]
INFO: Is there a usable "kern" table declared in the font? (com.google.fonts/check/kern_table)
  • INFO Only a few programs may require the kerning info that this font provides on its "kern" table. [code: kern-found]
INFO: List all superfamily filepaths (com.google.fonts/check/superfamily/list)
  • INFO apache/craftygirls [code: family-path]
INFO: Font contains all required tables? (com.google.fonts/check/required_tables)
  • INFO This font contains the following optional tables:

    • cvt

    • fpgm

    • loca

    • prep

    • gasp

    • kern [code: optional-tables]

INFO: Check for font-v versioning. (com.google.fonts/check/fontv)
  • INFO Version string is: "Version 1.001"
    The version string must ideally include a git commit hash and either a "dev" or a "release" suffix such as in the example below:
    "Version 1.3; git-0d08353-release" [code: bad-format]
INFO: EPAR table present in font? (com.google.fonts/check/epar)
INFO: Show hinting filesize impact. (com.google.fonts/check/hinting_impact)
  • INFO Hinting filesize impact:
Font(file='apache/craftygirls/CraftyGirls-Regular.ttf', context=CheckRunContext(testables=[...], config={'com.google.fonts/check/file_size': {'WARN_SIZE': 1048576, 'FAIL_SIZE': 9437184}, 'custom_order': None, 'explicit_checks': None, 'exclude_checks': None, 'full_lists': False, 'skip_network': False}))
Dehinted Size 60.1kb
Hinted Size 73.6kb
Increase 13.5kb
Change 22.5 %
[code: size-impact]
INFO: Familyname must be unique according to namecheck.fontdata.com (com.google.fonts/check/fontdata_namecheck)
  • INFO The family name "CraftyGirls" seems to be already in use.
    Please visit http://namecheck.fontdata.com for more info. [code: name-collision]
INFO: Font has old ttfautohint applied? (com.google.fonts/check/old_ttfautohint)
  • INFO Could not detect which version of ttfautohint was used in this font. It is typically specified as a comment in the font version entries of the 'name' table. Such font version strings are currently: ['Version 1.001', 'Version 1.001'] [code: version-not-detected]

[2] Family checks
🔥 FAIL: OS/2.fsSelection bit 7 (USE_TYPO_METRICS) is set in all fonts. (com.google.fonts/check/os2/use_typo_metrics)
  • 🔥 FAIL OS/2.fsSelection bit 7 (USE_TYPO_METRICS) wasNOT set in the following fonts: ['apache/craftygirls/CraftyGirls-Regular.ttf']. [code: missing-os2-fsselection-bit7]
INFO: Check axis ordering on the STAT table. (com.google.fonts/check/STAT/axis_order)
  • INFO All of the fonts lack a STAT table.
    [code: summary]

Summary

💔 ERROR ☠ FATAL 🔥 FAIL ⚠ WARN 💤 SKIP ℹ INFO 🍞 PASS 🔎 DEBUG
0 0 11 12 67 9 158 0
0% 0% 4% 5% 26% 4% 61% 0%

Note: The following loglevels were omitted in this report:

  • SKIP
  • PASS
  • DEBUG

Copy link

FontBakery report

fontbakery version: 0.12.0a1

Check results

[35] CreepsterCaps-Regular.ttf
🔥 FAIL: Description strings in the name table must not contain copyright info. (com.google.fonts/check/name/no_copyright_on_description)
  • 🔥 FAIL Some namerecords with ID=10 (NameID.DESCRIPTION) containing copyright info should be removed (perhaps these were added by a longstanding FontLab Studio 5.x bug that copied copyright notices to them.) [code: copyright-on-description]
🔥 FAIL: Font contains '.notdef' as its first glyph? (com.google.fonts/check/mandatory_glyphs)
  • 🔥 FAIL The '.notdef' glyph should contain a drawing, but it is blank. [code: notdef-is-blank]
🔥 FAIL: Are there unwanted tables? (com.google.fonts/check/unwanted_tables)
  • 🔥 FAIL The following unwanted font tables were found:

  • FFTM - Table contains redundant FontForge timestamp info

They can be removed with the 'fix-unwanted-tables' script provided by gftools. [code: unwanted-tables]

🔥 FAIL: METADATA.pb subsets should be alphabetically ordered. (com.google.fonts/check/metadata/subsets_order)
  • 🔥 FAIL METADATA.pb subsets are not sorted in alphabetical order: Got ['menu', 'latin'] and expected ['latin', 'menu'] [code: not-sorted]
🔥 FAIL: Copyright field for this font on METADATA.pb matches all copyright notice entries on the name table ? (com.google.fonts/check/metadata/nameid/copyright)
  • 🔥 FAIL Copyright field for this font on METADATA.pb ("Copyright (c) 2010 by Font Diner, Inc DBA Sideshow (diner@fontdiner.com). All rights reserved.") differs from a copyright notice entry on the name table: "Copyright (c) 2011 by Font Diner, Inc. All rights reserved." [code: mismatch]
  • 🔥 FAIL Copyright field for this font on METADATA.pb ("Copyright (c) 2010 by Font Diner, Inc DBA Sideshow (diner@fontdiner.com). All rights reserved.") differs from a copyright notice entry on the name table: "Copyright (c) 2011 by Font Diner, Inc. All rights reserved." [code: mismatch]
🔥 FAIL: Copyright notices match canonical pattern in METADATA.pb (com.google.fonts/check/metadata/valid_copyright)
  • 🔥 FAIL METADATA.pb: Copyright notices should match a pattern similar to:

"Copyright 2020 The Familyname Project Authors (git url)"

But instead we have got:

"copyright (c) 2010 by font diner, inc dba sideshow (diner@fontdiner.com). all rights reserved." [code: bad-notice-format]

🔥 FAIL: METADATA.pb: Designers are listed correctly on the Google Fonts catalog? (com.google.fonts/check/metadata/designer_profiles)
  • 🔥 FAIL Designer Sideshow still does not have an avatar image. Please provide one. [code: missing-avatar]
🔥 FAIL: METADATA.pb: Check URL on copyright string is the same as in repository_url field. (com.google.fonts/check/metadata/consistent_repo_urls)
  • 🔥 FAIL Please add a family.source.repository_url entry. [code: lacks-repo-url]
🔥 FAIL: Does DESCRIPTION file contain a upstream Git repo URL? (com.google.fonts/check/description/git_url)
  • 🔥 FAIL Please host your font project on a public Git repo (such as GitHub or GitLab) and place a link in the DESCRIPTION.en_us.html file. [code: lacks-git-url]
🔥 FAIL: Check license file has good copyright string. (com.google.fonts/check/license/OFL_copyright)
  • 🔥 FAIL First line in license file is:

"apache license"

which does not match the expected format, similar to:

"Copyright 2022 The Familyname Project Authors (git url)" [code: bad-format]

🔥 FAIL: Check Google Fonts glyph coverage. (com.google.fonts/check/glyph_coverage)
  • 🔥 FAIL Missing required codepoints:

    • 0x0100 (LATIN CAPITAL LETTER A WITH MACRON)

    • 0x0101 (LATIN SMALL LETTER A WITH MACRON)

    • 0x0102 (LATIN CAPITAL LETTER A WITH BREVE)

    • 0x0103 (LATIN SMALL LETTER A WITH BREVE)

    • 0x0104 (LATIN CAPITAL LETTER A WITH OGONEK)

    • 0x0105 (LATIN SMALL LETTER A WITH OGONEK)

    • 0x0106 (LATIN CAPITAL LETTER C WITH ACUTE)

    • 0x0107 (LATIN SMALL LETTER C WITH ACUTE)

    • 0x010A (LATIN CAPITAL LETTER C WITH DOT ABOVE)

    • 0x010B (LATIN SMALL LETTER C WITH DOT ABOVE)

    • 97 more.

Use -F or --full-lists to disable shortening of long lists. [code: missing-codepoints]

🔥 FAIL: Copyright notices match canonical pattern in fonts (com.google.fonts/check/font_copyright)
  • 🔥 FAIL Name Table entry: Copyright notices should match a pattern similar to:

"Copyright 2019 The Familyname Project Authors (git url)"

But instead we have got:

"Copyright (c) 2011 by Font Diner, Inc. All rights reserved."
[code: bad-notice-format]

  • 🔥 FAIL Name Table entry: Copyright notices should match a pattern similar to:

"Copyright 2019 The Familyname Project Authors (git url)"

But instead we have got:

"Copyright (c) 2011 by Font Diner, Inc. All rights reserved."
[code: bad-notice-format]

🔥 FAIL: Font enables smart dropout control in "prep" table instructions? (com.google.fonts/check/smart_dropout)
  • 🔥 FAIL The 'prep' table does not contain TrueType instructions enabling smart dropout control. To fix, export the font with autohinting enabled, or run ttfautohint on the font, or run the gftools fix-nonhinting script. [code: lacks-smart-dropout]
🔥 FAIL: Check font follows the Google Fonts vertical metric schema (com.google.fonts/check/vertical_metrics)
  • 🔥 FAIL The sum of hhea.ascender + abs(hhea.descender) + hhea.lineGap is 1197 when it should be at least 1228 [code: bad-hhea-range]
WARN: Does the font have a DSIG table? (com.google.fonts/check/dsig)
  • WARN This font has a digital signature (DSIG table) which is only required - even if only a placeholder - on old programs like MS Office 2013 in order to work properly.
    The current recommendation is to completely remove the DSIG table. [code: found-DSIG]
WARN: Check for points out of bounds. (com.google.fonts/check/points_out_of_bounds)
  • WARN The following glyphs have coordinates which are out of bounds:
    • ('exclam', 82, 754)
    • ('exclam', 178, 623)
    • ('exclam', 195, 29)
    • ('exclam', 98, -30)
    • ('quotedbl', 50, 737)
    • ('quotedbl', 232, 737)
    • ('quotedbl', 270, 666)
    • ('quotedbl', 241, 426)
    • ('numbersign', 478, 746)
    • ('numbersign', 332, -24) and 888 more.

Use -F or --full-lists to disable shortening of long lists.

This happens a lot when points are not extremes, which is usually bad. However, fixing this alert by adding points on extremes may do more harm than good, especially with italics, calligraphic-script, handwriting, rounded and other fonts. So it is common to ignore this message. [code: points-out-of-bounds]

WARN: Check that legacy accents aren't used in composite glyphs. (com.google.fonts/check/legacy_accents)
  • WARN Glyph "Agrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Aacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Acircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Atilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Adieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Egrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Eacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ecircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Edieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Igrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Iacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Icircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Idieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ntilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ograve" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Oacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ocircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Otilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Odieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ugrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Uacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ucircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Udieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Yacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "agrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "aacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "acircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "atilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "adieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "egrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "eacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ecircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "edieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "igrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "iacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "icircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "idieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ntilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ograve" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "oacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ocircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "otilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "odieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ugrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ucircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "udieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "yacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ydieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Scaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "scaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ydieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Zcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "zcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
WARN: Check font contains no unreachable glyphs (com.google.fonts/check/unreachable_glyphs)
  • WARN The following glyphs could not be reached by codepoint or substitution rules:

    • nonmarkingreturn
      [code: unreachable-glyphs]
WARN: Check if each glyph has the recommended amount of contours. (com.google.fonts/check/contour_count)
  • WARN This check inspects the glyph outlines and detects the total number of contours in each of them. The expected values are infered from the typical ammounts of contours observed in a large collection of reference font families. The divergences listed below may simply indicate a significantly different design on some of your glyphs. On the other hand, some of these may flag actual bugs in the font such as glyphs mapped to an incorrect codepoint. Please consider reviewing the design and codepoint assignment of these to make sure they are correct.

The following glyphs do not have the recommended number of contours:

- Glyph name: b	Contours detected: 3	Expected: 2

- Glyph name: e	Contours detected: 1	Expected: 2

- Glyph name: g	Contours detected: 1	Expected: 2 or 3

- Glyph name: i	Contours detected: 1	Expected: 2

- Glyph name: j	Contours detected: 1	Expected: 2

- Glyph name: r	Contours detected: 2	Expected: 1

- Glyph name: sfthyphen	Contours detected: 1	Expected: 0

- Glyph name: germandbls	Contours detected: 2	Expected: 1

- Glyph name: aring	Contours detected: 3	Expected: 4

- Glyph name: ae	Contours detected: 2	Expected: 3

- 24 more.

Use -F or --full-lists to disable shortening of long lists.
[code: contour-count]

WARN: Does the font contain a soft hyphen? (com.google.fonts/check/soft_hyphen)
  • WARN This font has a 'Soft Hyphen' character. [code: softhyphen]
WARN: Check math signs have the same width. (com.google.fonts/check/math_signs_width)
  • WARN The most common width is 439 among a set of 2 math glyphs.
    The following math glyphs have a different width, though:

Width = 411:
plus

Width = 413:
divide, equal

Width = 677:
logicalnot

Width = 370:
multiply

Width = 399:
minus
[code: width-outliers]

WARN: Do any segments have colinear vectors? (com.google.fonts/check/outline_colinear_vectors)
  • WARN The following glyphs have colinear vectors:

    • Eth (U+00D0): L<<41.0,412.0>--<40.0,464.0>> -> L<<40.0,464.0>--<40.0,494.0>>

    • eth (U+00F0): L<<41.0,412.0>--<40.0,464.0>> -> L<<40.0,464.0>--<40.0,494.0>>

    • f (U+0066): L<<200.0,486.0>--<202.0,428.0>> -> L<<202.0,428.0>--<202.0,403.0>>

    • fi (U+FB01): L<<200.0,486.0>--<202.0,428.0>> -> L<<202.0,428.0>--<202.0,403.0>>

    • fl (U+FB02): L<<200.0,486.0>--<202.0,428.0>> -> L<<202.0,428.0>--<202.0,403.0>>

    • h (U+0068): L<<289.0,126.0>--<290.0,202.0>> -> L<<290.0,202.0>--<290.0,227.0>>

    • onequarter (U+00BC): L<<422.0,320.0>--<421.0,286.0>> -> L<<421.0,286.0>--<416.0,213.0>>

    • quotedbl (U+0022): L<<172.0,508.0>--<167.0,582.0>> -> L<<167.0,582.0>--<167.0,600.0>> [code: found-colinear-vectors]

WARN: Do outlines contain any jaggy segments? (com.google.fonts/check/outline_jaggy_segments)
  • WARN The following glyphs have jaggy segments:

    • onehalf (U+00BD): B<<374.5,86.0>-<368.0,81.0>-<367.0,81.0>>/B<<367.0,81.0>-<379.0,84.0>-<392.0,88.0>> = 14.036243467926457 [code: found-jaggy-segments]
WARN: Check for codepoints not covered by METADATA subsets. (com.google.fonts/check/metadata/unreachable_subsetting)
  • WARN The following codepoints supported by the font are not covered by
    any subsets defined in the font's metadata file, and will never
    be served. You can solve this by either manually adding additional
    subset declarations to METADATA.pb, or by editing the glyphset
    definitions.

  • U+0020 SPACE: try adding one of: armenian, lisu, canadian-aboriginal, nyiakeng-puachue-hmong, yezidi, warang-citi, mayan-numerals, tamil, buginese, masaram-gondi, yi, imperial-aramaic, javanese, bamum, psalter-pahlavi, cyrillic-ext, caucasian-albanian, hebrew, nandinagari, thai, wancho, meetei-mayek, kayah-li, nabataean, gurmukhi, gujarati, glagolitic, samaritan, tirhuta, avestan, chakma, pau-cin-hau, mro, tai-tham, kaithi, coptic, old-north-arabian, vithkuqi, deseret, vai, medefaidrin, nushu, sundanese, cyrillic, pahawh-hmong, ethiopic, khudawadi, znamenny, cherokee, toto, cham, miao, braille, nko, tifinagh, makasar, kannada, georgian, old-hungarian, chinese-simplified, old-sogdian, sharada, osage, soyombo, balinese, nag-mundari, phoenician, runic, buhid, tagbanwa, math, ol-chiki, cypriot, indic-siyaq-numbers, syloti-nagri, vietnamese, palmyrene, tangsa, phags-pa, multani, linear-a, saurashtra, devanagari, tangut, chinese-hongkong, kawi, sora-sompeng, old-uyghur, sinhala, syriac, old-south-arabian, bhaiksuki, manichaean, telugu, sogdian, malayalam, old-permic, oriya, siddham, brahmi, meroitic, new-tai-lue, ottoman-siyaq-numbers, signwriting, hatran, ugaritic, bassa-vah, bengali, elymaic, myanmar, hanunoo, kharoshthi, zanabazar-square, chinese-traditional, limbu, lepcha, ogham, old-persian, symbols, tai-le, tagalog, greek, inscriptional-pahlavi, cuneiform, thaana, arabic, adlam, shavian, osmanya, gothic, dives-akuru, hanifi-rohingya, music, cypro-minoan, linear-b, korean, grantha, lao, japanese, egyptian-hieroglyphs, gunjala-gondi, tibetan, anatolian-hieroglyphs, old-italic, lycian, rejang, khmer, newa, tai-viet, takri, duployan, meroitic-hieroglyphs, latin-ext, carian, inscriptional-parthian, old-turkic, chorasmian, mende-kikakui, greek-ext, marchen, dogra, lydian, meroitic-cursive, elbasan, mandaic, khojki, mongolian, batak, modi, tamil-supplement, ahom, mahajani, khitan-small-script

  • U+00A0 NO-BREAK SPACE: try adding one of: armenian, lisu, canadian-aboriginal, nyiakeng-puachue-hmong, yezidi, warang-citi, mayan-numerals, tamil, buginese, masaram-gondi, yi, imperial-aramaic, javanese, bamum, psalter-pahlavi, cyrillic-ext, caucasian-albanian, hebrew, nandinagari, thai, wancho, meetei-mayek, kayah-li, nabataean, gurmukhi, gujarati, glagolitic, samaritan, tirhuta, avestan, chakma, pau-cin-hau, mro, tai-tham, kaithi, coptic, old-north-arabian, vithkuqi, deseret, vai, medefaidrin, nushu, sundanese, cyrillic, pahawh-hmong, ethiopic, khudawadi, znamenny, cherokee, toto, cham, miao, braille, nko, tifinagh, makasar, kannada, georgian, old-hungarian, chinese-simplified, old-sogdian, sharada, osage, soyombo, balinese, nag-mundari, phoenician, runic, buhid, tagbanwa, math, ol-chiki, cypriot, indic-siyaq-numbers, syloti-nagri, vietnamese, palmyrene, tangsa, phags-pa, multani, linear-a, saurashtra, devanagari, tangut, chinese-hongkong, kawi, sora-sompeng, old-uyghur, sinhala, syriac, old-south-arabian, bhaiksuki, manichaean, telugu, sogdian, malayalam, old-permic, oriya, siddham, brahmi, meroitic, new-tai-lue, ottoman-siyaq-numbers, signwriting, hatran, ugaritic, bassa-vah, bengali, elymaic, myanmar, hanunoo, kharoshthi, zanabazar-square, chinese-traditional, limbu, lepcha, ogham, old-persian, symbols, tai-le, tagalog, greek, inscriptional-pahlavi, cuneiform, thaana, arabic, adlam, shavian, osmanya, gothic, dives-akuru, hanifi-rohingya, music, cypro-minoan, linear-b, korean, grantha, lao, japanese, egyptian-hieroglyphs, gunjala-gondi, tibetan, anatolian-hieroglyphs, old-italic, lycian, rejang, khmer, newa, tai-viet, takri, duployan, meroitic-hieroglyphs, latin-ext, carian, inscriptional-parthian, old-turkic, chorasmian, mende-kikakui, greek-ext, marchen, dogra, lydian, meroitic-cursive, elbasan, mandaic, khojki, mongolian, batak, modi, tamil-supplement, ahom, mahajani, khitan-small-script

  • U+0141 LATIN CAPITAL LETTER L WITH STROKE: try adding latin-ext

  • U+0142 LATIN SMALL LETTER L WITH STROKE: try adding latin-ext

  • U+0160 LATIN CAPITAL LETTER S WITH CARON: try adding latin-ext

  • U+0161 LATIN SMALL LETTER S WITH CARON: try adding latin-ext

  • U+0178 LATIN CAPITAL LETTER Y WITH DIAERESIS: try adding latin-ext

  • U+017D LATIN CAPITAL LETTER Z WITH CARON: try adding latin-ext

  • U+017E LATIN SMALL LETTER Z WITH CARON: try adding latin-ext

  • U+02C7 CARON: try adding one of: yi, canadian-aboriginal, tifinagh
    7 more.

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: menu, latin [code: unreachable-subsetting]

WARN: License URL matches License text on name table? (com.google.fonts/check/name/license_url)
  • WARN Please consider using HTTPS URLs at name table entry [plat=1, enc=0, name=14] [code: http-in-license-info]
  • WARN Please consider using HTTPS URLs at name table entry [plat=3, enc=1, name=14] [code: http-in-license-info]
WARN: Checking OS/2 achVendID. (com.google.fonts/check/vendor_id)
  • WARN OS/2 VendorID value 'DINR' is not yet recognized. If you registered it recently, then it's safe to ignore this warning message. Otherwise, you should set it to your own unique 4 character code, and register it with Microsoft at https://www.microsoft.com/typography/links/vendorlist.aspx
    [code: unknown]
WARN: Is the Grid-fitting and Scan-conversion Procedure ('gasp') table set to optimize rendering? (com.google.fonts/check/gasp)
  • INFO These are the ppm ranges declared on the gasp table:

PPM <= 65535:
flag = 0x0A
- Use grayscale rendering
- Use smoothing along multiple axes with ClearType®
[code: ranges]

  • WARN The gasp range 0xFFFF value 0x0A should be set to 0x0F. [code: unset-flags]
WARN: Ensure fonts have ScriptLangTags declared on the 'meta' table. (com.google.fonts/check/meta/script_lang_tags)
  • WARN This font file does not have a 'meta' table. [code: lacks-meta-table]
WARN: Ensure fonts do not contain any pre-production tables. (com.google.fonts/check/no_debugging_tables)
  • WARN This font file contains the following pre-production tables: FFTM [code: has-debugging-tables]
INFO: List all superfamily filepaths (com.google.fonts/check/superfamily/list)
  • INFO apache/creepstercaps [code: family-path]
INFO: Font contains all required tables? (com.google.fonts/check/required_tables)
  • INFO This font contains the following optional tables:

    • cvt

    • fpgm

    • loca

    • prep

    • GPOS

    • GSUB

    • gasp [code: optional-tables]

INFO: Check for font-v versioning. (com.google.fonts/check/fontv)
  • INFO Version string is: "Version 1.000"
    The version string must ideally include a git commit hash and either a "dev" or a "release" suffix such as in the example below:
    "Version 1.3; git-0d08353-release" [code: bad-format]
INFO: EPAR table present in font? (com.google.fonts/check/epar)
INFO: Show hinting filesize impact. (com.google.fonts/check/hinting_impact)
  • INFO Hinting filesize impact:
Font(file='apache/creepstercaps/CreepsterCaps-Regular.ttf', context=CheckRunContext(testables=[...], config={'com.google.fonts/check/file_size': {'WARN_SIZE': 1048576, 'FAIL_SIZE': 9437184}, 'custom_order': None, 'explicit_checks': None, 'exclude_checks': None, 'full_lists': False, 'skip_network': False}))
Dehinted Size 55.9kb
Hinted Size 56.8kb
Increase 924 bytes
Change 1.6 %
[code: size-impact]
INFO: Font has old ttfautohint applied? (com.google.fonts/check/old_ttfautohint)
  • INFO Could not detect which version of ttfautohint was used in this font. It is typically specified as a comment in the font version entries of the 'name' table. Such font version strings are currently: ['Version 1.000', 'Version 1.000'] [code: version-not-detected]

[2] Family checks
🔥 FAIL: OS/2.fsSelection bit 7 (USE_TYPO_METRICS) is set in all fonts. (com.google.fonts/check/os2/use_typo_metrics)
  • 🔥 FAIL OS/2.fsSelection bit 7 (USE_TYPO_METRICS) wasNOT set in the following fonts: ['apache/creepstercaps/CreepsterCaps-Regular.ttf']. [code: missing-os2-fsselection-bit7]
INFO: Check axis ordering on the STAT table. (com.google.fonts/check/STAT/axis_order)
  • INFO All of the fonts lack a STAT table.
    [code: summary]

Summary

💔 ERROR ☠ FATAL 🔥 FAIL ⚠ WARN 💤 SKIP ℹ INFO 🍞 PASS 🔎 DEBUG
0 0 15 15 65 7 155 0
0% 0% 6% 6% 25% 3% 60% 0%

Note: The following loglevels were omitted in this report:

  • SKIP
  • PASS
  • DEBUG

Copy link

FontBakery report

fontbakery version: 0.12.0a1

Experimental checks

These won't break the CI job for now, but will become effective after some time if nobody raises any concern.

[1] Crushed-Regular.ttf
🔥 FAIL: Ensure the font supports case swapping for all its glyphs. (com.google.fonts/check/case_mapping)
  • 🔥 FAIL The following glyphs lack their case-swapping counterparts:
Glyph present in the font Missing case-swapping counterpart
U+012C: LATIN CAPITAL LETTER I WITH BREVE U+012D: LATIN SMALL LETTER I WITH BREVE

[code: missing-case-counterparts]


All other checks

[35] Crushed-Regular.ttf
🔥 FAIL: Checking OS/2 Metrics match hhea Metrics. (com.google.fonts/check/os2_metrics_match_hhea)
  • 🔥 FAIL OS/2 sTypoAscender (1374) and hhea ascent (1820) must be equal. [code: ascender]
🔥 FAIL: Font contains '.notdef' as its first glyph? (com.google.fonts/check/mandatory_glyphs)
  • 🔥 FAIL The '.notdef' glyph should contain a drawing, but it is blank. [code: notdef-is-blank]
🔥 FAIL: Check accent of Lcaron, dcaron, lcaron, tcaron (com.google.fonts/check/alt_caron)
  • 🔥 FAIL dcaron uses component caron. [code: wrong-mark]
  • 🔥 FAIL Lcaron uses component quoteright. [code: bad-mark]
  • 🔥 FAIL lcaron uses component quoteright. [code: bad-mark]
  • 🔥 FAIL tcaron uses component caron. [code: wrong-mark]
🔥 FAIL: Copyright field for this font on METADATA.pb matches all copyright notice entries on the name table ? (com.google.fonts/check/metadata/nameid/copyright)
  • 🔥 FAIL Copyright field for this font on METADATA.pb ("Copyright (c) 2010 by Brian J. Bonislawsky DBA Astigmatic (AOETI). All rights reserved. Available under the Apache 2.0 licence. http://www.apache.org/licenses/LICENSE-2.0.html") differs from a copyright notice entry on the name table: "Copyright (c) 2010 by Brian J. Bonislawsky DBA Astigmatic (AOETI). All rights reserved. Available under the Apache 2.0 licence.
    http://www.apache.org/licenses/LICENSE-2.0.html" [code: mismatch]
  • 🔥 FAIL Copyright field for this font on METADATA.pb ("Copyright (c) 2010 by Brian J. Bonislawsky DBA Astigmatic (AOETI). All rights reserved. Available under the Apache 2.0 licence. http://www.apache.org/licenses/LICENSE-2.0.html") differs from a copyright notice entry on the name table: "Copyright (c) 2010 by Brian J. Bonislawsky DBA Astigmatic (AOETI). All rights reserved. Available under the Apache 2.0 licence.
    http://www.apache.org/licenses/LICENSE-2.0.html" [code: mismatch]
🔥 FAIL: Copyright notices match canonical pattern in METADATA.pb (com.google.fonts/check/metadata/valid_copyright)
  • 🔥 FAIL METADATA.pb: Copyright notices should match a pattern similar to:

"Copyright 2020 The Familyname Project Authors (git url)"

But instead we have got:

"copyright (c) 2010 by brian j. bonislawsky dba astigmatic (aoeti). all rights reserved. available under the apache 2.0 licence. http://www.apache.org/licenses/license-2.0.html" [code: bad-notice-format]

🔥 FAIL: METADATA.pb: Check URL on copyright string is the same as in repository_url field. (com.google.fonts/check/metadata/consistent_repo_urls)
  • 🔥 FAIL Please add a family.source.repository_url entry. [code: lacks-repo-url]
🔥 FAIL: Shapes languages in all GF glyphsets. (com.google.fonts/check/glyphsets/shape_languages)
  • 🔥 FAIL GF_Latin_Core glyphset:
Language FAIL messages
ca_Latn (Catalan) Some mark glyphs were missing: ◌̀, ◌́, ◌̈, ◌̧
cs_Latn (Czech) Some mark glyphs were missing: ◌́, ◌̊, ◌̌
cy_Latn (Welsh) Some mark glyphs were missing: ◌̀, ◌́, ◌̂, ◌̈
da_Latn (Danish) Some mark glyphs were missing: ◌́, ◌̊
de_Latn (German) Some base glyphs were missing: ẞ
^ Some mark glyphs were missing: ◌̀, ◌́, ◌̈
^ Shaper produced a .notdef
en_Latn (English) Some mark glyphs were missing: ◌̀, ◌́, ◌̂, ◌̃, ◌̈, ◌̧
es_Latn (Spanish) Some mark glyphs were missing: ◌́, ◌̃, ◌̈
fi_Latn (Finnish) Some mark glyphs were missing: ◌̃, ◌̈, ◌̊, ◌̌
fr_Latn (French) Some mark glyphs were missing: ◌̀, ◌́, ◌̂, ◌̈, ◌̧
hr_Latn (Croatian) Some mark glyphs were missing: ◌́, ◌̌
hu_Latn (Hungarian) Some mark glyphs were missing: ◌́, ◌̈, ◌̋
is_Latn (Icelandic) Some mark glyphs were missing: ◌́, ◌̈, ◌̨
it_Latn (Italian) Some mark glyphs were missing: ◌̀, ◌́, ◌̂, ◌̈
lt_Latn (Lithuanian) Some mark glyphs were missing: ◌̄, ◌̇, ◌̌, ◌̨
lv_Latn (Latvian) Some mark glyphs were missing: ◌̄, ◌̌, ◌̧
mt_Latn (Maltese) Some mark glyphs were missing: ◌̀, ◌̂, ◌̇
nb_Latn (Norwegian Bokmål) Some mark glyphs were missing: ◌̀, ◌́, ◌̂, ◌̈, ◌̊
nl_Latn (Dutch) Some base glyphs were missing: ÍJ́, íj́
^ Some mark glyphs were missing: ◌̀, ◌́, ◌̂, ◌̈
^ Shaper produced a .notdef
pl_Latn (Polish) Some mark glyphs were missing: ◌́, ◌̇, ◌̨
pt_Latn (Portuguese) Some mark glyphs were missing: ◌̀, ◌́, ◌̂, ◌̃, ◌̈, ◌̧
ro_Latn (Romanian) Some base glyphs were missing: Ș, ș, Ț, ț
^ Some mark glyphs were missing: ◌̂, ◌̆, ◌̦, ◌̧
^ Shaper produced a .notdef
sk_Latn (Slovak) Some mark glyphs were missing: ◌́, ◌̂, ◌̈, ◌̌
sq_Latn (Albanian) Some mark glyphs were missing: ◌̈, ◌̧
sv_Latn (Swedish) Some mark glyphs were missing: ◌̀, ◌́, ◌̈, ◌̊
tr_Latn (Turkish) Some mark glyphs were missing: ◌̂, ◌̆, ◌̇, ◌̈, ◌̦, ◌̧

[code: failed-language-shaping]

  • WARN GF_Latin_Core glyphset:
Language FAIL messages
de_Latn (German) Some auxiliary glyphs were missing: ẞ
nl_Latn (Dutch) Some auxiliary glyphs were missing: ÍJ́, íj́
ro_Latn (Romanian) Some auxiliary glyphs were missing: Ș, ș, Ț, ț

[code: warning-language-shaping]

🔥 FAIL: Does DESCRIPTION file contain a upstream Git repo URL? (com.google.fonts/check/description/git_url)
  • 🔥 FAIL Please host your font project on a public Git repo (such as GitHub or GitLab) and place a link in the DESCRIPTION.en_us.html file. [code: lacks-git-url]
🔥 FAIL: Check license file has good copyright string. (com.google.fonts/check/license/OFL_copyright)
  • 🔥 FAIL First line in license file is:

"apache license"

which does not match the expected format, similar to:

"Copyright 2022 The Familyname Project Authors (git url)" [code: bad-format]

🔥 FAIL: Check Google Fonts glyph coverage. (com.google.fonts/check/glyph_coverage)
  • 🔥 FAIL Missing required codepoints:

    • 0x0218 (LATIN CAPITAL LETTER S WITH COMMA BELOW)

    • 0x0219 (LATIN SMALL LETTER S WITH COMMA BELOW)

    • 0x021A (LATIN CAPITAL LETTER T WITH COMMA BELOW)

    • 0x021B (LATIN SMALL LETTER T WITH COMMA BELOW)

    • 0x0300 (COMBINING GRAVE ACCENT)

    • 0x0301 (COMBINING ACUTE ACCENT)

    • 0x0302 (COMBINING CIRCUMFLEX ACCENT)

    • 0x0303 (COMBINING TILDE)

    • 0x0304 (COMBINING MACRON)

    • 0x0306 (COMBINING BREVE)

    • 9 more.

Use -F or --full-lists to disable shortening of long lists. [code: missing-codepoints]

🔥 FAIL: Copyright notices match canonical pattern in fonts (com.google.fonts/check/font_copyright)
  • 🔥 FAIL Name Table entry: Copyright notices should match a pattern similar to:

"Copyright 2019 The Familyname Project Authors (git url)"

But instead we have got:

"Copyright (c) 2010 by Brian J. Bonislawsky DBA Astigmatic (AOETI). All rights reserved. Available under the Apache 2.0 licence.
http://www.apache.org/licenses/LICENSE-2.0.html"
[code: bad-notice-format]

  • 🔥 FAIL Name Table entry: Copyright notices should match a pattern similar to:

"Copyright 2019 The Familyname Project Authors (git url)"

But instead we have got:

"Copyright (c) 2010 by Brian J. Bonislawsky DBA Astigmatic (AOETI). All rights reserved. Available under the Apache 2.0 licence.
http://www.apache.org/licenses/LICENSE-2.0.html"
[code: bad-notice-format]

🔥 FAIL: Font enables smart dropout control in "prep" table instructions? (com.google.fonts/check/smart_dropout)
  • 🔥 FAIL The 'prep' table does not contain TrueType instructions enabling smart dropout control. To fix, export the font with autohinting enabled, or run ttfautohint on the font, or run the gftools fix-nonhinting script. [code: lacks-smart-dropout]
🔥 FAIL: Check if the vertical metrics of a family are similar to the same family hosted on Google Fonts. (com.google.fonts/check/vertical_metrics_regressions)
  • 🔥 FAIL Crushed Regular: OS/2 sTypoAscender is 1374 when it should be 1820 [code: bad-typo-ascender]
  • 🔥 FAIL Crushed Regular: OS/2 sTypoDescender is -115 when it should be -483 [code: bad-typo-descender]
WARN: Check if OS/2 xAvgCharWidth is correct. (com.google.fonts/check/xavgcharwidth)
  • WARN OS/2 xAvgCharWidth is 768 but it should be 820 which corresponds to the average of the widths of all glyphs in the font. [code: xAvgCharWidth-wrong]
WARN: Font has **proper** whitespace glyph names? (com.google.fonts/check/whitespace_glyphnames)
  • WARN Glyph 0x00A0 is called "nonbreakingspace": Change to "uni00A0" [code: not-recommended-00a0]
WARN: Check that legacy accents aren't used in composite glyphs. (com.google.fonts/check/legacy_accents)
  • WARN Glyph "Agrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "agrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Aacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "aacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Acircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "acircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Atilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "atilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Adieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "adieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Aring" has a legacy accent component (ring). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "aring" has a legacy accent component (ring). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "AEacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "aeacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Amacron" has a legacy accent component (macron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "amacron" has a legacy accent component (macron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Abreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "abreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ccedilla" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ccedilla" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Cacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "cacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ccircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ccircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Cdotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "cdotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ccaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ccaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Dcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "dcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Egrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "egrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Eacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "eacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ecircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ecircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Edieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "edieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Emacron" has a legacy accent component (macron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "emacron" has a legacy accent component (macron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ebreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ebreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Edotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "edotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ecaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ecaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Gcircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "gcircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Gbreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "gbreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Gdotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "gdotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Hcircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "hcircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Igrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "igrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Iacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "iacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Icircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "icircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Idieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "idieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Itilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "itilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Imacron" has a legacy accent component (macron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "imacron" has a legacy accent component (macron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ibreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ibreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Idotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Jcircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "jcircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Lacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "lacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ntilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ntilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Nacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "nacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ncaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ncaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ograve" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ograve" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Oacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "oacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ocircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ocircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Otilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "otilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Odieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "odieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Omacron" has a legacy accent component (macron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "omacron" has a legacy accent component (macron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Obreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "obreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ohungarumlaut" has a legacy accent component (hungarumlaut). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ohungarumlaut" has a legacy accent component (hungarumlaut). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Oslashacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "oslashacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Racute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "racute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Rcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "rcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Sacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "sacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Scircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "scircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Scedilla" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "scedilla" has a legacy accent component (cedilla). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Scaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "scaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Tcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "tcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ugrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ugrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Uacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ucircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ucircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Udieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "udieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Utilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "utilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Umacron" has a legacy accent component (macron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "umacron" has a legacy accent component (macron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ubreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ubreve" has a legacy accent component (breve). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Uring" has a legacy accent component (ring). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uring" has a legacy accent component (ring). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Uhungarumlaut" has a legacy accent component (hungarumlaut). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uhungarumlaut" has a legacy accent component (hungarumlaut). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Wcircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "wcircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Wgrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "wgrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Wacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "wacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Wdieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "wdieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Yacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "yacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ycircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ycircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ydieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ydieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ygrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ygrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Zacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "zacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Zdotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "zdotaccent" has a legacy accent component (dotaccent). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Zcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "zcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
WARN: Check font contains no unreachable glyphs (com.google.fonts/check/unreachable_glyphs)
  • WARN The following glyphs could not be reached by codepoint or substitution rules:

    • ibreve
      [code: unreachable-glyphs]
WARN: Check if each glyph has the recommended amount of contours. (com.google.fonts/check/contour_count)
  • WARN This check inspects the glyph outlines and detects the total number of contours in each of them. The expected values are infered from the typical ammounts of contours observed in a large collection of reference font families. The divergences listed below may simply indicate a significantly different design on some of your glyphs. On the other hand, some of these may flag actual bugs in the font such as glyphs mapped to an incorrect codepoint. Please consider reviewing the design and codepoint assignment of these to make sure they are correct.

The following glyphs do not have the recommended number of contours:

- Glyph name: b	Contours detected: 3	Expected: 2

- Glyph name: g	Contours detected: 1	Expected: 2 or 3

- Glyph name: i	Contours detected: 1	Expected: 2

- Glyph name: j	Contours detected: 1	Expected: 2

- Glyph name: uni00AD	Contours detected: 1	Expected: 0

- Glyph name: gcircumflex	Contours detected: 2	Expected: 3 or 4

- Glyph name: gbreve	Contours detected: 2	Expected: 3 or 4

- Glyph name: gdotaccent	Contours detected: 2	Expected: 3 or 4

- Glyph name: gcommaaccent	Contours detected: 2	Expected: 3 or 4

- Glyph name: hbar	Contours detected: 2	Expected: 1

- 14 more.

Use -F or --full-lists to disable shortening of long lists.
[code: contour-count]

WARN: Does the font contain a soft hyphen? (com.google.fonts/check/soft_hyphen)
  • WARN This font has a 'Soft Hyphen' character. [code: softhyphen]
WARN: Checking Vertical Metric Linegaps. (com.google.fonts/check/linegaps)
  • WARN hhea lineGap is not equal to 0. [code: hhea]
WARN: Are any segments inordinately short? (com.google.fonts/check/outline_short_segments)
  • WARN The following glyphs have segments which seem very short:

    • six (U+0036) contains a short segment L<<235.0,651.0>--<235.0,658.0>>

    • at (U+0040) contains a short segment B<<927.0,428.0>-<911.0,408.0>-<888.5,389.0>>

    • at (U+0040) contains a short segment B<<888.5,389.0>-<866.0,370.0>-<839.0,354.5>>

    • at (U+0040) contains a short segment B<<1054.0,532.0>-<1050.0,503.0>-<1054.0,483.0>>

    • at (U+0040) contains a short segment B<<1054.0,483.0>-<1058.0,463.0>-<1067.0,450.5>>

    • at (U+0040) contains a short segment B<<1067.0,450.5>-<1076.0,438.0>-<1089.5,432.0>>

    • at (U+0040) contains a short segment B<<1089.5,432.0>-<1103.0,426.0>-<1118.0,426.0>>

    • at (U+0040) contains a short segment B<<1093.0,324.0>-<1074.0,324.0>-<1051.0,328.5>>

    • at (U+0040) contains a short segment B<<1051.0,328.5>-<1028.0,333.0>-<1005.0,344.5>>

    • at (U+0040) contains a short segment B<<1005.0,344.5>-<982.0,356.0>-<961.5,376.0>>

    • 56 more.

Use -F or --full-lists to disable shortening of long lists. [code: found-short-segments]

WARN: Do outlines contain any jaggy segments? (com.google.fonts/check/outline_jaggy_segments)
  • WARN The following glyphs have jaggy segments:

    • braceleft (U+007B): B<<379.0,754.5>-<333.0,701.0>-<225.0,686.0>>/B<<225.0,686.0>-<279.0,681.0>-<317.0,663.0>> = 13.19724390832968

    • braceright (U+007D): B<<390.0,663.0>-<428.0,681.0>-<482.0,686.0>>/B<<482.0,686.0>-<374.0,701.0>-<328.0,754.5>> = 13.19724390832968

    • six (U+0036): L<<235.0,651.0>--<235.0,658.0>>/B<<235.0,658.0>-<236.0,503.0>-<249.0,394.5>> = 0.3696450618460166 [code: found-jaggy-segments]

WARN: Check for codepoints not covered by METADATA subsets. (com.google.fonts/check/metadata/unreachable_subsetting)
  • WARN The following codepoints supported by the font are not covered by
    any subsets defined in the font's metadata file, and will never
    be served. You can solve this by either manually adding additional
    subset declarations to METADATA.pb, or by editing the glyphset
    definitions.

  • U+0020 SPACE: try adding one of: znamenny, lycian, tifinagh, manichaean, anatolian-hieroglyphs, limbu, old-uyghur, phoenician, avestan, ahom, dogra, kannada, oriya, soyombo, balinese, osmanya, georgian, meroitic-hieroglyphs, hebrew, kharoshthi, lisu, sogdian, pahawh-hmong, syloti-nagri, tirhuta, hanifi-rohingya, thaana, khojki, tai-le, psalter-pahlavi, bengali, signwriting, javanese, nushu, chinese-simplified, latin-ext, math, gurmukhi, buginese, bhaiksuki, mayan-numerals, korean, tai-viet, inscriptional-pahlavi, khitan-small-script, old-sogdian, cherokee, mahajani, medefaidrin, linear-a, zanabazar-square, runic, vithkuqi, batak, caucasian-albanian, new-tai-lue, wancho, music, sora-sompeng, glagolitic, cypro-minoan, tai-tham, meroitic-cursive, modi, ugaritic, kawi, tibetan, chorasmian, newa, toto, grantha, tangsa, canadian-aboriginal, lepcha, nag-mundari, warang-citi, linear-b, imperial-aramaic, tagbanwa, nandinagari, tamil, carian, phags-pa, ottoman-siyaq-numbers, vietnamese, mandaic, braille, inscriptional-parthian, osage, cypriot, ethiopic, shavian, bamum, duployan, deseret, indic-siyaq-numbers, takri, coptic, mende-kikakui, meetei-mayek, cyrillic-ext, myanmar, mro, tamil-supplement, lydian, nko, khudawadi, kaithi, telugu, ogham, saurashtra, pau-cin-hau, malayalam, vai, brahmi, cuneiform, gujarati, mongolian, siddham, chakma, sundanese, japanese, yezidi, dives-akuru, armenian, nabataean, nyiakeng-puachue-hmong, makasar, multani, old-italic, hatran, cyrillic, greek, elbasan, khmer, old-turkic, egyptian-hieroglyphs, tangut, palmyrene, samaritan, hanunoo, adlam, chinese-traditional, buhid, gunjala-gondi, symbols, devanagari, meroitic, syriac, greek-ext, kayah-li, cham, sharada, tagalog, gothic, bassa-vah, ol-chiki, old-north-arabian, lao, marchen, yi, sinhala, old-permic, elymaic, old-persian, miao, old-hungarian, masaram-gondi, rejang, arabic, thai, chinese-hongkong, old-south-arabian

  • U+00A0 NO-BREAK SPACE: try adding one of: znamenny, lycian, tifinagh, manichaean, anatolian-hieroglyphs, limbu, old-uyghur, phoenician, avestan, ahom, dogra, kannada, oriya, soyombo, balinese, osmanya, georgian, meroitic-hieroglyphs, hebrew, kharoshthi, lisu, sogdian, pahawh-hmong, syloti-nagri, tirhuta, hanifi-rohingya, thaana, khojki, tai-le, psalter-pahlavi, bengali, signwriting, javanese, nushu, chinese-simplified, latin-ext, math, gurmukhi, buginese, bhaiksuki, mayan-numerals, korean, tai-viet, inscriptional-pahlavi, khitan-small-script, old-sogdian, cherokee, mahajani, medefaidrin, linear-a, zanabazar-square, runic, vithkuqi, batak, caucasian-albanian, new-tai-lue, wancho, music, sora-sompeng, glagolitic, cypro-minoan, tai-tham, meroitic-cursive, modi, ugaritic, kawi, tibetan, chorasmian, newa, toto, grantha, tangsa, canadian-aboriginal, lepcha, nag-mundari, warang-citi, linear-b, imperial-aramaic, tagbanwa, nandinagari, tamil, carian, phags-pa, ottoman-siyaq-numbers, vietnamese, mandaic, braille, inscriptional-parthian, osage, cypriot, ethiopic, shavian, bamum, duployan, deseret, indic-siyaq-numbers, takri, coptic, mende-kikakui, meetei-mayek, cyrillic-ext, myanmar, mro, tamil-supplement, lydian, nko, khudawadi, kaithi, telugu, ogham, saurashtra, pau-cin-hau, malayalam, vai, brahmi, cuneiform, gujarati, mongolian, siddham, chakma, sundanese, japanese, yezidi, dives-akuru, armenian, nabataean, nyiakeng-puachue-hmong, makasar, multani, old-italic, hatran, cyrillic, greek, elbasan, khmer, old-turkic, egyptian-hieroglyphs, tangut, palmyrene, samaritan, hanunoo, adlam, chinese-traditional, buhid, gunjala-gondi, symbols, devanagari, meroitic, syriac, greek-ext, kayah-li, cham, sharada, tagalog, gothic, bassa-vah, ol-chiki, old-north-arabian, lao, marchen, yi, sinhala, old-permic, elymaic, old-persian, miao, old-hungarian, masaram-gondi, rejang, arabic, thai, chinese-hongkong, old-south-arabian

  • U+0100 LATIN CAPITAL LETTER A WITH MACRON: try adding latin-ext

  • U+0101 LATIN SMALL LETTER A WITH MACRON: try adding latin-ext

  • U+0102 LATIN CAPITAL LETTER A WITH BREVE: try adding one of: vietnamese, latin-ext

  • U+0103 LATIN SMALL LETTER A WITH BREVE: try adding one of: vietnamese, latin-ext

  • U+0104 LATIN CAPITAL LETTER A WITH OGONEK: try adding latin-ext

  • U+0105 LATIN SMALL LETTER A WITH OGONEK: try adding latin-ext

  • U+0106 LATIN CAPITAL LETTER C WITH ACUTE: try adding latin-ext

  • U+0107 LATIN SMALL LETTER C WITH ACUTE: try adding latin-ext
    145 more.

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: latin, menu [code: unreachable-subsetting]

WARN: License URL matches License text on name table? (com.google.fonts/check/name/license_url)
  • WARN Please consider using HTTPS URLs at name table entry [plat=1, enc=0, name=14] [code: http-in-license-info]
  • WARN Please consider using HTTPS URLs at name table entry [plat=3, enc=1, name=14] [code: http-in-license-info]
WARN: Checking OS/2 achVendID. (com.google.fonts/check/vendor_id)
  • WARN OS/2 VendorID value 'AOEF' is not yet recognized. If you registered it recently, then it's safe to ignore this warning message. Otherwise, you should set it to your own unique 4 character code, and register it with Microsoft at https://www.microsoft.com/typography/links/vendorlist.aspx
    [code: unknown]
WARN: Is the Grid-fitting and Scan-conversion Procedure ('gasp') table set to optimize rendering? (com.google.fonts/check/gasp)
  • INFO These are the ppm ranges declared on the gasp table:

PPM <= 65535:
flag = 0x0A
- Use grayscale rendering
- Use smoothing along multiple axes with ClearType®
[code: ranges]

  • WARN The gasp range 0xFFFF value 0x0A should be set to 0x0F. [code: unset-flags]
WARN: Ensure fonts have ScriptLangTags declared on the 'meta' table. (com.google.fonts/check/meta/script_lang_tags)
  • WARN This font file does not have a 'meta' table. [code: lacks-meta-table]
INFO: Is there a usable "kern" table declared in the font? (com.google.fonts/check/kern_table)
  • INFO Only a few programs may require the kerning info that this font provides on its "kern" table. [code: kern-found]
INFO: List all superfamily filepaths (com.google.fonts/check/superfamily/list)
  • INFO apache/crushed [code: family-path]
INFO: Font contains all required tables? (com.google.fonts/check/required_tables)
  • INFO This font contains the following optional tables:

    • cvt

    • fpgm

    • loca

    • prep

    • GPOS

    • gasp

    • kern [code: optional-tables]

INFO: Check for font-v versioning. (com.google.fonts/check/fontv)
  • INFO Version string is: "Version 001.001"
    The version string must ideally include a git commit hash and either a "dev" or a "release" suffix such as in the example below:
    "Version 1.3; git-0d08353-release" [code: bad-format]
INFO: EPAR table present in font? (com.google.fonts/check/epar)
INFO: Show hinting filesize impact. (com.google.fonts/check/hinting_impact)
  • INFO Hinting filesize impact:
Font(file='apache/crushed/Crushed-Regular.ttf', context=CheckRunContext(testables=[...], config={'com.google.fonts/check/file_size': {'WARN_SIZE': 1048576, 'FAIL_SIZE': 9437184}, 'custom_order': None, 'explicit_checks': None, 'exclude_checks': None, 'full_lists': False, 'skip_network': False}))
Dehinted Size 54.7kb
Hinted Size 56.4kb
Increase 1.7kb
Change 3.1 %
[code: size-impact]
INFO: Familyname must be unique according to namecheck.fontdata.com (com.google.fonts/check/fontdata_namecheck)
  • INFO The family name "Crushed" seems to be already in use.
    Please visit http://namecheck.fontdata.com for more info. [code: name-collision]
INFO: Font has old ttfautohint applied? (com.google.fonts/check/old_ttfautohint)
  • INFO Could not detect which version of ttfautohint was used in this font. It is typically specified as a comment in the font version entries of the 'name' table. Such font version strings are currently: ['Version 001.001', 'Version 001.001'] [code: version-not-detected]

[2] Family checks
🔥 FAIL: OS/2.fsSelection bit 7 (USE_TYPO_METRICS) is set in all fonts. (com.google.fonts/check/os2/use_typo_metrics)
  • 🔥 FAIL OS/2.fsSelection bit 7 (USE_TYPO_METRICS) wasNOT set in the following fonts: ['apache/crushed/Crushed-Regular.ttf']. [code: missing-os2-fsselection-bit7]
INFO: Check axis ordering on the STAT table. (com.google.fonts/check/STAT/axis_order)
  • INFO All of the fonts lack a STAT table.
    [code: summary]

Summary

💔 ERROR ☠ FATAL 🔥 FAIL ⚠ WARN 💤 SKIP ℹ INFO 🍞 PASS 🔎 DEBUG
0 0 15 14 68 9 151 0
0% 0% 6% 5% 26% 4% 59% 0%

Note: The following loglevels were omitted in this report:

  • SKIP
  • PASS
  • DEBUG

Copy link

FontBakery report

fontbakery version: 0.12.0a1

Check results

[33] FontdinerSwanky-Regular.ttf
🔥 FAIL: Checking OS/2 Metrics match hhea Metrics. (com.google.fonts/check/os2_metrics_match_hhea)
  • 🔥 FAIL OS/2 sTypoAscender (879) and hhea ascent (1047) must be equal. [code: ascender]
🔥 FAIL: Font contains '.notdef' as its first glyph? (com.google.fonts/check/mandatory_glyphs)
  • 🔥 FAIL The '.notdef' glyph should contain a drawing, but it is blank. [code: notdef-is-blank]
🔥 FAIL: Copyright notices match canonical pattern in METADATA.pb (com.google.fonts/check/metadata/valid_copyright)
  • 🔥 FAIL METADATA.pb: Copyright notices should match a pattern similar to:

"Copyright 2020 The Familyname Project Authors (git url)"

But instead we have got:

"copyright (c) 2010 by font diner, inc. all rights reserved." [code: bad-notice-format]

🔥 FAIL: METADATA.pb: Check URL on copyright string is the same as in repository_url field. (com.google.fonts/check/metadata/consistent_repo_urls)
  • 🔥 FAIL Please add a family.source.repository_url entry. [code: lacks-repo-url]
🔥 FAIL: Does DESCRIPTION file contain a upstream Git repo URL? (com.google.fonts/check/description/git_url)
  • 🔥 FAIL Please host your font project on a public Git repo (such as GitHub or GitLab) and place a link in the DESCRIPTION.en_us.html file. [code: lacks-git-url]
🔥 FAIL: Check license file has good copyright string. (com.google.fonts/check/license/OFL_copyright)
  • 🔥 FAIL First line in license file is:

"apache license"

which does not match the expected format, similar to:

"Copyright 2022 The Familyname Project Authors (git url)" [code: bad-format]

🔥 FAIL: Check Google Fonts glyph coverage. (com.google.fonts/check/glyph_coverage)
  • 🔥 FAIL Missing required codepoints:

    • 0x0100 (LATIN CAPITAL LETTER A WITH MACRON)

    • 0x0101 (LATIN SMALL LETTER A WITH MACRON)

    • 0x0102 (LATIN CAPITAL LETTER A WITH BREVE)

    • 0x0103 (LATIN SMALL LETTER A WITH BREVE)

    • 0x0104 (LATIN CAPITAL LETTER A WITH OGONEK)

    • 0x0105 (LATIN SMALL LETTER A WITH OGONEK)

    • 0x0106 (LATIN CAPITAL LETTER C WITH ACUTE)

    • 0x0107 (LATIN SMALL LETTER C WITH ACUTE)

    • 0x010A (LATIN CAPITAL LETTER C WITH DOT ABOVE)

    • 0x010B (LATIN SMALL LETTER C WITH DOT ABOVE)

    • 97 more.

Use -F or --full-lists to disable shortening of long lists. [code: missing-codepoints]

🔥 FAIL: Copyright notices match canonical pattern in fonts (com.google.fonts/check/font_copyright)
  • 🔥 FAIL Name Table entry: Copyright notices should match a pattern similar to:

"Copyright 2019 The Familyname Project Authors (git url)"

But instead we have got:

"Copyright (c) 2010 by Font Diner, Inc. All rights reserved."
[code: bad-notice-format]

  • 🔥 FAIL Name Table entry: Copyright notices should match a pattern similar to:

"Copyright 2019 The Familyname Project Authors (git url)"

But instead we have got:

"Copyright (c) 2010 by Font Diner, Inc. All rights reserved."
[code: bad-notice-format]

🔥 FAIL: Font enables smart dropout control in "prep" table instructions? (com.google.fonts/check/smart_dropout)
  • 🔥 FAIL The 'prep' table does not contain TrueType instructions enabling smart dropout control. To fix, export the font with autohinting enabled, or run ttfautohint on the font, or run the gftools fix-nonhinting script. [code: lacks-smart-dropout]
🔥 FAIL: Check if the vertical metrics of a family are similar to the same family hosted on Google Fonts. (com.google.fonts/check/vertical_metrics_regressions)
  • 🔥 FAIL Fontdiner Swanky Regular: OS/2 sTypoAscender is 879 when it should be 1047 [code: bad-typo-ascender]
  • 🔥 FAIL Fontdiner Swanky Regular: OS/2 sTypoDescender is -251 when it should be -510 [code: bad-typo-descender]
WARN: Check if OS/2 xAvgCharWidth is correct. (com.google.fonts/check/xavgcharwidth)
  • WARN OS/2 xAvgCharWidth is 558 but it should be 648 which corresponds to the average of the widths of all glyphs in the font. [code: xAvgCharWidth-wrong]
WARN: Does GPOS table have kerning information? This check skips monospaced fonts as defined by post.isFixedPitch value (com.google.fonts/check/gpos_kerning_info)
  • WARN GPOS table lacks kerning information. [code: lacks-kern-info]
WARN: Check that legacy accents aren't used in composite glyphs. (com.google.fonts/check/legacy_accents)
  • WARN Glyph "Scaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "scaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Yacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "yacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Zcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "zcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Adieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Eacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ntilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Odieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Udieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "aacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "agrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "acircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "adieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "atilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "eacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "egrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ecircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "edieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "iacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "igrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "icircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "idieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ntilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "oacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ograve" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ocircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "odieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "otilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ugrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ucircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "udieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Agrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Atilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Otilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ydieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ydieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Acircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ecircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Aacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Edieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Egrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Iacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Icircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Idieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Igrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Oacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ocircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ograve" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Uacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ucircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ugrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
WARN: Check if each glyph has the recommended amount of contours. (com.google.fonts/check/contour_count)
  • WARN This check inspects the glyph outlines and detects the total number of contours in each of them. The expected values are infered from the typical ammounts of contours observed in a large collection of reference font families. The divergences listed below may simply indicate a significantly different design on some of your glyphs. On the other hand, some of these may flag actual bugs in the font such as glyphs mapped to an incorrect codepoint. Please consider reviewing the design and codepoint assignment of these to make sure they are correct.

The following glyphs do not have the recommended number of contours:

- Glyph name: sfthyphen	Contours detected: 1	Expected: 0

- Glyph name: paragraph	Contours detected: 4	Expected: 1, 2 or 3

- Glyph name: aring	Contours detected: 3	Expected: 4

- Glyph name: aring	Contours detected: 3	Expected: 4

- Glyph name: fi	Contours detected: 1	Expected: 3

- Glyph name: fl	Contours detected: 1	Expected: 2

- Glyph name: paragraph	Contours detected: 4	Expected: 1, 2 or 3

[code: contour-count]

WARN: Does the font contain a soft hyphen? (com.google.fonts/check/soft_hyphen)
  • WARN This font has a 'Soft Hyphen' character. [code: softhyphen]
WARN: Check math signs have the same width. (com.google.fonts/check/math_signs_width)
  • WARN The most common width is 622 among a set of 2 math glyphs.
    The following math glyphs have a different width, though:

Width = 577:
less

Width = 544:
equal

Width = 590:
greater

Width = 555:
logicalnot

Width = 570:
multiply

Width = 517:
divide

Width = 563:
minus
[code: width-outliers]

WARN: Checking Vertical Metric Linegaps. (com.google.fonts/check/linegaps)
  • WARN hhea lineGap is not equal to 0. [code: hhea]
WARN: Are there any misaligned on-curve points? (com.google.fonts/check/outline_alignment_miss)
  • WARN The following glyphs have on-curve points which have potentially incorrect y coordinates:

    • percent (U+0025): X=597.5,Y=-0.5 (should be at baseline 0?)

    • slash (U+002F): X=646.0,Y=806.0 (should be at cap-height 805?)

    • slash (U+002F): X=-31.0,Y=-2.0 (should be at baseline 0?)

    • zero (U+0030): X=370.0,Y=2.0 (should be at baseline 0?)

    • six (U+0036): X=540.5,Y=1.0 (should be at baseline 0?)

    • question (U+003F): X=202.5,Y=807.0 (should be at cap-height 805?)

    • H (U+0048): X=909.0,Y=1.0 (should be at baseline 0?)

    • H (U+0048): X=353.0,Y=1.0 (should be at baseline 0?)

    • I (U+0049): X=317.0,Y=-2.0 (should be at baseline 0?)

    • I (U+0049): X=172.0,Y=-2.0 (should be at baseline 0?)

    • 71 more.

Use -F or --full-lists to disable shortening of long lists. [code: found-misalignments]

WARN: Do any segments have colinear vectors? (com.google.fonts/check/outline_colinear_vectors)
  • WARN The following glyphs have colinear vectors:

    • E (U+0045): L<<-92.0,677.0>--<728.0,738.0>> -> L<<728.0,738.0>--<759.0,740.0>>

    • Eacute (U+00C9): L<<-92.0,677.0>--<728.0,738.0>> -> L<<728.0,738.0>--<759.0,740.0>>

    • Ecircumflex (U+00CA): L<<-92.0,677.0>--<728.0,738.0>> -> L<<728.0,738.0>--<759.0,740.0>>

    • Edieresis (U+00CB): L<<-92.0,677.0>--<728.0,738.0>> -> L<<728.0,738.0>--<759.0,740.0>>

    • Egrave (U+00C8): L<<-92.0,677.0>--<728.0,738.0>> -> L<<728.0,738.0>--<759.0,740.0>>

    • onehalf (U+00BD): L<<159.0,-86.0>--<729.0,885.0>> -> L<<729.0,885.0>--<740.0,905.0>>

    • onequarter (U+00BC): L<<159.0,-86.0>--<729.0,885.0>> -> L<<729.0,885.0>--<740.0,905.0>>

    • threequarters (U+00BE): L<<177.0,-86.0>--<748.0,885.0>> -> L<<748.0,885.0>--<759.0,905.0>> [code: found-colinear-vectors]

WARN: Do outlines contain any jaggy segments? (com.google.fonts/check/outline_jaggy_segments)
  • WARN The following glyphs have jaggy segments:

    • eth (U+00F0): B<<148.0,800.5>-<115.0,821.0>-<83.0,835.0>>/B<<83.0,835.0>-<168.0,821.0>-<248.0,784.5>> = 14.27639848056353

    • trademark (U+2122): L<<379.0,357.0>--<207.0,357.0>>/B<<207.0,357.0>-<211.0,358.0>-<221.5,362.5>> = 14.036243467926484 [code: found-jaggy-segments]

WARN: Do outlines contain any semi-vertical or semi-horizontal lines? (com.google.fonts/check/outline_semi_vertical)
  • WARN The following glyphs have semi-vertical/semi-horizontal lines:

    • AE (U+00C6): L<<604.0,63.0>--<883.0,65.0>>

    • AE (U+00C6): L<<975.0,357.0>--<978.0,-18.0>>

    • AE (U+00C6): L<<978.0,-18.0>--<191.0,-24.0>>

    • E (U+0045): L<<329.0,63.0>--<629.0,65.0>>

    • E (U+0045): L<<728.0,357.0>--<731.0,-18.0>>

    • E (U+0045): L<<731.0,-18.0>--<-65.0,-24.0>>

    • Eacute (U+00C9): L<<329.0,63.0>--<629.0,65.0>>

    • Eacute (U+00C9): L<<728.0,357.0>--<731.0,-18.0>>

    • Eacute (U+00C9): L<<731.0,-18.0>--<-65.0,-24.0>>

    • Ecircumflex (U+00CA): L<<329.0,63.0>--<629.0,65.0>>

    • 65 more.

Use -F or --full-lists to disable shortening of long lists. [code: found-semi-vertical]

WARN: Check for codepoints not covered by METADATA subsets. (com.google.fonts/check/metadata/unreachable_subsetting)
  • WARN The following codepoints supported by the font are not covered by
    any subsets defined in the font's metadata file, and will never
    be served. You can solve this by either manually adding additional
    subset declarations to METADATA.pb, or by editing the glyphset
    definitions.

  • U+0020 SPACE: try adding one of: arabic, mongolian, avestan, old-north-arabian, warang-citi, modi, tifinagh, gurmukhi, armenian, znamenny, kannada, cuneiform, hanifi-rohingya, pahawh-hmong, symbols, greek, syriac, yi, tai-viet, egyptian-hieroglyphs, deseret, gothic, javanese, braille, sharada, vietnamese, multani, sinhala, lepcha, inscriptional-pahlavi, kharoshthi, osage, sogdian, myanmar, makasar, devanagari, glagolitic, bassa-vah, soyombo, imperial-aramaic, dives-akuru, manichaean, adlam, gujarati, khudawadi, takri, lycian, signwriting, sundanese, new-tai-lue, balinese, inscriptional-parthian, hanunoo, cypro-minoan, mahajani, khmer, tamil-supplement, runic, meroitic, korean, old-italic, buginese, old-uyghur, thai, tai-tham, cyrillic-ext, georgian, gunjala-gondi, kaithi, chakma, ottoman-siyaq-numbers, tagbanwa, vithkuqi, telugu, greek-ext, tagalog, ol-chiki, nyiakeng-puachue-hmong, caucasian-albanian, samaritan, ugaritic, old-persian, canadian-aboriginal, toto, hebrew, bengali, meroitic-cursive, buhid, batak, nandinagari, vai, linear-a, pau-cin-hau, phags-pa, music, saurashtra, yezidi, chinese-simplified, math, old-turkic, lydian, meroitic-hieroglyphs, mro, rejang, tai-le, anatolian-hieroglyphs, nag-mundari, kayah-li, ahom, wancho, chinese-hongkong, chorasmian, newa, kawi, thaana, masaram-gondi, carian, tirhuta, latin-ext, grantha, tangsa, nabataean, lisu, lao, old-permic, tamil, miao, ogham, linear-b, indic-siyaq-numbers, dogra, phoenician, duployan, khojki, psalter-pahlavi, siddham, ethiopic, cypriot, old-south-arabian, old-sogdian, tibetan, osmanya, cherokee, limbu, medefaidrin, cyrillic, japanese, khitan-small-script, tangut, palmyrene, bamum, old-hungarian, elbasan, syloti-nagri, mende-kikakui, hatran, zanabazar-square, bhaiksuki, nushu, nko, brahmi, elymaic, mandaic, cham, marchen, meetei-mayek, chinese-traditional, shavian, sora-sompeng, mayan-numerals, coptic, malayalam, oriya

  • U+00A0 NO-BREAK SPACE: try adding one of: arabic, mongolian, avestan, old-north-arabian, warang-citi, modi, tifinagh, gurmukhi, armenian, znamenny, kannada, cuneiform, hanifi-rohingya, pahawh-hmong, symbols, greek, syriac, yi, tai-viet, egyptian-hieroglyphs, deseret, gothic, javanese, braille, sharada, vietnamese, multani, sinhala, lepcha, inscriptional-pahlavi, kharoshthi, osage, sogdian, myanmar, makasar, devanagari, glagolitic, bassa-vah, soyombo, imperial-aramaic, dives-akuru, manichaean, adlam, gujarati, khudawadi, takri, lycian, signwriting, sundanese, new-tai-lue, balinese, inscriptional-parthian, hanunoo, cypro-minoan, mahajani, khmer, tamil-supplement, runic, meroitic, korean, old-italic, buginese, old-uyghur, thai, tai-tham, cyrillic-ext, georgian, gunjala-gondi, kaithi, chakma, ottoman-siyaq-numbers, tagbanwa, vithkuqi, telugu, greek-ext, tagalog, ol-chiki, nyiakeng-puachue-hmong, caucasian-albanian, samaritan, ugaritic, old-persian, canadian-aboriginal, toto, hebrew, bengali, meroitic-cursive, buhid, batak, nandinagari, vai, linear-a, pau-cin-hau, phags-pa, music, saurashtra, yezidi, chinese-simplified, math, old-turkic, lydian, meroitic-hieroglyphs, mro, rejang, tai-le, anatolian-hieroglyphs, nag-mundari, kayah-li, ahom, wancho, chinese-hongkong, chorasmian, newa, kawi, thaana, masaram-gondi, carian, tirhuta, latin-ext, grantha, tangsa, nabataean, lisu, lao, old-permic, tamil, miao, ogham, linear-b, indic-siyaq-numbers, dogra, phoenician, duployan, khojki, psalter-pahlavi, siddham, ethiopic, cypriot, old-south-arabian, old-sogdian, tibetan, osmanya, cherokee, limbu, medefaidrin, cyrillic, japanese, khitan-small-script, tangut, palmyrene, bamum, old-hungarian, elbasan, syloti-nagri, mende-kikakui, hatran, zanabazar-square, bhaiksuki, nushu, nko, brahmi, elymaic, mandaic, cham, marchen, meetei-mayek, chinese-traditional, shavian, sora-sompeng, mayan-numerals, coptic, malayalam, oriya

  • U+0141 LATIN CAPITAL LETTER L WITH STROKE: try adding latin-ext

  • U+0142 LATIN SMALL LETTER L WITH STROKE: try adding latin-ext

  • U+0160 LATIN CAPITAL LETTER S WITH CARON: try adding latin-ext

  • U+0161 LATIN SMALL LETTER S WITH CARON: try adding latin-ext

  • U+0178 LATIN CAPITAL LETTER Y WITH DIAERESIS: try adding latin-ext

  • U+017D LATIN CAPITAL LETTER Z WITH CARON: try adding latin-ext

  • U+017E LATIN SMALL LETTER Z WITH CARON: try adding latin-ext

  • U+02C7 CARON: try adding one of: canadian-aboriginal, tifinagh, yi
    9 more.

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: latin, menu [code: unreachable-subsetting]

WARN: License URL matches License text on name table? (com.google.fonts/check/name/license_url)
  • WARN Please consider using HTTPS URLs at name table entry [plat=1, enc=0, name=14] [code: http-in-license-info]
  • WARN Please consider using HTTPS URLs at name table entry [plat=3, enc=1, name=14] [code: http-in-license-info]
WARN: Checking OS/2 achVendID. (com.google.fonts/check/vendor_id)
  • WARN OS/2 VendorID value 'DINR' is not yet recognized. If you registered it recently, then it's safe to ignore this warning message. Otherwise, you should set it to your own unique 4 character code, and register it with Microsoft at https://www.microsoft.com/typography/links/vendorlist.aspx
    [code: unknown]
WARN: Is the Grid-fitting and Scan-conversion Procedure ('gasp') table set to optimize rendering? (com.google.fonts/check/gasp)
  • INFO These are the ppm ranges declared on the gasp table:

PPM <= 65535:
flag = 0x0A
- Use grayscale rendering
- Use smoothing along multiple axes with ClearType®
[code: ranges]

  • WARN The gasp range 0xFFFF value 0x0A should be set to 0x0F. [code: unset-flags]
WARN: Ensure fonts have ScriptLangTags declared on the 'meta' table. (com.google.fonts/check/meta/script_lang_tags)
  • WARN This font file does not have a 'meta' table. [code: lacks-meta-table]
INFO: Is there a usable "kern" table declared in the font? (com.google.fonts/check/kern_table)
  • INFO Only a few programs may require the kerning info that this font provides on its "kern" table. [code: kern-found]
INFO: List all superfamily filepaths (com.google.fonts/check/superfamily/list)
  • INFO apache/fontdinerswanky [code: family-path]
INFO: Font contains all required tables? (com.google.fonts/check/required_tables)
  • INFO This font contains the following optional tables:

    • cvt

    • fpgm

    • loca

    • prep

    • gasp

    • kern [code: optional-tables]

INFO: Check for font-v versioning. (com.google.fonts/check/fontv)
  • INFO Version string is: "Version 1.001"
    The version string must ideally include a git commit hash and either a "dev" or a "release" suffix such as in the example below:
    "Version 1.3; git-0d08353-release" [code: bad-format]
INFO: EPAR table present in font? (com.google.fonts/check/epar)
INFO: Show hinting filesize impact. (com.google.fonts/check/hinting_impact)
  • INFO Hinting filesize impact:
Font(file='apache/fontdinerswanky/FontdinerSwanky-Regular.ttf', context=CheckRunContext(testables=[...], config={'com.google.fonts/check/file_size': {'WARN_SIZE': 1048576, 'FAIL_SIZE': 9437184}, 'custom_order': None, 'explicit_checks': None, 'exclude_checks': None, 'full_lists': False, 'skip_network': False}))
Dehinted Size 43.8kb
Hinted Size 44.5kb
Increase 660 bytes
Change 1.5 %
[code: size-impact]
INFO: Font has old ttfautohint applied? (com.google.fonts/check/old_ttfautohint)
  • INFO Could not detect which version of ttfautohint was used in this font. It is typically specified as a comment in the font version entries of the 'name' table. Such font version strings are currently: ['Version 1.001', 'Version 1.001'] [code: version-not-detected]

[2] Family checks
🔥 FAIL: OS/2.fsSelection bit 7 (USE_TYPO_METRICS) is set in all fonts. (com.google.fonts/check/os2/use_typo_metrics)
  • 🔥 FAIL OS/2.fsSelection bit 7 (USE_TYPO_METRICS) wasNOT set in the following fonts: ['apache/fontdinerswanky/FontdinerSwanky-Regular.ttf']. [code: missing-os2-fsselection-bit7]
INFO: Check axis ordering on the STAT table. (com.google.fonts/check/STAT/axis_order)
  • INFO All of the fonts lack a STAT table.
    [code: summary]

Summary

💔 ERROR ☠ FATAL 🔥 FAIL ⚠ WARN 💤 SKIP ℹ INFO 🍞 PASS 🔎 DEBUG
0 0 11 16 67 8 155 0
0% 0% 4% 6% 26% 3% 60% 0%

Note: The following loglevels were omitted in this report:

  • SKIP
  • PASS
  • DEBUG

Copy link

FontBakery report

fontbakery version: 0.12.0a1

Check results

[31] HomemadeApple-Regular.ttf
🔥 FAIL: Checking OS/2 Metrics match hhea Metrics. (com.google.fonts/check/os2_metrics_match_hhea)
  • 🔥 FAIL OS/2 sTypoAscender (989) and hhea ascent (1327) must be equal. [code: ascender]
🔥 FAIL: Font contains '.notdef' as its first glyph? (com.google.fonts/check/mandatory_glyphs)
  • 🔥 FAIL The '.notdef' glyph should contain a drawing, but it is blank. [code: notdef-is-blank]
🔥 FAIL: Copyright notices match canonical pattern in METADATA.pb (com.google.fonts/check/metadata/valid_copyright)
  • 🔥 FAIL METADATA.pb: Copyright notices should match a pattern similar to:

"Copyright 2020 The Familyname Project Authors (git url)"

But instead we have got:

"copyright (c) 2010 by font diner, inc. all rights reserved." [code: bad-notice-format]

🔥 FAIL: METADATA.pb: Check URL on copyright string is the same as in repository_url field. (com.google.fonts/check/metadata/consistent_repo_urls)
  • 🔥 FAIL Please add a family.source.repository_url entry. [code: lacks-repo-url]
🔥 FAIL: Does DESCRIPTION file contain a upstream Git repo URL? (com.google.fonts/check/description/git_url)
  • 🔥 FAIL Please host your font project on a public Git repo (such as GitHub or GitLab) and place a link in the DESCRIPTION.en_us.html file. [code: lacks-git-url]
🔥 FAIL: Check license file has good copyright string. (com.google.fonts/check/license/OFL_copyright)
  • 🔥 FAIL First line in license file is:

"apache license"

which does not match the expected format, similar to:

"Copyright 2022 The Familyname Project Authors (git url)" [code: bad-format]

🔥 FAIL: Check Google Fonts glyph coverage. (com.google.fonts/check/glyph_coverage)
  • 🔥 FAIL Missing required codepoints:

    • 0x0100 (LATIN CAPITAL LETTER A WITH MACRON)

    • 0x0101 (LATIN SMALL LETTER A WITH MACRON)

    • 0x0102 (LATIN CAPITAL LETTER A WITH BREVE)

    • 0x0103 (LATIN SMALL LETTER A WITH BREVE)

    • 0x0104 (LATIN CAPITAL LETTER A WITH OGONEK)

    • 0x0105 (LATIN SMALL LETTER A WITH OGONEK)

    • 0x0106 (LATIN CAPITAL LETTER C WITH ACUTE)

    • 0x0107 (LATIN SMALL LETTER C WITH ACUTE)

    • 0x010A (LATIN CAPITAL LETTER C WITH DOT ABOVE)

    • 0x010B (LATIN SMALL LETTER C WITH DOT ABOVE)

    • 97 more.

Use -F or --full-lists to disable shortening of long lists. [code: missing-codepoints]

🔥 FAIL: Copyright notices match canonical pattern in fonts (com.google.fonts/check/font_copyright)
  • 🔥 FAIL Name Table entry: Copyright notices should match a pattern similar to:

"Copyright 2019 The Familyname Project Authors (git url)"

But instead we have got:

"Copyright (c) 2010 by Font Diner, Inc. All rights reserved."
[code: bad-notice-format]

  • 🔥 FAIL Name Table entry: Copyright notices should match a pattern similar to:

"Copyright 2019 The Familyname Project Authors (git url)"

But instead we have got:

"Copyright (c) 2010 by Font Diner, Inc. All rights reserved."
[code: bad-notice-format]

🔥 FAIL: Font enables smart dropout control in "prep" table instructions? (com.google.fonts/check/smart_dropout)
  • 🔥 FAIL The 'prep' table does not contain TrueType instructions enabling smart dropout control. To fix, export the font with autohinting enabled, or run ttfautohint on the font, or run the gftools fix-nonhinting script. [code: lacks-smart-dropout]
🔥 FAIL: Check if the vertical metrics of a family are similar to the same family hosted on Google Fonts. (com.google.fonts/check/vertical_metrics_regressions)
  • 🔥 FAIL Homemade Apple Regular: OS/2 sTypoAscender is 989 when it should be 1327 [code: bad-typo-ascender]
  • 🔥 FAIL Homemade Apple Regular: OS/2 sTypoDescender is -662 when it should be -866 [code: bad-typo-descender]
WARN: Check if OS/2 xAvgCharWidth is correct. (com.google.fonts/check/xavgcharwidth)
  • WARN OS/2 xAvgCharWidth is 567 but it should be 595 which corresponds to the average of the widths of all glyphs in the font. [code: xAvgCharWidth-wrong]
WARN: Does GPOS table have kerning information? This check skips monospaced fonts as defined by post.isFixedPitch value (com.google.fonts/check/gpos_kerning_info)
  • WARN GPOS table lacks kerning information. [code: lacks-kern-info]
WARN: Check that legacy accents aren't used in composite glyphs. (com.google.fonts/check/legacy_accents)
  • WARN Glyph "Scaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "scaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Yacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "yacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Zcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "zcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Adieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Eacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ntilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Odieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Udieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "aacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "agrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "acircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "adieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "atilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "eacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "egrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ecircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "edieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "iacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "igrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "icircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "idieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ntilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "oacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ograve" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ocircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "odieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "otilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ugrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ucircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "udieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Agrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Atilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Otilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ydieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ydieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Acircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ecircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Aacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Edieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Egrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Iacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Icircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Idieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Igrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Oacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ocircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ograve" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Uacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ucircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ugrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
WARN: Check if each glyph has the recommended amount of contours. (com.google.fonts/check/contour_count)
  • WARN This check inspects the glyph outlines and detects the total number of contours in each of them. The expected values are infered from the typical ammounts of contours observed in a large collection of reference font families. The divergences listed below may simply indicate a significantly different design on some of your glyphs. On the other hand, some of these may flag actual bugs in the font such as glyphs mapped to an incorrect codepoint. Please consider reviewing the design and codepoint assignment of these to make sure they are correct.

The following glyphs do not have the recommended number of contours:

- Glyph name: dollar	Contours detected: 4	Expected: 1, 3 or 5

- Glyph name: percent	Contours detected: 6	Expected: 4 or 5

- Glyph name: two	Contours detected: 3	Expected: 1

- Glyph name: five	Contours detected: 2	Expected: 1

- Glyph name: D	Contours detected: 3	Expected: 2

- Glyph name: G	Contours detected: 3	Expected: 1

- Glyph name: H	Contours detected: 2	Expected: 1

- Glyph name: I	Contours detected: 3	Expected: 1

- Glyph name: J	Contours detected: 3	Expected: 1

- Glyph name: L	Contours detected: 3	Expected: 1

- 124 more.

Use -F or --full-lists to disable shortening of long lists.
[code: contour-count]

WARN: Does the font contain a soft hyphen? (com.google.fonts/check/soft_hyphen)
  • WARN This font has a 'Soft Hyphen' character. [code: softhyphen]
WARN: Check math signs have the same width. (com.google.fonts/check/math_signs_width)
  • WARN The most common width is 370 among a set of 2 math glyphs.
    The following math glyphs have a different width, though:

Width = 413:
less

Width = 399:
equal

Width = 382:
greater

Width = 539:
logicalnot

Width = 390:
plusminus, multiply

Width = 380:
minus
[code: width-outliers]

WARN: Checking Vertical Metric Linegaps. (com.google.fonts/check/linegaps)
  • WARN hhea lineGap is not equal to 0. [code: hhea]
WARN: Do any segments have colinear vectors? (com.google.fonts/check/outline_colinear_vectors)
  • WARN The following glyphs have colinear vectors:

    • Ccedilla (U+00C7): L<<122.0,-73.0>--<167.0,-73.0>> -> L<<167.0,-73.0>--<172.0,-73.0>>

    • M (U+004D): L<<275.0,793.0>--<275.0,764.0>> -> L<<275.0,764.0>--<275.0,763.0>>

    • Thorn (U+00DE): L<<36.0,253.0>--<36.0,247.0>> -> L<<36.0,247.0>--<36.0,235.0>>

    • U (U+0055): L<<857.0,268.0>--<857.0,264.0>> -> L<<857.0,264.0>--<857.0,263.0>>

    • Uacute (U+00DA): L<<857.0,268.0>--<857.0,264.0>> -> L<<857.0,264.0>--<857.0,263.0>>

    • Ucircumflex (U+00DB): L<<857.0,268.0>--<857.0,264.0>> -> L<<857.0,264.0>--<857.0,263.0>>

    • Udieresis (U+00DC): L<<857.0,268.0>--<857.0,264.0>> -> L<<857.0,264.0>--<857.0,263.0>>

    • Ugrave (U+00D9): L<<857.0,268.0>--<857.0,264.0>> -> L<<857.0,264.0>--<857.0,263.0>> [code: found-colinear-vectors]

WARN: Do outlines contain any jaggy segments? (com.google.fonts/check/outline_jaggy_segments)
  • WARN The following glyphs have jaggy segments:

    • G (U+0047): B<<202.5,102.5>-<232.0,97.0>-<264.0,103.0>>/L<<264.0,103.0>--<263.0,103.0>> = 10.61965527615514

    • S (U+0053): B<<-86.0,115.0>-<-79.0,120.0>-<-72.0,119.0>>/B<<-72.0,119.0>-<-82.0,122.0>-<-93.5,131.5>> = 8.569141879837604

    • Scaron (U+0160): B<<-86.0,115.0>-<-79.0,120.0>-<-72.0,119.0>>/B<<-72.0,119.0>-<-82.0,122.0>-<-93.5,131.5>> = 8.569141879837604

    • T (U+0054): L<<303.0,78.0>--<211.0,113.0>>/B<<211.0,113.0>-<229.0,101.0>-<246.5,90.0>> = 12.861511735772941

    • eight (U+0038): B<<173.0,582.5>-<173.0,594.0>-<163.0,605.0>>/L<<163.0,605.0>--<168.0,600.0>> = 2.726310993906212

    • eight (U+0038): B<<421.5,598.5>-<421.0,604.0>-<426.0,610.0>>/L<<426.0,610.0>--<416.0,600.0>> = 5.1944289077348

    • k (U+006B): B<<88.0,289.0>-<85.0,258.0>-<78.0,233.0>>/B<<78.0,233.0>-<116.0,310.0>-<157.0,383.0>> = 10.624391899874334

    • nine (U+0039): B<<213.0,613.5>-<238.0,636.0>-<254.0,668.0>>/B<<254.0,668.0>-<252.0,660.0>-<257.5,656.0>> = 12.528807709151492

    • two (U+0032): B<<147.5,200.5>-<153.0,203.0>-<154.0,199.0>>/L<<154.0,199.0>--<154.0,202.0>> = 14.036243467926484

    • x (U+0078): B<<-61.5,-115.0>-<-52.0,-84.0>-<-44.0,-53.0>>/B<<-44.0,-53.0>-<-45.0,-61.0>-<-43.0,-60.5>> = 7.345277751164069 [code: found-jaggy-segments]

WARN: Check for codepoints not covered by METADATA subsets. (com.google.fonts/check/metadata/unreachable_subsetting)
  • WARN The following codepoints supported by the font are not covered by
    any subsets defined in the font's metadata file, and will never
    be served. You can solve this by either manually adding additional
    subset declarations to METADATA.pb, or by editing the glyphset
    definitions.

  • U+0020 SPACE: try adding one of: ogham, gurmukhi, limbu, elymaic, nko, saurashtra, meroitic-cursive, greek, inscriptional-pahlavi, carian, symbols, chakma, chinese-simplified, meroitic-hieroglyphs, math, ottoman-siyaq-numbers, chorasmian, znamenny, old-uyghur, nag-mundari, arabic, lydian, tibetan, deseret, myanmar, braille, oriya, egyptian-hieroglyphs, meroitic, dives-akuru, manichaean, phags-pa, sharada, chinese-hongkong, grantha, hanifi-rohingya, buhid, old-hungarian, khojki, phoenician, cyrillic, palmyrene, tangsa, old-persian, imperial-aramaic, tai-tham, adlam, masaram-gondi, cypro-minoan, lisu, multani, syriac, canadian-aboriginal, hebrew, old-south-arabian, devanagari, vai, rejang, khudawadi, osmanya, kannada, newa, mongolian, lycian, sundanese, mayan-numerals, glagolitic, tagbanwa, modi, hanunoo, tirhuta, telugu, psalter-pahlavi, vietnamese, latin-ext, sora-sompeng, khitan-small-script, bamum, thaana, zanabazar-square, ol-chiki, siddham, lao, nushu, anatolian-hieroglyphs, music, buginese, nandinagari, sogdian, syloti-nagri, new-tai-lue, old-turkic, bengali, miao, old-sogdian, wancho, ugaritic, bhaiksuki, dogra, khmer, takri, tifinagh, elbasan, medefaidrin, tagalog, indic-siyaq-numbers, samaritan, balinese, tai-viet, caucasian-albanian, malayalam, gunjala-gondi, javanese, tamil-supplement, cherokee, gujarati, kaithi, linear-b, soyombo, toto, sinhala, ethiopic, thai, cyrillic-ext, korean, kawi, duployan, tai-le, yezidi, meetei-mayek, tamil, marchen, armenian, nabataean, warang-citi, lepcha, japanese, old-permic, kharoshthi, pahawh-hmong, osage, batak, gothic, pau-cin-hau, greek-ext, old-north-arabian, cypriot, mende-kikakui, runic, mandaic, brahmi, georgian, linear-a, mahajani, old-italic, shavian, kayah-li, coptic, cham, chinese-traditional, bassa-vah, cuneiform, signwriting, makasar, inscriptional-parthian, avestan, yi, hatran, tangut, nyiakeng-puachue-hmong, mro, ahom, vithkuqi

  • U+00A0 NO-BREAK SPACE: try adding one of: ogham, gurmukhi, limbu, elymaic, nko, saurashtra, meroitic-cursive, greek, inscriptional-pahlavi, carian, symbols, chakma, chinese-simplified, meroitic-hieroglyphs, math, ottoman-siyaq-numbers, chorasmian, znamenny, old-uyghur, nag-mundari, arabic, lydian, tibetan, deseret, myanmar, braille, oriya, egyptian-hieroglyphs, meroitic, dives-akuru, manichaean, phags-pa, sharada, chinese-hongkong, grantha, hanifi-rohingya, buhid, old-hungarian, khojki, phoenician, cyrillic, palmyrene, tangsa, old-persian, imperial-aramaic, tai-tham, adlam, masaram-gondi, cypro-minoan, lisu, multani, syriac, canadian-aboriginal, hebrew, old-south-arabian, devanagari, vai, rejang, khudawadi, osmanya, kannada, newa, mongolian, lycian, sundanese, mayan-numerals, glagolitic, tagbanwa, modi, hanunoo, tirhuta, telugu, psalter-pahlavi, vietnamese, latin-ext, sora-sompeng, khitan-small-script, bamum, thaana, zanabazar-square, ol-chiki, siddham, lao, nushu, anatolian-hieroglyphs, music, buginese, nandinagari, sogdian, syloti-nagri, new-tai-lue, old-turkic, bengali, miao, old-sogdian, wancho, ugaritic, bhaiksuki, dogra, khmer, takri, tifinagh, elbasan, medefaidrin, tagalog, indic-siyaq-numbers, samaritan, balinese, tai-viet, caucasian-albanian, malayalam, gunjala-gondi, javanese, tamil-supplement, cherokee, gujarati, kaithi, linear-b, soyombo, toto, sinhala, ethiopic, thai, cyrillic-ext, korean, kawi, duployan, tai-le, yezidi, meetei-mayek, tamil, marchen, armenian, nabataean, warang-citi, lepcha, japanese, old-permic, kharoshthi, pahawh-hmong, osage, batak, gothic, pau-cin-hau, greek-ext, old-north-arabian, cypriot, mende-kikakui, runic, mandaic, brahmi, georgian, linear-a, mahajani, old-italic, shavian, kayah-li, coptic, cham, chinese-traditional, bassa-vah, cuneiform, signwriting, makasar, inscriptional-parthian, avestan, yi, hatran, tangut, nyiakeng-puachue-hmong, mro, ahom, vithkuqi

  • U+0141 LATIN CAPITAL LETTER L WITH STROKE: try adding latin-ext

  • U+0142 LATIN SMALL LETTER L WITH STROKE: try adding latin-ext

  • U+0160 LATIN CAPITAL LETTER S WITH CARON: try adding latin-ext

  • U+0161 LATIN SMALL LETTER S WITH CARON: try adding latin-ext

  • U+0178 LATIN CAPITAL LETTER Y WITH DIAERESIS: try adding latin-ext

  • U+017D LATIN CAPITAL LETTER Z WITH CARON: try adding latin-ext

  • U+017E LATIN SMALL LETTER Z WITH CARON: try adding latin-ext

  • U+02C7 CARON: try adding one of: yi, tifinagh, canadian-aboriginal
    8 more.

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: latin, menu [code: unreachable-subsetting]

WARN: License URL matches License text on name table? (com.google.fonts/check/name/license_url)
  • WARN Please consider using HTTPS URLs at name table entry [plat=1, enc=0, name=14] [code: http-in-license-info]
  • WARN Please consider using HTTPS URLs at name table entry [plat=3, enc=1, name=14] [code: http-in-license-info]
WARN: Checking OS/2 achVendID. (com.google.fonts/check/vendor_id)
  • WARN OS/2 VendorID value 'DINR' is not yet recognized. If you registered it recently, then it's safe to ignore this warning message. Otherwise, you should set it to your own unique 4 character code, and register it with Microsoft at https://www.microsoft.com/typography/links/vendorlist.aspx
    [code: unknown]
WARN: Is the Grid-fitting and Scan-conversion Procedure ('gasp') table set to optimize rendering? (com.google.fonts/check/gasp)
  • INFO These are the ppm ranges declared on the gasp table:

PPM <= 65535:
flag = 0x0A
- Use grayscale rendering
- Use smoothing along multiple axes with ClearType®
[code: ranges]

  • WARN The gasp range 0xFFFF value 0x0A should be set to 0x0F. [code: unset-flags]
WARN: Ensure fonts have ScriptLangTags declared on the 'meta' table. (com.google.fonts/check/meta/script_lang_tags)
  • WARN This font file does not have a 'meta' table. [code: lacks-meta-table]
INFO: List all superfamily filepaths (com.google.fonts/check/superfamily/list)
  • INFO apache/homemadeapple [code: family-path]
INFO: Font contains all required tables? (com.google.fonts/check/required_tables)
  • INFO This font contains the following optional tables:

    • cvt

    • fpgm

    • loca

    • prep

    • gasp [code: optional-tables]

INFO: Check for font-v versioning. (com.google.fonts/check/fontv)
  • INFO Version string is: "Version 1.001"
    The version string must ideally include a git commit hash and either a "dev" or a "release" suffix such as in the example below:
    "Version 1.3; git-0d08353-release" [code: bad-format]
INFO: EPAR table present in font? (com.google.fonts/check/epar)
INFO: Show hinting filesize impact. (com.google.fonts/check/hinting_impact)
  • INFO Hinting filesize impact:
Font(file='apache/homemadeapple/HomemadeApple-Regular.ttf', context=CheckRunContext(testables=[...], config={'com.google.fonts/check/file_size': {'WARN_SIZE': 1048576, 'FAIL_SIZE': 9437184}, 'custom_order': None, 'explicit_checks': None, 'exclude_checks': None, 'full_lists': False, 'skip_network': False}))
Dehinted Size 106.8kb
Hinted Size 107.4kb
Increase 604 bytes
Change 0.6 %
[code: size-impact]
INFO: Familyname must be unique according to namecheck.fontdata.com (com.google.fonts/check/fontdata_namecheck)
  • INFO The family name "HomemadeApple" seems to be already in use.
    Please visit http://namecheck.fontdata.com for more info. [code: name-collision]
INFO: Font has old ttfautohint applied? (com.google.fonts/check/old_ttfautohint)
  • INFO Could not detect which version of ttfautohint was used in this font. It is typically specified as a comment in the font version entries of the 'name' table. Such font version strings are currently: ['Version 1.001', 'Version 1.001'] [code: version-not-detected]

[2] Family checks
🔥 FAIL: OS/2.fsSelection bit 7 (USE_TYPO_METRICS) is set in all fonts. (com.google.fonts/check/os2/use_typo_metrics)
  • 🔥 FAIL OS/2.fsSelection bit 7 (USE_TYPO_METRICS) wasNOT set in the following fonts: ['apache/homemadeapple/HomemadeApple-Regular.ttf']. [code: missing-os2-fsselection-bit7]
INFO: Check axis ordering on the STAT table. (com.google.fonts/check/STAT/axis_order)
  • INFO All of the fonts lack a STAT table.
    [code: summary]

Summary

💔 ERROR ☠ FATAL 🔥 FAIL ⚠ WARN 💤 SKIP ℹ INFO 🍞 PASS 🔎 DEBUG
0 0 11 14 67 8 157 0
0% 0% 4% 5% 26% 3% 61% 0%

Note: The following loglevels were omitted in this report:

  • SKIP
  • PASS
  • DEBUG

Copy link

FontBakery report

fontbakery version: 0.12.0a1

Check results

[34] IrishGrover-Regular.ttf
🔥 FAIL: Checking OS/2 Metrics match hhea Metrics. (com.google.fonts/check/os2_metrics_match_hhea)
  • 🔥 FAIL OS/2 sTypoAscender (780) and hhea ascent (965) must be equal. [code: ascender]
🔥 FAIL: Font contains '.notdef' as its first glyph? (com.google.fonts/check/mandatory_glyphs)
  • 🔥 FAIL The '.notdef' glyph should contain a drawing, but it is blank. [code: notdef-is-blank]
🔥 FAIL: Copyright notices match canonical pattern in METADATA.pb (com.google.fonts/check/metadata/valid_copyright)
  • 🔥 FAIL METADATA.pb: Copyright notices should match a pattern similar to:

"Copyright 2020 The Familyname Project Authors (git url)"

But instead we have got:

"copyright (c) 2010 by font diner, inc dba sideshow. all rights reserved." [code: bad-notice-format]

🔥 FAIL: METADATA.pb: Designers are listed correctly on the Google Fonts catalog? (com.google.fonts/check/metadata/designer_profiles)
  • 🔥 FAIL Designer Sideshow still does not have an avatar image. Please provide one. [code: missing-avatar]
🔥 FAIL: METADATA.pb: Check URL on copyright string is the same as in repository_url field. (com.google.fonts/check/metadata/consistent_repo_urls)
  • 🔥 FAIL Please add a family.source.repository_url entry. [code: lacks-repo-url]
🔥 FAIL: Does DESCRIPTION file contain a upstream Git repo URL? (com.google.fonts/check/description/git_url)
  • 🔥 FAIL Please host your font project on a public Git repo (such as GitHub or GitLab) and place a link in the DESCRIPTION.en_us.html file. [code: lacks-git-url]
🔥 FAIL: Check license file has good copyright string. (com.google.fonts/check/license/OFL_copyright)
  • 🔥 FAIL First line in license file is:

"apache license"

which does not match the expected format, similar to:

"Copyright 2022 The Familyname Project Authors (git url)" [code: bad-format]

🔥 FAIL: Check Google Fonts glyph coverage. (com.google.fonts/check/glyph_coverage)
  • 🔥 FAIL Missing required codepoints:

    • 0x0100 (LATIN CAPITAL LETTER A WITH MACRON)

    • 0x0101 (LATIN SMALL LETTER A WITH MACRON)

    • 0x0102 (LATIN CAPITAL LETTER A WITH BREVE)

    • 0x0103 (LATIN SMALL LETTER A WITH BREVE)

    • 0x0104 (LATIN CAPITAL LETTER A WITH OGONEK)

    • 0x0105 (LATIN SMALL LETTER A WITH OGONEK)

    • 0x0106 (LATIN CAPITAL LETTER C WITH ACUTE)

    • 0x0107 (LATIN SMALL LETTER C WITH ACUTE)

    • 0x010A (LATIN CAPITAL LETTER C WITH DOT ABOVE)

    • 0x010B (LATIN SMALL LETTER C WITH DOT ABOVE)

    • 98 more.

Use -F or --full-lists to disable shortening of long lists. [code: missing-codepoints]

🔥 FAIL: Copyright notices match canonical pattern in fonts (com.google.fonts/check/font_copyright)
  • 🔥 FAIL Name Table entry: Copyright notices should match a pattern similar to:

"Copyright 2019 The Familyname Project Authors (git url)"

But instead we have got:

"Copyright (c) 2010 by Font Diner, Inc DBA Sideshow. All rights reserved."
[code: bad-notice-format]

  • 🔥 FAIL Name Table entry: Copyright notices should match a pattern similar to:

"Copyright 2019 The Familyname Project Authors (git url)"

But instead we have got:

"Copyright (c) 2010 by Font Diner, Inc DBA Sideshow. All rights reserved."
[code: bad-notice-format]

🔥 FAIL: Font enables smart dropout control in "prep" table instructions? (com.google.fonts/check/smart_dropout)
  • 🔥 FAIL The 'prep' table does not contain TrueType instructions enabling smart dropout control. To fix, export the font with autohinting enabled, or run ttfautohint on the font, or run the gftools fix-nonhinting script. [code: lacks-smart-dropout]
🔥 FAIL: Check if the vertical metrics of a family are similar to the same family hosted on Google Fonts. (com.google.fonts/check/vertical_metrics_regressions)
  • 🔥 FAIL Irish Grover Regular: OS/2 sTypoAscender is 780 when it should be 965 [code: bad-typo-ascender]
  • 🔥 FAIL Irish Grover Regular: OS/2 sTypoDescender is -180 when it should be -246 [code: bad-typo-descender]
WARN: Check if OS/2 xAvgCharWidth is correct. (com.google.fonts/check/xavgcharwidth)
  • WARN OS/2 xAvgCharWidth is 473 but it should be 539 which corresponds to the average of the widths of all glyphs in the font. [code: xAvgCharWidth-wrong]
WARN: Does GPOS table have kerning information? This check skips monospaced fonts as defined by post.isFixedPitch value (com.google.fonts/check/gpos_kerning_info)
  • WARN GPOS table lacks kerning information. [code: lacks-kern-info]
WARN: Check that legacy accents aren't used in composite glyphs. (com.google.fonts/check/legacy_accents)
  • WARN Glyph "Scaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "scaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Yacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "yacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Zcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "zcaron" has a legacy accent component (caron). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Adieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Eacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ntilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Odieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Udieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "aacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "agrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "acircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "adieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "atilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "eacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "egrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ecircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "edieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "iacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "igrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "icircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "idieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ntilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "oacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ograve" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ocircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "odieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "otilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "uacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ugrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ucircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "udieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Agrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Atilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Otilde" has a legacy accent component (tilde). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "ydieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ydieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Acircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ecircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Aacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Edieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Egrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Iacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Icircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Idieresis" has a legacy accent component (dieresis). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Igrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Oacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ocircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ograve" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Uacute" has a legacy accent component (acute). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ucircumflex" has a legacy accent component (circumflex). It needs to be replaced by a combining mark. [code: legacy-accents-component]
  • WARN Glyph "Ugrave" has a legacy accent component (grave). It needs to be replaced by a combining mark. [code: legacy-accents-component]
WARN: Check if each glyph has the recommended amount of contours. (com.google.fonts/check/contour_count)
  • WARN This check inspects the glyph outlines and detects the total number of contours in each of them. The expected values are infered from the typical ammounts of contours observed in a large collection of reference font families. The divergences listed below may simply indicate a significantly different design on some of your glyphs. On the other hand, some of these may flag actual bugs in the font such as glyphs mapped to an incorrect codepoint. Please consider reviewing the design and codepoint assignment of these to make sure they are correct.

The following glyphs do not have the recommended number of contours:

- Glyph name: Q	Contours detected: 3	Expected: 2

- Glyph name: sfthyphen	Contours detected: 1	Expected: 0

- Glyph name: aring	Contours detected: 3	Expected: 4

- Glyph name: Q	Contours detected: 3	Expected: 2

- Glyph name: aring	Contours detected: 3	Expected: 4

- Glyph name: fi	Contours detected: 1	Expected: 3

- Glyph name: fl	Contours detected: 1	Expected: 2

[code: contour-count]

WARN: Does the font contain a soft hyphen? (com.google.fonts/check/soft_hyphen)
  • WARN This font has a 'Soft Hyphen' character. [code: softhyphen]
WARN: Check math signs have the same width. (com.google.fonts/check/math_signs_width)
  • WARN The most common width is 393 among a set of 2 math glyphs.
    The following math glyphs have a different width, though:

Width = 530:
plus

Width = 525:
equal

Width = 666:
logicalnot

Width = 524:
plusminus

Width = 504:
multiply

Width = 555:
divide

Width = 469:
minus
[code: width-outliers]

WARN: Checking Vertical Metric Linegaps. (com.google.fonts/check/linegaps)
  • WARN hhea lineGap is not equal to 0. [code: hhea]
WARN: Do any segments have colinear vectors? (com.google.fonts/check/outline_colinear_vectors)
  • WARN The following glyphs have colinear vectors:

    • E (U+0045): L<<151.0,680.0>--<204.0,680.0>> -> L<<204.0,680.0>--<502.0,680.0>>

    • Eacute (U+00C9): L<<151.0,680.0>--<204.0,680.0>> -> L<<204.0,680.0>--<502.0,680.0>>

    • Ecircumflex (U+00CA): L<<151.0,680.0>--<204.0,680.0>> -> L<<204.0,680.0>--<502.0,680.0>>

    • Edieresis (U+00CB): L<<151.0,680.0>--<204.0,680.0>> -> L<<204.0,680.0>--<502.0,680.0>>

    • Egrave (U+00C8): L<<151.0,680.0>--<204.0,680.0>> -> L<<204.0,680.0>--<502.0,680.0>>

    • Euro (U+20AC): L<<605.0,580.0>--<625.0,580.0>> -> L<<625.0,580.0>--<647.0,580.0>>

    • OE (U+0152): L<<1027.0,215.0>--<1027.0,186.0>> -> L<<1027.0,186.0>--<1027.0,156.0>>

    • OE (U+0152): L<<634.0,697.0>--<686.0,697.0>> -> L<<686.0,697.0>--<984.0,697.0>>

    • V (U+0056): L<<386.0,692.0>--<417.0,692.0>> -> L<<417.0,692.0>--<577.0,692.0>>

    • W (U+0057): L<<704.0,716.0>--<744.0,716.0>> -> L<<744.0,716.0>--<780.0,716.0>>

    • 25 more.

Use -F or --full-lists to disable shortening of long lists. [code: found-colinear-vectors]

WARN: Do outlines contain any jaggy segments? (com.google.fonts/check/outline_jaggy_segments)
  • WARN The following glyphs have jaggy segments:

    • K (U+004B): B<<692.0,704.5>-<729.0,705.0>-<785.0,706.0>>/B<<785.0,706.0>-<748.0,697.0>-<715.0,682.0>> = 12.648276943527987

    • L (U+004C): B<<229.5,721.0>-<262.0,724.0>-<310.0,731.0>>/B<<310.0,731.0>-<296.0,727.0>-<284.5,708.5>> = 7.648250931085921

    • Lslash (U+0141): B<<229.5,721.0>-<262.0,724.0>-<310.0,731.0>>/B<<310.0,731.0>-<296.0,727.0>-<284.5,708.5>> = 7.648250931085921

    • OE (U+0152): L<<537.0,26.0>--<540.0,141.0>>/B<<540.0,141.0>-<532.0,112.0>-<518.5,89.5>> = 13.927827727472122

    • breve (U+02D8): L<<428.0,778.0>--<520.0,776.0>>/B<<520.0,776.0>-<518.0,776.0>-<506.5,758.0>> = 1.2453642667683205

    • d (U+0064): B<<392.5,766.5>-<382.0,775.0>-<368.0,780.0>>/B<<368.0,780.0>-<394.0,775.0>-<418.0,773.0>> = 8.768297003394608

    • e (U+0065): B<<510.5,194.5>-<525.0,192.0>-<545.0,188.0>>/B<<545.0,188.0>-<530.0,190.0>-<514.5,185.0>> = 3.7152891054287163

    • eacute (U+00E9): B<<510.5,194.5>-<525.0,192.0>-<545.0,188.0>>/B<<545.0,188.0>-<530.0,190.0>-<514.5,185.0>> = 3.7152891054287163

    • ecircumflex (U+00EA): B<<510.5,194.5>-<525.0,192.0>-<545.0,188.0>>/B<<545.0,188.0>-<530.0,190.0>-<514.5,185.0>> = 3.7152891054287163

    • edieresis (U+00EB): B<<510.5,194.5>-<525.0,192.0>-<545.0,188.0>>/B<<545.0,188.0>-<530.0,190.0>-<514.5,185.0>> = 3.7152891054287163

    • 17 more.

Use -F or --full-lists to disable shortening of long lists. [code: found-jaggy-segments]

WARN: Do outlines contain any semi-vertical or semi-horizontal lines? (com.google.fonts/check/outline_semi_vertical)
  • WARN The following glyphs have semi-vertical/semi-horizontal lines:

    • cent (U+00A2): L<<171.0,238.0>--<172.0,417.0>>

    • dollar (U+0024): L<<299.0,571.0>--<298.0,430.0>>

    • dollar (U+0024): L<<342.0,8.0>--<227.0,7.0>>

    • t (U+0074): L<<64.0,486.0>--<-81.0,487.0>> [code: found-semi-vertical]

WARN: Check for codepoints not covered by METADATA subsets. (com.google.fonts/check/metadata/unreachable_subsetting)
  • WARN The following codepoints supported by the font are not covered by
    any subsets defined in the font's metadata file, and will never
    be served. You can solve this by either manually adding additional
    subset declarations to METADATA.pb, or by editing the glyphset
    definitions.

  • U+0020 SPACE: try adding one of: cherokee, toto, latin-ext, meetei-mayek, newa, balinese, music, ol-chiki, carian, kannada, tifinagh, korean, khudawadi, bassa-vah, zanabazar-square, old-turkic, tagbanwa, tagalog, lisu, elymaic, ahom, elbasan, lydian, math, nushu, imperial-aramaic, caucasian-albanian, buhid, kharoshthi, gothic, nyiakeng-puachue-hmong, siddham, linear-b, symbols, khitan-small-script, nko, vai, dives-akuru, miao, old-permic, old-uyghur, meroitic-cursive, vithkuqi, signwriting, khmer, masaram-gondi, tangsa, phoenician, modi, braille, coptic, canadian-aboriginal, old-south-arabian, rejang, inscriptional-parthian, sogdian, manichaean, tangut, mandaic, chinese-traditional, indic-siyaq-numbers, hanunoo, lycian, glagolitic, lepcha, old-hungarian, old-italic, chinese-hongkong, sora-sompeng, tai-tham, avestan, marchen, arabic, chakma, syriac, cyrillic, gujarati, ethiopic, georgian, soyombo, cham, yi, dogra, devanagari, mahajani, cypro-minoan, kayah-li, yezidi, bamum, ugaritic, linear-a, old-north-arabian, thaana, chinese-simplified, takri, adlam, oriya, tamil-supplement, warang-citi, osmanya, palmyrene, bengali, telugu, old-persian, sinhala, gurmukhi, hebrew, meroitic, psalter-pahlavi, znamenny, tai-viet, makasar, deseret, pau-cin-hau, duployan, ogham, medefaidrin, hatran, pahawh-hmong, batak, runic, new-tai-lue, chorasmian, mro, ottoman-siyaq-numbers, myanmar, phags-pa, shavian, tibetan, nandinagari, vietnamese, japanese, limbu, mayan-numerals, sundanese, mende-kikakui, mongolian, cuneiform, gunjala-gondi, malayalam, javanese, lao, brahmi, grantha, greek-ext, osage, sharada, cyrillic-ext, thai, cypriot, khojki, samaritan, anatolian-hieroglyphs, tamil, kaithi, kawi, old-sogdian, inscriptional-pahlavi, buginese, hanifi-rohingya, greek, saurashtra, syloti-nagri, wancho, armenian, nag-mundari, tai-le, bhaiksuki, nabataean, egyptian-hieroglyphs, tirhuta, meroitic-hieroglyphs, multani

  • U+00A0 NO-BREAK SPACE: try adding one of: cherokee, toto, latin-ext, meetei-mayek, newa, balinese, music, ol-chiki, carian, kannada, tifinagh, korean, khudawadi, bassa-vah, zanabazar-square, old-turkic, tagbanwa, tagalog, lisu, elymaic, ahom, elbasan, lydian, math, nushu, imperial-aramaic, caucasian-albanian, buhid, kharoshthi, gothic, nyiakeng-puachue-hmong, siddham, linear-b, symbols, khitan-small-script, nko, vai, dives-akuru, miao, old-permic, old-uyghur, meroitic-cursive, vithkuqi, signwriting, khmer, masaram-gondi, tangsa, phoenician, modi, braille, coptic, canadian-aboriginal, old-south-arabian, rejang, inscriptional-parthian, sogdian, manichaean, tangut, mandaic, chinese-traditional, indic-siyaq-numbers, hanunoo, lycian, glagolitic, lepcha, old-hungarian, old-italic, chinese-hongkong, sora-sompeng, tai-tham, avestan, marchen, arabic, chakma, syriac, cyrillic, gujarati, ethiopic, georgian, soyombo, cham, yi, dogra, devanagari, mahajani, cypro-minoan, kayah-li, yezidi, bamum, ugaritic, linear-a, old-north-arabian, thaana, chinese-simplified, takri, adlam, oriya, tamil-supplement, warang-citi, osmanya, palmyrene, bengali, telugu, old-persian, sinhala, gurmukhi, hebrew, meroitic, psalter-pahlavi, znamenny, tai-viet, makasar, deseret, pau-cin-hau, duployan, ogham, medefaidrin, hatran, pahawh-hmong, batak, runic, new-tai-lue, chorasmian, mro, ottoman-siyaq-numbers, myanmar, phags-pa, shavian, tibetan, nandinagari, vietnamese, japanese, limbu, mayan-numerals, sundanese, mende-kikakui, mongolian, cuneiform, gunjala-gondi, malayalam, javanese, lao, brahmi, grantha, greek-ext, osage, sharada, cyrillic-ext, thai, cypriot, khojki, samaritan, anatolian-hieroglyphs, tamil, kaithi, kawi, old-sogdian, inscriptional-pahlavi, buginese, hanifi-rohingya, greek, saurashtra, syloti-nagri, wancho, armenian, nag-mundari, tai-le, bhaiksuki, nabataean, egyptian-hieroglyphs, tirhuta, meroitic-hieroglyphs, multani

  • U+0141 LATIN CAPITAL LETTER L WITH STROKE: try adding latin-ext

  • U+0142 LATIN SMALL LETTER L WITH STROKE: try adding latin-ext

  • U+0160 LATIN CAPITAL LETTER S WITH CARON: try adding latin-ext

  • U+0161 LATIN SMALL LETTER S WITH CARON: try adding latin-ext

  • U+0178 LATIN CAPITAL LETTER Y WITH DIAERESIS: try adding latin-ext

  • U+017D LATIN CAPITAL LETTER Z WITH CARON: try adding latin-ext

  • U+017E LATIN SMALL LETTER Z WITH CARON: try adding latin-ext

  • U+02C7 CARON: try adding one of: tifinagh, canadian-aboriginal, yi
    7 more.

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: latin, menu [code: unreachable-subsetting]

WARN: License URL matches License text on name table? (com.google.fonts/check/name/license_url)
  • WARN Please consider using HTTPS URLs at name table entry [plat=1, enc=0, name=14] [code: http-in-license-info]
  • WARN Please consider using HTTPS URLs at name table entry [plat=3, enc=1, name=14] [code: http-in-license-info]
WARN: Checking OS/2 achVendID. (com.google.fonts/check/vendor_id)
  • WARN OS/2 VendorID value 'DINR' is not yet recognized. If you registered it recently, then it's safe to ignore this warning message. Otherwise, you should set it to your own unique 4 character code, and register it with Microsoft at https://www.microsoft.com/typography/links/vendorlist.aspx
    [code: unknown]
WARN: Is the Grid-fitting and Scan-conversion Procedure ('gasp') table set to optimize rendering? (com.google.fonts/check/gasp)
  • INFO These are the ppm ranges declared on the gasp table:

PPM <= 65535:
flag = 0x0A
- Use grayscale rendering
- Use smoothing along multiple axes with ClearType®
[code: ranges]

  • WARN The gasp range 0xFFFF value 0x0A should be set to 0x0F. [code: unset-flags]
WARN: Ensure fonts have ScriptLangTags declared on the 'meta' table. (com.google.fonts/check/meta/script_lang_tags)
  • WARN This font file does not have a 'meta' table. [code: lacks-meta-table]
INFO: Is there a usable "kern" table declared in the font? (com.google.fonts/check/kern_table)
  • INFO Only a few programs may require the kerning info that this font provides on its "kern" table. [code: kern-found]
INFO: List all superfamily filepaths (com.google.fonts/check/superfamily/list)
  • INFO apache/irishgrover [code: family-path]
INFO: Font contains all required tables? (com.google.fonts/check/required_tables)
  • INFO This font contains the following optional tables:

    • cvt

    • fpgm

    • loca

    • prep

    • gasp

    • kern [code: optional-tables]

INFO: Check for font-v versioning. (com.google.fonts/check/fontv)
  • INFO Version string is: "Version 1.001"
    The version string must ideally include a git commit hash and either a "dev" or a "release" suffix such as in the example below:
    "Version 1.3; git-0d08353-release" [code: bad-format]
INFO: EPAR table present in font? (com.google.fonts/check/epar)
INFO: Show hinting filesize impact. (com.google.fonts/check/hinting_impact)
  • INFO Hinting filesize impact:
Font(file='apache/irishgrover/IrishGrover-Regular.ttf', context=CheckRunContext(testables=[...], config={'com.google.fonts/check/file_size': {'WARN_SIZE': 1048576, 'FAIL_SIZE': 9437184}, 'custom_order': None, 'explicit_checks': None, 'exclude_checks': None, 'full_lists': False, 'skip_network': False}))
Dehinted Size 50.8kb
Hinted Size 51.4kb
Increase 672 bytes
Change 1.3 %
[code: size-impact]
INFO: Familyname must be unique according to namecheck.fontdata.com (com.google.fonts/check/fontdata_namecheck)
  • INFO The family name "IrishGrover" seems to be already in use.
    Please visit http://namecheck.fontdata.com for more info. [code: name-collision]
INFO: Font has old ttfautohint applied? (com.google.fonts/check/old_ttfautohint)
  • INFO Could not detect which version of ttfautohint was used in this font. It is typically specified as a comment in the font version entries of the 'name' table. Such font version strings are currently: ['Version 1.001', 'Version 1.001'] [code: version-not-detected]

[2] Family checks
🔥 FAIL: OS/2.fsSelection bit 7 (USE_TYPO_METRICS) is set in all fonts. (com.google.fonts/check/os2/use_typo_metrics)
  • 🔥 FAIL OS/2.fsSelection bit 7 (USE_TYPO_METRICS) wasNOT set in the following fonts: ['apache/irishgrover/IrishGrover-Regular.ttf']. [code: missing-os2-fsselection-bit7]
INFO: Check axis ordering on the STAT table. (com.google.fonts/check/STAT/axis_order)
  • INFO All of the fonts lack a STAT table.
    [code: summary]

Summary

💔 ERROR ☠ FATAL 🔥 FAIL ⚠ WARN 💤 SKIP ℹ INFO 🍞 PASS 🔎 DEBUG
0 0 12 15 67 9 154 0
0% 0% 5% 6% 26% 4% 60% 0%

Note: The following loglevels were omitted in this report:

  • SKIP
  • PASS
  • DEBUG

Copy link

FontBakery report

fontbakery version: 0.12.0a1

Checks with FATAL results

These must be addressed first.

[1] jsMath-cmbx10.ttf
FATAL: The font has tags in the GF Tags spreadsheet (com.google.fonts/check/metadata/has_tags)
  • FATAL Family does not appear in tag spreadsheet. [code: no-tags]

Experimental checks

These won't break the CI job for now, but will become effective after some time if nobody raises any concern.

[1] jsMath-cmbx10.ttf
🔥 FAIL: Ensure the font supports case swapping for all its glyphs. (com.google.fonts/check/case_mapping)
  • 🔥 FAIL The following glyphs lack their case-swapping counterparts:
Glyph present in the font Missing case-swapping counterpart
U+00C0: LATIN CAPITAL LETTER A WITH GRAVE U+00E0: LATIN SMALL LETTER A WITH GRAVE
U+00C1: LATIN CAPITAL LETTER A WITH ACUTE U+00E1: LATIN SMALL LETTER A WITH ACUTE
U+00C2: LATIN CAPITAL LETTER A WITH CIRCUMFLEX U+00E2: LATIN SMALL LETTER A WITH CIRCUMFLEX
U+00C3: LATIN CAPITAL LETTER A WITH TILDE U+00E3: LATIN SMALL LETTER A WITH TILDE
U+00C4: LATIN CAPITAL LETTER A WITH DIAERESIS U+00E4: LATIN SMALL LETTER A WITH DIAERESIS
U+00C5: LATIN CAPITAL LETTER A WITH RING ABOVE U+00E5: LATIN SMALL LETTER A WITH RING ABOVE
U+00C6: LATIN CAPITAL LETTER AE U+00E6: LATIN SMALL LETTER AE
U+00C7: LATIN CAPITAL LETTER C WITH CEDILLA U+00E7: LATIN SMALL LETTER C WITH CEDILLA
U+00C8: LATIN CAPITAL LETTER E WITH GRAVE U+00E8: LATIN SMALL LETTER E WITH GRAVE
U+00C9: LATIN CAPITAL LETTER E WITH ACUTE U+00E9: LATIN SMALL LETTER E WITH ACUTE
U+00CA: LATIN CAPITAL LETTER E WITH CIRCUMFLEX U+00EA: LATIN SMALL LETTER E WITH CIRCUMFLEX
U+00CB: LATIN CAPITAL LETTER E WITH DIAERESIS U+00EB: LATIN SMALL LETTER E WITH DIAERESIS
U+00CC: LATIN CAPITAL LETTER I WITH GRAVE U+00EC: LATIN SMALL LETTER I WITH GRAVE
U+00CD: LATIN CAPITAL LETTER I WITH ACUTE U+00ED: LATIN SMALL LETTER I WITH ACUTE
U+00CE: LATIN CAPITAL LETTER I WITH CIRCUMFLEX U+00EE: LATIN SMALL LETTER I WITH CIRCUMFLEX
U+00D1: LATIN CAPITAL LETTER N WITH TILDE U+00F1: LATIN SMALL LETTER N WITH TILDE
U+00D2: LATIN CAPITAL LETTER O WITH GRAVE U+00F2: LATIN SMALL LETTER O WITH GRAVE
U+00D3: LATIN CAPITAL LETTER O WITH ACUTE U+00F3: LATIN SMALL LETTER O WITH ACUTE
U+00D4: LATIN CAPITAL LETTER O WITH CIRCUMFLEX U+00F4: LATIN SMALL LETTER O WITH CIRCUMFLEX
U+00D5: LATIN CAPITAL LETTER O WITH TILDE U+00F5: LATIN SMALL LETTER O WITH TILDE
U+00D6: LATIN CAPITAL LETTER O WITH DIAERESIS U+00F6: LATIN SMALL LETTER O WITH DIAERESIS
U+00D8: LATIN CAPITAL LETTER O WITH STROKE U+00F8: LATIN SMALL LETTER O WITH STROKE
U+00D9: LATIN CAPITAL LETTER U WITH GRAVE U+00F9: LATIN SMALL LETTER U WITH GRAVE
U+00DA: LATIN CAPITAL LETTER U WITH ACUTE U+00FA: LATIN SMALL LETTER U WITH ACUTE
U+00DB: LATIN CAPITAL LETTER U WITH CIRCUMFLEX U+00FB: LATIN SMALL LETTER U WITH CIRCUMFLEX
U+00DC: LATIN CAPITAL LETTER U WITH DIAERESIS U+00FC: LATIN SMALL LETTER U WITH DIAERESIS

[code: missing-case-counterparts]


All other checks

[49] jsMath-cmbx10.ttf
💔 ERROR: Checking head.macStyle value. (com.google.fonts/check/mac_style)
  • 💔 ERROR Failed with TypeError: argument of type 'NoneType' is not iterable
  File "/opt/hostedtoolcache/Python/3.10.13/x64/lib/python3.10/site-packages/fontbakery/checkrunner.py", line 212, in _run_check
    subresults = list(subresults)
  File "/opt/hostedtoolcache/Python/3.10.13/x64/lib/python3.10/site-packages/fontbakery/checks/opentype/head.py", line 195, in com_google_fonts_check_mac_style
    expected = "Italic" in font.style

``` [code: failed-check]
</div></details><details><summary>🔥 <b>FAIL:</b> Checking correctness of monospaced metadata. (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/OpenType Specification Checks.html#com.google.fonts/check/monospace">com.google.fonts/check/monospace</a>)</summary><div>


* 🔥 **FAIL** Value of hhea.advanceWidthMax should be set to 65534 but got 1189 instead. [code: bad-advanceWidthMax]
</div></details><details><summary>🔥 <b>FAIL:</b> MaxAdvanceWidth is consistent with values in the Hmtx and Hhea tables? (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/OpenType Specification Checks.html#com.google.fonts/check/maxadvancewidth">com.google.fonts/check/maxadvancewidth</a>)</summary><div>


* 🔥 **FAIL** AdvanceWidthMax mismatch: expected 65534 (from hmtx); got 1189 (from hhea) [code: mismatch]
</div></details><details><summary>🔥 <b>FAIL:</b> Name table records must not have trailing spaces. (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/universal.html#com.google.fonts/check/name/trailing_spaces">com.google.fonts/check/name/trailing_spaces</a>)</summary><div>


* 🔥 **FAIL** Name table record with key = (1, 0, 0, 0) has trailing spaces that must be removed: 'Generated [...]/mftrace/ ' [code: trailing-space]
* 🔥 **FAIL** Name table record with key = (1, 0, 0, 5) has trailing spaces that must be removed: 'Version 001.001 ' [code: trailing-space]
* 🔥 **FAIL** Name table record with key = (3, 1, 1033, 0) has trailing spaces that must be removed: 'Generated [...]/mftrace/ ' [code: trailing-space]
* 🔥 **FAIL** Name table record with key = (3, 1, 1033, 5) has trailing spaces that must be removed: 'Version 001.001 ' [code: trailing-space]
</div></details><details><summary>🔥 <b>FAIL:</b> Checking OS/2 usWinAscent & usWinDescent. (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/universal.html#com.google.fonts/check/family/win_ascent_and_descent">com.google.fonts/check/family/win_ascent_and_descent</a>)</summary><div>


* 🔥 **FAIL** OS/2.usWinAscent value should be equal or greater than 757, but got 752 instead [code: ascent]
* 🔥 **FAIL** OS/2.usWinDescent value should be equal or greater than 259, but got 252 instead [code: descent]
</div></details><details><summary>🔥 <b>FAIL:</b> Checking OS/2 Metrics match hhea Metrics. (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/universal.html#com.google.fonts/check/os2_metrics_match_hhea">com.google.fonts/check/os2_metrics_match_hhea</a>)</summary><div>


* 🔥 **FAIL** OS/2 sTypoAscender (800) and hhea ascent (752) must be equal. [code: ascender]
</div></details><details><summary>🔥 <b>FAIL:</b> Checking with fontTools.ttx (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/universal.html#com.google.fonts/check/ttx_roundtrip">com.google.fonts/check/ttx_roundtrip</a>)</summary><div>


* 🔥 **FAIL** Glyph 'space' has a huge advance width (65534); is it intentional or an (invalid) negative value?
* ℹ **INFO** While converting TTF into an XML file, ttx emited the messages listed below.
</div></details><details><summary>🔥 <b>FAIL:</b> Font contains '.notdef' as its first glyph? (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/universal.html#com.google.fonts/check/mandatory_glyphs">com.google.fonts/check/mandatory_glyphs</a>)</summary><div>


* 🔥 **FAIL** The '.notdef' glyph should contain a drawing, but it is blank. [code: notdef-is-blank]
</div></details><details><summary>🔥 <b>FAIL:</b> Font contains glyphs for whitespace characters? (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/universal.html#com.google.fonts/check/whitespace_glyphs">com.google.fonts/check/whitespace_glyphs</a>)</summary><div>


* 🔥 **FAIL** Whitespace glyph missing for codepoint 0x00A0. [code: missing-whitespace-glyph-0x00A0]
</div></details><details><summary>🔥 <b>FAIL:</b> METADATA.pb subsets should be alphabetically ordered. (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Metadata Checks.html#com.google.fonts/check/metadata/subsets_order">com.google.fonts/check/metadata/subsets_order</a>)</summary><div>


* 🔥 **FAIL** METADATA.pb subsets are not sorted in alphabetical order: Got ['menu', 'latin'] and expected ['latin', 'menu'] [code: not-sorted]
</div></details><details><summary>🔥 <b>FAIL:</b> Checks METADATA.pb font.name field matches family name declared on the name table. (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Metadata Checks.html#com.google.fonts/check/metadata/nameid/family_name">com.google.fonts/check/metadata/nameid/family_name</a>)</summary><div>


* 🔥 **FAIL** Unmatched family name in font: TTF has "jsMath-cmbx10" while METADATA.pb has "jsMath cmbx10" [code: mismatch]
</div></details><details><summary>🔥 <b>FAIL:</b> METADATA.pb font.name and font.full_name fields match the values declared on the name table? (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Metadata Checks.html#com.google.fonts/check/metadata/nameid/family_and_full_names">com.google.fonts/check/metadata/nameid/family_and_full_names</a>)</summary><div>


* 🔥 **FAIL** METADATA.pb Family name "jsMath cmbx10" does not match name table entry "jsMath-cmbx10"! [code: familyname-mismatch]
</div></details><details><summary>🔥 <b>FAIL:</b> Copyright field for this font on METADATA.pb matches all copyright notice entries on the name table ? (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Metadata Checks.html#com.google.fonts/check/metadata/nameid/copyright">com.google.fonts/check/metadata/nameid/copyright</a>)</summary><div>


* 🔥 **FAIL** Copyright field for this font on METADATA.pb ("Generated from MetaFont bitmap by mftrace 1.0.33, http://www.cs.uu.nl/~hanwen/mftrace/") differs from a copyright notice entry on the name table: "Generated from MetaFont bitmap by mftrace 1.0.33, http://www.cs.uu.nl/~hanwen/mftrace/ " [code: mismatch]
* 🔥 **FAIL** Copyright field for this font on METADATA.pb ("Generated from MetaFont bitmap by mftrace 1.0.33, http://www.cs.uu.nl/~hanwen/mftrace/") differs from a copyright notice entry on the name table: "Generated from MetaFont bitmap by mftrace 1.0.33, http://www.cs.uu.nl/~hanwen/mftrace/ " [code: mismatch]
</div></details><details><summary>🔥 <b>FAIL:</b> METADATA.pb weight matches postScriptName for static fonts. (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Metadata Checks.html#com.google.fonts/check/metadata/match_weight_postscript">com.google.fonts/check/metadata/match_weight_postscript</a>)</summary><div>


* 🔥 **FAIL** METADATA.pb: Mismatch between postScriptName ("jsMath-cmbx10") and weight value (400). The name must be ended with "Regular" or "Italic".
</div></details><details><summary>🔥 <b>FAIL:</b> METADATA.pb font.name field matches font (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Metadata Checks.html#com.google.fonts/check/metadata/valid_name_values">com.google.fonts/check/metadata/valid_name_values</a>)</summary><div>


* 🔥 **FAIL** METADATA.pb font.name field is jsMath cmbx10 but font has jsMath-cmbx10 [code: mismatch]
</div></details><details><summary>🔥 <b>FAIL:</b> METADATA.pb font.post_script_name field contains font name in right format? (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Metadata Checks.html#com.google.fonts/check/metadata/valid_post_script_name_values">com.google.fonts/check/metadata/valid_post_script_name_values</a>)</summary><div>


* 🔥 **FAIL** METADATA.pb postScriptName ("jsMath-cmbx10") does not match correct font name format ("jsMath-cmbx10, jsMath-cmbx10"). [code: mismatch]
</div></details><details><summary>🔥 <b>FAIL:</b> Copyright notices match canonical pattern in METADATA.pb (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Metadata Checks.html#com.google.fonts/check/metadata/valid_copyright">com.google.fonts/check/metadata/valid_copyright</a>)</summary><div>


* 🔥 **FAIL** METADATA.pb: Copyright notices should match a pattern similar to:

 "Copyright 2020 The Familyname Project Authors (git url)"

But instead we have got:

"generated from metafont bitmap by mftrace 1.0.33, http://www.cs.uu.nl/~hanwen/mftrace/" [code: bad-notice-format]
</div></details><details><summary>🔥 <b>FAIL:</b> Check METADATA.pb font weights are correct. (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Metadata Checks.html#com.google.fonts/check/metadata/os2_weightclass">com.google.fonts/check/metadata/os2_weightclass</a>)</summary><div>


* 🔥 **FAIL** OS/2 table has usWeightClass=700, meaning "Bold" on the Google Fonts API.

On METADATA.pb it should be the same, but instead got 400.
 [code: mismatch]
</div></details><details><summary>🔥 <b>FAIL:</b> METADATA.pb: Check URL on copyright string is the same as in repository_url field. (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Metadata Checks.html#com.google.fonts/check/metadata/consistent_repo_urls">com.google.fonts/check/metadata/consistent_repo_urls</a>)</summary><div>


* 🔥 **FAIL** Please add a family.source.repository_url entry. [code: lacks-repo-url]
</div></details><details><summary>🔥 <b>FAIL:</b> DESCRIPTION.en_us.html must have more than 200 bytes. (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Description Checks.html#com.google.fonts/check/description/min_length">com.google.fonts/check/description/min_length</a>)</summary><div>


* 🔥 **FAIL** DESCRIPTION.en_us.html must have size larger than 200 bytes. [code: too-short]
</div></details><details><summary>🔥 <b>FAIL:</b> Does DESCRIPTION file contain a upstream Git repo URL? (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Description Checks.html#com.google.fonts/check/description/git_url">com.google.fonts/check/description/git_url</a>)</summary><div>


* 🔥 **FAIL** Please host your font project on a public Git repo (such as GitHub or GitLab) and place a link in the DESCRIPTION.en_us.html file. [code: lacks-git-url]
</div></details><details><summary>🔥 <b>FAIL:</b> Check font has a license. (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Family Checks.html#com.google.fonts/check/family/has_license">com.google.fonts/check/family/has_license</a>)</summary><div>


* 🔥 **FAIL** No license file was found. Please add an OFL.txt or a LICENSE.txt file. If you are running fontbakery on a Google Fonts upstream repo, which is fine, just make sure there is a temporary license file in the same folder. [code: no-license]
</div></details><details><summary>🔥 <b>FAIL:</b> Check family name for GF Guide compliance. (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Name table checks.html#com.google.fonts/check/name/family_name_compliance">com.google.fonts/check/name/family_name_compliance</a>)</summary><div>


* 🔥 **FAIL** "jsMath-cmbx10" contains the following characters which are not allowed: "-". [code: forbidden-characters]
* 🔥 **FAIL** "jsMath-cmbx10" doesn't start with an uppercase letter. [code: starts-with-not-uppercase]
</div></details><details><summary>🔥 <b>FAIL:</b> Check Google Fonts glyph coverage. (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Font File Checks.html#com.google.fonts/check/glyph_coverage">com.google.fonts/check/glyph_coverage</a>)</summary><div>


* 🔥 **FAIL** Missing required codepoints:

	- 0x00A0 (NO-BREAK SPACE)


	- 0x00A1 (INVERTED EXCLAMATION MARK)


	- 0x00A2 (CENT SIGN)


	- 0x00A3 (POUND SIGN)


	- 0x00A5 (YEN SIGN)


	- 0x00A7 (SECTION SIGN)


	- 0x00A8 (DIAERESIS)


	- 0x00A9 (COPYRIGHT SIGN)


	- 0x00AA (FEMININE ORDINAL INDICATOR)


	- 0x00AB (LEFT-POINTING DOUBLE ANGLE QUOTATION MARK)


	- 181 more.

Use -F or --full-lists to disable shortening of long lists. [code: missing-codepoints]
</div></details><details><summary>🔥 <b>FAIL:</b> Checking file is named canonically. (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Font File Checks.html#com.google.fonts/check/canonical_filename">com.google.fonts/check/canonical_filename</a>)</summary><div>


* 🔥 **FAIL** Expected "jsMath-cmbx10-cmbx10.ttf. Got jsMath-cmbx10.ttf. [code: bad-filename]
</div></details><details><summary>🔥 <b>FAIL:</b> Check the OS/2 usWeightClass is appropriate for the font's best SubFamily name. (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Font File Checks.html#com.google.fonts/check/usweightclass">com.google.fonts/check/usweightclass</a>)</summary><div>


* 🔥 **FAIL** Best SubFamily name is 'cmbx10'. Expected OS/2 usWeightClass is 400, got 700. [code: bad-value]
</div></details><details><summary>🔥 <b>FAIL:</b> Copyright notices match canonical pattern in fonts (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Font File Checks.html#com.google.fonts/check/font_copyright">com.google.fonts/check/font_copyright</a>)</summary><div>


* 🔥 **FAIL** Name Table entry: Copyright notices should match a pattern similar to:

"Copyright 2019 The Familyname Project Authors (git url)"

But instead we have got:

"Generated from MetaFont bitmap by mftrace 1.0.33, http://www.cs.uu.nl/~hanwen/mftrace/ "
 [code: bad-notice-format]
* 🔥 **FAIL** Name Table entry: Copyright notices should match a pattern similar to:

"Copyright 2019 The Familyname Project Authors (git url)"

But instead we have got:

"Generated from MetaFont bitmap by mftrace 1.0.33, http://www.cs.uu.nl/~hanwen/mftrace/ "
 [code: bad-notice-format]
</div></details><details><summary>🔥 <b>FAIL:</b> Check font names are correct (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Font File Checks.html#com.google.fonts/check/font_names">com.google.fonts/check/font_names</a>)</summary><div>


* 🔥 **FAIL** Font names are incorrect:

| nameID | current | expected |
| :--- | :--- | :--- |
| Family Name | **jsMath-cmbx10** | **jsMath-cmbx10 cmbx10** |
| Subfamily Name | **cmbx10** | **Regular** |
| Full Name | **jsMath-cmbx10** | **jsMath-cmbx10 cmbx10 Regular** |
| Postscript Name | **jsMath-cmbx10** | **jsMath-cmbx10cmbx10-Regular** | [code: bad-names]
</div></details><details><summary>🔥 <b>FAIL:</b> Font enables smart dropout control in "prep" table instructions? (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Font File Checks.html#com.google.fonts/check/smart_dropout">com.google.fonts/check/smart_dropout</a>)</summary><div>


* 🔥 **FAIL** The 'prep' table does not contain TrueType instructions enabling smart dropout control. To fix, export the font with autohinting enabled, or run ttfautohint on the font, or run the `gftools fix-nonhinting` script. [code: lacks-smart-dropout]
</div></details><details><summary>🔥 <b>FAIL:</b> Check font follows the Google Fonts vertical metric schema (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Font File Checks.html#com.google.fonts/check/vertical_metrics">com.google.fonts/check/vertical_metrics</a>)</summary><div>


* 🔥 **FAIL** hhea.lineGap is "90" it should be 0 [code: bad-hhea.lineGap]
* 🔥 **FAIL** The sum of hhea.ascender + abs(hhea.descender) + hhea.lineGap is 1094 when it should be at least 1200 [code: bad-hhea-range]
</div></details><details><summary>⚠ <b>WARN:</b> Does GPOS table have kerning information? This check skips monospaced fonts as defined by post.isFixedPitch value (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/OpenType Specification Checks.html#com.google.fonts/check/gpos_kerning_info">com.google.fonts/check/gpos_kerning_info</a>)</summary><div>


* ⚠ **WARN** GPOS table lacks kerning information. [code: lacks-kern-info]
</div></details><details><summary>⚠ <b>WARN:</b> Check font contains no unreachable glyphs (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/universal.html#com.google.fonts/check/unreachable_glyphs">com.google.fonts/check/unreachable_glyphs</a>)</summary><div>


* ⚠ **WARN** The following glyphs could not be reached by codepoint or substitution rules:

	- NULL

	- nonmarkingreturn
 [code: unreachable-glyphs]
</div></details><details><summary>⚠ <b>WARN:</b> Check if each glyph has the recommended amount of contours. (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/universal.html#com.google.fonts/check/contour_count">com.google.fonts/check/contour_count</a>)</summary><div>


* ⚠ **WARN** This check inspects the glyph outlines and detects the total number of contours in each of them. The expected values are infered from the typical ammounts of contours observed in a large collection of reference font families. The divergences listed below may simply indicate a significantly different design on some of your glyphs. On the other hand, some of these may flag actual bugs in the font such as glyphs mapped to an incorrect codepoint. Please consider reviewing the design and codepoint assignment of these to make sure they are correct.

The following glyphs do not have the recommended number of contours:

	- Glyph name: less	Contours detected: 2	Expected: 1

	- Glyph name: greater	Contours detected: 2	Expected: 1

	- Glyph name: Q	Contours detected: 3	Expected: 2

	- Glyph name: backslash	Contours detected: 2	Expected: 1

	- Glyph name: g	Contours detected: 4	Expected: 2 or 3

	- Glyph name: braceright	Contours detected: 2	Expected: 1

	- Glyph name: u00B0	Contours detected: 1	Expected: 2

	- Glyph name: u00B5	Contours detected: 2	Expected: 1

	- Glyph name: u00B7	Contours detected: 2	Expected: 1

	- Glyph name: u00C0	Contours detected: 1	Expected: 3

	- 30 more.

Use -F or --full-lists to disable shortening of long lists.
 [code: contour-count]
</div></details><details><summary>⚠ <b>WARN:</b> Check math signs have the same width. (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/universal.html#com.google.fonts/check/math_signs_width">com.google.fonts/check/math_signs_width</a>)</summary><div>


* ⚠ **WARN** The most common width is 894 among a set of 2 math glyphs.
The following math glyphs have a different width, though:

Width = 350:
less

Width = 543:
greater
 [code: width-outliers]
</div></details><details><summary>⚠ <b>WARN:</b> Checking Vertical Metric Linegaps. (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/universal.html#com.google.fonts/check/linegaps">com.google.fonts/check/linegaps</a>)</summary><div>


* ⚠ **WARN** hhea lineGap is not equal to 0. [code: hhea]
</div></details><details><summary>⚠ <b>WARN:</b> Do outlines contain any jaggy segments? (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Outline Checks.html#com.google.fonts/check/outline_jaggy_segments">com.google.fonts/check/outline_jaggy_segments</a>)</summary><div>


* ⚠ **WARN** The following glyphs have jaggy segments:

	* C (U+0043): B<<691.0,664.0>-<731.0,696.0>-<730.0,695.0>>/B<<730.0,695.0>-<738.0,700.0>-<759.0,695.0>> = 12.994616791916483

	* G (U+0047): B<<690.0,664.0>-<730.0,696.0>-<729.0,695.0>>/B<<729.0,695.0>-<737.0,700.0>-<758.0,695.0>> = 12.994616791916483

	* K (U+004B): L<<314.0,351.0>--<323.0,359.0>>/B<<323.0,359.0>-<319.0,355.0>-<471.0,491.0>> = 3.3664606634298315

	* five (U+0035): B<<472.0,624.0>-<472.0,603.0>-<466.0,596.0>>/B<<466.0,596.0>-<467.0,597.0>-<460.0,589.0>> = 4.398705354995508

	* j (U+006A): B<<279.0,192.0>-<278.0,-70.0>-<275.0,-79.0>>/B<<275.0,-79.0>-<276.0,-77.0>-<273.0,-86.0>> = 8.13010235415587

	* percent (U+0025): B<<161.0,-25.0>-<161.0,-17.0>-<164.0,-12.0>>/B<<164.0,-12.0>-<163.0,-13.0>-<632.0,596.0>> = 14.036243467926457

	* u00CB (U+00CB): B<<228.0,573.0>-<221.0,558.0>-<220.0,531.0>>/B<<220.0,531.0>-<221.0,550.0>-<220.0,498.0>> = 0.8916911075215157

	* u00D1 (U+00D1): B<<279.0,192.0>-<278.0,-70.0>-<275.0,-79.0>>/B<<275.0,-79.0>-<276.0,-77.0>-<273.0,-86.0>> = 8.13010235415587

	* w (U+0077): L<<737.0,372.0>--<734.0,365.0>>/B<<734.0,365.0>-<736.0,370.0>-<664.0,186.0>> = 1.3971810272963687 [code: found-jaggy-segments]
</div></details><details><summary>⚠ <b>WARN:</b> Do outlines contain any semi-vertical or semi-horizontal lines? (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Outline Checks.html#com.google.fonts/check/outline_semi_vertical">com.google.fonts/check/outline_semi_vertical</a>)</summary><div>


* ⚠ **WARN** The following glyphs have semi-vertical/semi-horizontal lines:

	* M (U+004D): L<<226.0,591.0>--<225.0,334.0>>

	* M (U+004D): L<<794.0,339.0>--<793.0,604.0>>

	* a (U+0061): L<<483.0,323.0>--<484.0,203.0>>

	* at (U+0040): L<<676.0,338.0>--<677.0,208.0>>

	* k (U+006B): L<<226.0,481.0>--<227.0,268.0>>

	* numbersign (U+0023): L<<215.0,331.0>--<87.0,332.0>>

	* numbersign (U+0023): L<<871.0,108.0>--<732.0,107.0>>

	* o (U+006F): L<<388.0,174.0>--<387.0,299.0>>

	* plus (U+002B): L<<251.0,219.0>--<87.0,220.0>>

	* plus (U+002B): L<<807.0,220.0>--<642.0,219.0>>

	* 4 more.

Use -F or --full-lists to disable shortening of long lists. [code: found-semi-vertical]
</div></details><details><summary>⚠ <b>WARN:</b> Does METADATA.pb copyright field contain broken links? (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Metadata Checks.html#com.google.fonts/check/metadata/broken_links">com.google.fonts/check/metadata/broken_links</a>)</summary><div>


* ⚠ **WARN** Timed out while attempting to access: 'http://www.cs.uu.nl/~hanwen/mftrace/'. Please verify if that's a broken link. [code: timeout]
</div></details><details><summary>⚠ <b>WARN:</b> METADATA.pb: Designers are listed correctly on the Google Fonts catalog? (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Metadata Checks.html#com.google.fonts/check/metadata/designer_profiles">com.google.fonts/check/metadata/designer_profiles</a>)</summary><div>


* ⚠ **WARN** It seems that Donald Knuth is still not listed on the designers catalog. Please submit a photo and a link to a webpage where people can learn more about the work of this designer/typefoundry. [code: profile-not-found]
</div></details><details><summary>⚠ <b>WARN:</b> Check for codepoints not covered by METADATA subsets. (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Metadata Checks.html#com.google.fonts/check/metadata/unreachable_subsetting">com.google.fonts/check/metadata/unreachable_subsetting</a>)</summary><div>


* ⚠ **WARN** The following codepoints supported by the font are not covered by
    any subsets defined in the font's metadata file, and will never
    be served. You can solve this by either manually adding additional
    subset declarations to METADATA.pb, or by editing the glyphset
    definitions.

 * U+0020 SPACE: try adding one of: bamum, gujarati, japanese, music, cham, gothic, miao, bhaiksuki, phags-pa, sora-sompeng, medefaidrin, carian, kannada, myanmar, lydian, dives-akuru, znamenny, mayan-numerals, vietnamese, soyombo, deseret, adlam, tagbanwa, tirhuta, imperial-aramaic, pahawh-hmong, symbols, multani, glagolitic, nag-mundari, ottoman-siyaq-numbers, lycian, syloti-nagri, newa, arabic, brahmi, new-tai-lue, anatolian-hieroglyphs, limbu, chorasmian, sogdian, bassa-vah, hanunoo, linear-a, samaritan, cuneiform, kharoshthi, mongolian, batak, signwriting, thai, kaithi, korean, khmer, old-persian, sundanese, khitan-small-script, sharada, greek, math, nko, braille, mandaic, old-turkic, lisu, mro, tagalog, cypro-minoan, old-south-arabian, hatran, yi, zanabazar-square, ogham, telugu, georgian, oriya, javanese, old-hungarian, meroitic-hieroglyphs, devanagari, old-italic, mahajani, pau-cin-hau, hebrew, kawi, khojki, canadian-aboriginal, old-uyghur, lao, tai-le, runic, coptic, gunjala-gondi, ol-chiki, syriac, palmyrene, mende-kikakui, vithkuqi, wancho, nabataean, tamil-supplement, nandinagari, siddham, balinese, old-permic, yezidi, tangsa, ahom, nyiakeng-puachue-hmong, grantha, tifinagh, old-north-arabian, inscriptional-parthian, chinese-hongkong, cypriot, tai-viet, thaana, modi, avestan, meroitic-cursive, egyptian-hieroglyphs, bengali, dogra, rejang, meroitic, ugaritic, duployan, latin-ext, sinhala, armenian, old-sogdian, shavian, cyrillic, khudawadi, takri, warang-citi, saurashtra, marchen, ethiopic, phoenician, cherokee, malayalam, meetei-mayek, vai, hanifi-rohingya, tibetan, buginese, kayah-li, masaram-gondi, elymaic, indic-siyaq-numbers, linear-b, cyrillic-ext, elbasan, gurmukhi, caucasian-albanian, buhid, greek-ext, osage, tai-tham, chakma, tangut, osmanya, psalter-pahlavi, tamil, chinese-simplified, toto, nushu, inscriptional-pahlavi, makasar, lepcha, chinese-traditional, manichaean

Or you can add the above codepoints to one of the subsets supported by the font: `menu`, `latin` [code: unreachable-subsetting]
</div></details><details><summary>⚠ <b>WARN:</b> Checking OS/2 achVendID. (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Font File Checks.html#com.google.fonts/check/vendor_id">com.google.fonts/check/vendor_id</a>)</summary><div>


* ⚠ **WARN** OS/2 VendorID is 'PfEd', a font editor default. If you registered it recently, then it's safe to ignore this warning message. Otherwise, you should set it to your own unique 4 character code, and register it with Microsoft at https://www.microsoft.com/typography/links/vendorlist.aspx
 [code: bad]
</div></details><details><summary>⚠ <b>WARN:</b> Is the Grid-fitting and Scan-conversion Procedure ('gasp') table set to optimize rendering? (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Font File Checks.html#com.google.fonts/check/gasp">com.google.fonts/check/gasp</a>)</summary><div>


* ℹ **INFO** These are the ppm ranges declared on the gasp table:

PPM <= 65535:
	flag = 0x0A
	- Use grayscale rendering
	- Use smoothing along multiple axes with ClearType®
 [code: ranges]
* ⚠ **WARN** The gasp range 0xFFFF value 0x0A should be set to 0x0F. [code: unset-flags]
</div></details><details><summary>⚠ <b>WARN:</b> Ensure fonts have ScriptLangTags declared on the 'meta' table. (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Font File Checks.html#com.google.fonts/check/meta/script_lang_tags">com.google.fonts/check/meta/script_lang_tags</a>)</summary><div>


* ⚠ **WARN** This font file does not have a 'meta' table. [code: lacks-meta-table]
</div></details><details><summary>ℹ <b>INFO:</b> List all superfamily filepaths (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Superfamily Checks.html#com.google.fonts/check/superfamily/list">com.google.fonts/check/superfamily/list</a>)</summary><div>


* ℹ **INFO** apache/jsmathcmbx10 [code: family-path]
</div></details><details><summary>ℹ <b>INFO:</b> Font contains all required tables? (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/universal.html#com.google.fonts/check/required_tables">com.google.fonts/check/required_tables</a>)</summary><div>


* ℹ **INFO** This font contains the following optional tables:

	- cvt 

	- fpgm

	- loca

	- prep

	- gasp

	- hdmx

	- LTSH

	- VDMX [code: optional-tables]
</div></details><details><summary>ℹ <b>INFO:</b> Check for font-v versioning. (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Font File Checks.html#com.google.fonts/check/fontv">com.google.fonts/check/fontv</a>)</summary><div>


* ℹ **INFO** Version string is: "Version 001.001 "
The version string must ideally include a git commit hash and either a "dev" or a "release" suffix such as in the example below:
"Version 1.3; git-0d08353-release" [code: bad-format]
</div></details><details><summary>ℹ <b>INFO:</b> EPAR table present in font? (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Font File Checks.html#com.google.fonts/check/epar">com.google.fonts/check/epar</a>)</summary><div>


* ℹ **INFO** EPAR table not present in font. To learn more see https://github.com/fonttools/fontbakery/issues/818 [code: lacks-EPAR]
</div></details><details><summary>ℹ <b>INFO:</b> Show hinting filesize impact. (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Font File Checks.html#com.google.fonts/check/hinting_impact">com.google.fonts/check/hinting_impact</a>)</summary><div>


* ℹ **INFO** Hinting filesize impact:

 |               | Font(file='apache/jsmathcmbx10/jsMath-cmbx10.ttf', context=CheckRunContext(testables=[...], config={'com.google.fonts/check/file_size': {'WARN_SIZE': 1048576, 'FAIL_SIZE': 9437184}, 'custom_order': None, 'explicit_checks': None, 'exclude_checks': None, 'full_lists': False, 'skip_network': False}))          |
 |:------------- | ---------------:|
 | Dehinted Size | 27.9kb |
 | Hinted Size   | 50.6kb   |
 | Increase      | 22.7kb      |
 | Change        | 81.4 %  |
 [code: size-impact]
</div></details><details><summary>ℹ <b>INFO:</b> Font has old ttfautohint applied? (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Font File Checks.html#com.google.fonts/check/old_ttfautohint">com.google.fonts/check/old_ttfautohint</a>)</summary><div>


* ℹ **INFO** Could not detect which version of ttfautohint was used in this font. It is typically specified as a comment in the font version entries of the 'name' table. Such font version strings are currently: ['Version 001.001 ', 'Version 001.001 '] [code: version-not-detected]
</div></details><br></div></details><details><summary><b>[3] Family checks</b></summary><div><details><summary>🔥 <b>FAIL:</b> Directory name in GFonts repo structure must match NameID 1 of the regular. (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Repository Checks.html#com.google.fonts/check/repo/dirname_matches_nameid_1">com.google.fonts/check/repo/dirname_matches_nameid_1</a>)</summary><div>


* 🔥 **FAIL** The font seems to lack a regular. If family consists of a single-weight non-Regular style only, consider the Google Fonts specs for this case: https://github.com/googlefonts/gf-docs/tree/main/Spec#single-weight-families [code: lacks-regular]
</div></details><details><summary>🔥 <b>FAIL:</b> OS/2.fsSelection bit 7 (USE_TYPO_METRICS) is set in all fonts. (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Font File Checks.html#com.google.fonts/check/os2/use_typo_metrics">com.google.fonts/check/os2/use_typo_metrics</a>)</summary><div>


* 🔥 **FAIL** OS/2.fsSelection bit 7 (USE_TYPO_METRICS) wasNOT set in the following fonts: ['apache/jsmathcmbx10/jsMath-cmbx10.ttf']. [code: missing-os2-fsselection-bit7]
</div></details><details><summary>ℹ <b>INFO:</b> Check axis ordering on the STAT table. (<a href="https://font-bakery.readthedocs.io/en/stable/fontbakery/profiles/Font File Checks.html#com.google.fonts/check/STAT/axis_order">com.google.fonts/check/STAT/axis_order</a>)</summary><div>


* ℹ **INFO** All of the fonts lack a STAT table.
 [code: summary]
</div></details><br></div></details>

### Summary

| 💔 ERROR | ☠ FATAL | 🔥 FAIL | ⚠ WARN | 💤 SKIP | ℹ INFO | 🍞 PASS | 🔎 DEBUG |
|:-----:|:-----:|:-----:|:-----:|:-----:|:-----:|:-----:|:-----:|
| 1 | 1 | 32 | 13 | 84 | 7 | 119 | 0 |
| 0% | 0% | 12% | 5% | 33% | 3% | 46% | 0% |

**Note:** The following loglevels were omitted in this report:
* **SKIP**
* **PASS**
* **DEBUG**

@m4rc1e
Copy link
Collaborator

m4rc1e commented Mar 15, 2024

Blocking due to the line breaking algo being too primitive. It will be on initials e.g "H.R. Giger" becomes "H.
R
Giger"

@m4rc1e m4rc1e added the -- Needs Upstream Resolution Upstream fix required before moving forward label Mar 15, 2024
@yanone
Copy link
Collaborator Author

yanone commented Mar 15, 2024

I'm pretty sure there's only one line break after H.R., not two.
And I don't see how this can be improved, and therefore, why it should block. It will correctly format 99.9% of all cases. The nbsp character can be used for not breaking up names.

@m4rc1e
Copy link
Collaborator

m4rc1e commented Mar 15, 2024

gftools format-html produces the following:

gftools format-html test.html 
(venv) Marcs-Air-2:tools marcfoley$ cat test.html 
<p>
 H.R.
 Giger
</p>

I'd prefer it if we only inserted a line break if the line length > than say 20, so we'd get:

H.R. Giger

@yanone
Copy link
Collaborator Author

yanone commented Mar 15, 2024

line length > than say 20

I'm pretty sure that's the wrong approach.

Try to think of an algo that correctly breaks these two sentences:
The characters of the film were designed by H.R. Giger. His alien characters became iconic throughout pop culture.
The characters of the film were designed by H.R. Giger, a Swiss sculptural artist. His alien characters became iconic throughout pop culture.

In the first case you could find that one sentence consists only of Giger. and therefore append it to the previous sentence again. In the second case you can't, at least not with a 20 character limit. This isn't gonna work.

I say we either find an algo that identifies abbreviations and won't break them, or simply use nbsp for these rare cases, which the nbsp character was literally invented for: appear to be a space while not being treated as a space.

@m4rc1e
Copy link
Collaborator

m4rc1e commented Mar 15, 2024

Nice test case. Totally agree with you.

@m4rc1e
Copy link
Collaborator

m4rc1e commented Mar 15, 2024

Chat gpt is pretty good at regex

import re

text = "This is a sentence. This is an abbreviation, e.g. etc. This is another sentence."

pattern = r'(?<!\b(?:e\.g|i\.e|etc))\.\s*(?=[A-Z])'

result = re.split(pattern, text)
print(result)

prints

['This is a sentence', 'This is an abbreviation, e.g. etc. This is another sentence.']

@yanone
Copy link
Collaborator Author

yanone commented Mar 15, 2024

It's wrong though. There should be three sentences.

@yanone
Copy link
Collaborator Author

yanone commented Mar 15, 2024

And it's literally only for the three abbreviations i.e., e.g., and etc., and won't work for H.R. Giger.

@emmamarichal
Copy link
Collaborator

@m4rc1e, since you've updated it, should we close that PR?

@yanone
Copy link
Collaborator Author

yanone commented Jun 21, 2024

Marc didn't update it, he deactivated it. So maybe we could first talk about a possible solution?

I looked into the issue with punctuation after tags, and indeed, all HTML formatting software make that same mistake, at least all available in Python. Unbelievable, but true.

So the only way I see here to still use the formatter that I implemented (or any other) is to let go of indentation, meaning the leading spaces in front of each line that indicate HTML hierarchy. Those were causing that.

What do you guys think about that?

@emmamarichal
Copy link
Collaborator

I'm ok with that, even if I found the previous versions a bit more lisible. I can get used to it!

@m4rc1e @vv-monsalve?

@m4rc1e
Copy link
Collaborator

m4rc1e commented Jun 27, 2024

I'm going to close this PR since merging it will cause the Google Fonts backend to regenerate every font subset in our collections and it will take a very very long time (possible weeks).

Going forward, I propose we make a formatter that doesn't use prettify. I had a demo working nicely that just used lxml. I'll see if i can find it.

@m4rc1e m4rc1e closed this Jun 27, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
-- Needs Upstream Resolution Upstream fix required before moving forward
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants