Skip to content

Latest commit

Β 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
Β 
Β 
## Fontbakery report Fontbakery version: 0.6.10
[26] Family checks
πŸ”₯ FAIL: Check font has a license. * [com.google.fonts/check/028](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/028) * πŸ”₯ **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]
ℹ️ INFO: Do we have the latest version of FontBakery installed? * [com.google.fonts/check/fontbakery_version](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/fontbakery_version) * ℹ️ **INFO** fontbakery (0.6.10) - Well designed Font QA tool, written in Python 3 INSTALLED: 0.6.10 (latest) * 🍞 **PASS** Font Bakery is up-to-date
🍞 PASS: All tabular figures must have the same width across the RIBBI-family. * [com.google.fonts/check/tnum_horizontal_metrics](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/tnum_horizontal_metrics) * 🍞 **PASS** OK
🍞 PASS: Checking all files are in the same directory. * [com.google.fonts/check/002](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/002) * 🍞 **PASS** All files are in the same directory.
🍞 PASS: Fonts have equal unicode encodings? * [com.google.fonts/check/013](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/013) * 🍞 **PASS** Fonts have equal unicode encodings.
🍞 PASS: Make sure all font files have the same version value. * [com.google.fonts/check/014](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/014) * 🍞 **PASS** All font files have the same version.
🍞 PASS: Fonts have consistent PANOSE proportion? * [com.google.fonts/check/009](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/009) * 🍞 **PASS** Fonts have consistent PANOSE proportion.
🍞 PASS: Fonts have consistent PANOSE family type? * [com.google.fonts/check/010](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/010) * 🍞 **PASS** Fonts have consistent PANOSE family type.
🍞 PASS: Fonts have consistent underline thickness? * [com.google.fonts/check/008](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/008) * 🍞 **PASS** Fonts have consistent underline thickness.
πŸ’€ SKIP: Does DESCRIPTION file contain broken links? * [com.google.fonts/check/003](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/003) * πŸ’€ **SKIP** Unfulfilled Conditions: description
πŸ’€ SKIP: Is this a proper HTML snippet? * [com.google.fonts/check/004](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/004) * πŸ’€ **SKIP** Unfulfilled Conditions: descfile
πŸ’€ SKIP: DESCRIPTION.en_us.html must have more than 200 bytes. * [com.google.fonts/check/005](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/005) * πŸ’€ **SKIP** Unfulfilled Conditions: description
πŸ’€ SKIP: DESCRIPTION.en_us.html must have less than 1000 bytes. * [com.google.fonts/check/006](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/006) * πŸ’€ **SKIP** Unfulfilled Conditions: description
πŸ’€ SKIP: Check METADATA.pb parse correctly. * [com.google.fonts/check/metadata/parses](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/metadata/parses) * πŸ’€ **SKIP** Font family at '/Users/ebensorkin/virtualenvs/variable_ttf' lacks a METADATA.pb file.
πŸ’€ SKIP: Font designer field in METADATA.pb must not be 'unknown'. * [com.google.fonts/check/007](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/007) * πŸ’€ **SKIP** Unfulfilled Conditions: family_metadata
πŸ’€ SKIP: METADATA.pb: Fontfamily is listed on Google Fonts API? * [com.google.fonts/check/081](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/081) * πŸ’€ **SKIP** Unfulfilled Conditions: family_metadata
πŸ’€ SKIP: METADATA.pb: check if fonts field only has unique "full_name" values. * [com.google.fonts/check/083](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/083) * πŸ’€ **SKIP** Unfulfilled Conditions: family_metadata
πŸ’€ SKIP: METADATA.pb: check if fonts field only contains unique style:weight pairs. * [com.google.fonts/check/084](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/084) * πŸ’€ **SKIP** Unfulfilled Conditions: family_metadata
πŸ’€ SKIP: METADATA.pb license is "APACHE2", "UFL" or "OFL"? * [com.google.fonts/check/085](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/085) * πŸ’€ **SKIP** Unfulfilled Conditions: family_metadata
πŸ’€ SKIP: METADATA.pb should contain at least "menu" and "latin" subsets. * [com.google.fonts/check/086](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/086) * πŸ’€ **SKIP** Unfulfilled Conditions: family_metadata
πŸ’€ SKIP: METADATA.pb subsets should be alphabetically ordered. * [com.google.fonts/check/087](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/087) * πŸ’€ **SKIP** Unfulfilled Conditions: family_metadata
πŸ’€ SKIP: METADATA.pb: Copyright notice is the same in all fonts? * [com.google.fonts/check/088](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/088) * πŸ’€ **SKIP** Unfulfilled Conditions: family_metadata
πŸ’€ SKIP: Check that METADATA.pb family values are all the same. * [com.google.fonts/check/089](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/089) * πŸ’€ **SKIP** Unfulfilled Conditions: family_metadata
πŸ’€ SKIP: METADATA.pb: According Google Fonts standards, families should have a Regular style. * [com.google.fonts/check/090](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/090) * πŸ’€ **SKIP** Unfulfilled Conditions: family_metadata
πŸ’€ SKIP: METADATA.pb: Regular should be 400. * [com.google.fonts/check/091](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/091) * πŸ’€ **SKIP** Unfulfilled Conditions: family_metadata, has_regular_style
⚠️ WARN: Is the command `ftxvalidator` (Apple Font Tool Suite) available? * [com.google.fonts/check/ftxvalidator_is_available](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/ftxvalidator_is_available) * ⚠️ **WARN** ftxvalidator is not available.

[116] Merriweather-VF.ttf
πŸ”₯ FAIL: Is 'gasp' table set to optimize rendering? * [com.google.fonts/check/062](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/062) * πŸ”₯ **FAIL** Font is missing the 'gasp' table. Try exporting the font with autohinting enabled.
πŸ”₯ FAIL: Checking OS/2 usWinAscent & usWinDescent. * [com.google.fonts/check/040](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/040) * πŸ”₯ **FAIL** OS/2.usWinAscent value should be equal or greater than 1188, but got 1150 instead [code: ascent]
πŸ”₯ FAIL: Font enables smart dropout control in "prep" table instructions? * [com.google.fonts/check/072](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/072) * πŸ”₯ **FAIL** '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.
πŸ”₯ FAIL: Does the font have a DSIG table? * [com.google.fonts/check/045](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/045) * πŸ”₯ **FAIL** This font lacks a digital signature (DSIG table). Some applications may require one (even if only a dummy placeholder) in order to work properly.
⚠️ WARN: Checking OS/2 achVendID. * [com.google.fonts/check/018](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/018) * ⚠️ **WARN** OS/2 VendorID value 'STC' is not a known registered id. You should set it to your own 4 character code, and register that code with Microsoft at https://www.microsoft.com/typography/links/vendorlist.aspx [code: unknown]
⚠️ WARN: Stricter unitsPerEm criteria for Google Fonts. * [com.google.fonts/check/116](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/116) * ⚠️ **WARN** Even though unitsPerEm (1000) in this font is reasonable. It is strongly advised to consider changing it to 2000, since it will likely improve the quality of Variable Fonts by avoiding excessive rounding of coordinates on interpolations.
⚠️ WARN: Name table strings must not contain the string 'Reserved Font Name'. * [com.google.fonts/check/152](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/152) * ⚠️ **WARN** Name table entry ("Copyright 2016 The Merriweather Project Authors (https://github.com/EbenSorkin/Merriweather), with Reserved Font Name "Merriweather".") contains "Reserved Font Name". This is an error except in a few specific rare cases.
⚠️ WARN: Combined length of family and style must not exceed 20 characters. * [com.google.fonts/check/163](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/163) * ⚠️ **WARN** The combined length of family and style exceeds 20 chars in the following 'WINDOWS' entries: FONT_FAMILY_NAME = 'Merriweather Light' / SUBFAMILY_NAME = 'Regular'
⚠️ WARN: Is there kerning info for non-ligated sequences? * [com.google.fonts/check/065](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/065) * ⚠️ **WARN** GPOS table lacks kerning info for the following non-ligated sequences: - f + f - f + i - i + f - f + l - l + f - i + l [code: lacks-kern-info]
⚠️ WARN: Are there caret positions declared for every ligature? * [com.google.fonts/check/064](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/064) * ⚠️ **WARN** This font lacks caret position values for ligature glyphs on its GDEF table. [code: lacks-caret-pos]
πŸ’€ SKIP: Checking OS/2 usWeightClass. * [com.google.fonts/check/020](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/020) * πŸ’€ **SKIP** Unfulfilled Conditions: style
πŸ’€ SKIP: Check copyright namerecords match license file. * [com.google.fonts/check/029](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/029) * πŸ’€ **SKIP** Unfulfilled Conditions: license
πŸ’€ SKIP: Font has ttfautohint params? * [com.google.fonts/check/has_ttfautohint_params](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/has_ttfautohint_params) * πŸ’€ **SKIP** Font appears to our heuristic as not hinted using ttfautohint.
πŸ’€ SKIP: Checks METADATA.pb font.name field matches family name declared on the name table. * [com.google.fonts/check/092](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/092) * πŸ’€ **SKIP** Unfulfilled Conditions: font_metadata
πŸ’€ SKIP: Checks METADATA.pb font.post_script_name matches postscript name declared on the name table. * [com.google.fonts/check/093](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/093) * πŸ’€ **SKIP** Unfulfilled Conditions: font_metadata
πŸ’€ SKIP: METADATA.pb font.full_name value matches fullname declared on the name table? * [com.google.fonts/check/094](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/094) * πŸ’€ **SKIP** Unfulfilled Conditions: font_metadata
πŸ’€ SKIP: METADATA.pb font.name value should be same as the family name declared on the name table. * [com.google.fonts/check/095](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/095) * πŸ’€ **SKIP** Unfulfilled Conditions: font_metadata, style
πŸ’€ SKIP: METADATA.pb font.full_name and font.post_script_name fields have equivalent values ? * [com.google.fonts/check/096](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/096) * πŸ’€ **SKIP** Unfulfilled Conditions: font_metadata
πŸ’€ SKIP: METADATA.pb font.filename and font.post_script_name fields have equivalent values? * [com.google.fonts/check/097](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/097) * πŸ’€ **SKIP** Unfulfilled Conditions: font_metadata
πŸ’€ SKIP: METADATA.pb font.name field contains font name in right format? * [com.google.fonts/check/098](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/098) * πŸ’€ **SKIP** Unfulfilled Conditions: style, font_metadata
πŸ’€ SKIP: METADATA.pb font.full_name field contains font name in right format? * [com.google.fonts/check/099](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/099) * πŸ’€ **SKIP** Unfulfilled Conditions: style, font_metadata
πŸ’€ SKIP: METADATA.pb font.filename field contains font name in right format? * [com.google.fonts/check/100](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/100) * πŸ’€ **SKIP** Unfulfilled Conditions: style, family_metadata
πŸ’€ SKIP: METADATA.pb font.post_script_name field contains font name in right format? * [com.google.fonts/check/101](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/101) * πŸ’€ **SKIP** Unfulfilled Conditions: font_metadata
πŸ’€ SKIP: Copyright notices match canonical pattern? * [com.google.fonts/check/102](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/102) * πŸ’€ **SKIP** Unfulfilled Conditions: font_metadata
πŸ’€ SKIP: Copyright notice on METADATA.pb should not contain 'Reserved Font Name'. * [com.google.fonts/check/103](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/103) * πŸ’€ **SKIP** Unfulfilled Conditions: font_metadata
πŸ’€ SKIP: METADATA.pb: Copyright notice shouldn't exceed 500 chars. * [com.google.fonts/check/104](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/104) * πŸ’€ **SKIP** Unfulfilled Conditions: font_metadata
πŸ’€ SKIP: METADATA.pb: Filename is set canonically? * [com.google.fonts/check/105](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/105) * πŸ’€ **SKIP** Unfulfilled Conditions: font_metadata, canonical_filename
πŸ’€ SKIP: METADATA.pb font.style "italic" matches font internals? * [com.google.fonts/check/106](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/106) * πŸ’€ **SKIP** Unfulfilled Conditions: font_metadata
πŸ’€ SKIP: METADATA.pb font.style "normal" matches font internals? * [com.google.fonts/check/107](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/107) * πŸ’€ **SKIP** Unfulfilled Conditions: font_metadata
πŸ’€ SKIP: METADATA.pb font.name and font.full_name fields match the values declared on the name table? * [com.google.fonts/check/108](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/108) * πŸ’€ **SKIP** Unfulfilled Conditions: font_metadata
πŸ’€ SKIP: METADATA.pb: Check if fontname is not camel cased. * [com.google.fonts/check/109](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/109) * πŸ’€ **SKIP** Unfulfilled Conditions: font_metadata
πŸ’€ SKIP: METADATA.pb: Check font name is the same as family name. * [com.google.fonts/check/110](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/110) * πŸ’€ **SKIP** Unfulfilled Conditions: family_metadata, font_metadata
πŸ’€ SKIP: METADATA.pb: Check that font weight has a canonical value. * [com.google.fonts/check/111](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/111) * πŸ’€ **SKIP** Unfulfilled Conditions: font_metadata
πŸ’€ SKIP: Checking OS/2 usWeightClass matches weight specified at METADATA.pb. * [com.google.fonts/check/112](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/112) * πŸ’€ **SKIP** Unfulfilled Conditions: font_metadata
πŸ’€ SKIP: METADATA.pb weight matches postScriptName. * [com.google.fonts/check/113](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/113) * πŸ’€ **SKIP** Unfulfilled Conditions: font_metadata
πŸ’€ SKIP: METADATA.pb: Font styles are named canonically? * [com.google.fonts/check/115](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/115) * πŸ’€ **SKIP** Unfulfilled Conditions: font_metadata
πŸ’€ SKIP: Version number has increased since previous release on Google Fonts? * [com.google.fonts/check/117](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/117) * πŸ’€ **SKIP** Unfulfilled Conditions: api_gfonts_ttFont, github_gfonts_ttFont
πŸ’€ SKIP: Glyphs are similiar to Google Fonts version? * [com.google.fonts/check/118](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/118) * πŸ’€ **SKIP** Unfulfilled Conditions: api_gfonts_ttFont
πŸ’€ SKIP: Checking OS/2 fsSelection value. * [com.google.fonts/check/129](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/129) * πŸ’€ **SKIP** Unfulfilled Conditions: style
πŸ’€ SKIP: Checking post.italicAngle value. * [com.google.fonts/check/130](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/130) * πŸ’€ **SKIP** Unfulfilled Conditions: style
πŸ’€ SKIP: Checking head.macStyle value. * [com.google.fonts/check/131](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/131) * πŸ’€ **SKIP** Unfulfilled Conditions: style
πŸ’€ SKIP: Check if each glyph has the recommended amount of contours. * [com.google.fonts/check/153](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/153) * πŸ’€ **SKIP** Unfulfilled Conditions: not is_variable_font
πŸ’€ SKIP: Check font has same encoded glyphs as version hosted on fonts.google.com * [com.google.fonts/check/154](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/154) * πŸ’€ **SKIP** Unfulfilled Conditions: api_gfonts_ttFont
πŸ’€ SKIP: Copyright field for this font on METADATA.pb matches all copyright notice entries on the name table ? * [com.google.fonts/check/155](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/155) * πŸ’€ **SKIP** Unfulfilled Conditions: font_metadata
πŸ’€ SKIP: Font has all mandatory 'name' table entries ? * [com.google.fonts/check/156](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/156) * πŸ’€ **SKIP** Unfulfilled Conditions: style
πŸ’€ SKIP: Check name table: FONT_FAMILY_NAME entries. * [com.google.fonts/check/157](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/157) * πŸ’€ **SKIP** Unfulfilled Conditions: style
πŸ’€ SKIP: Check name table: FONT_SUBFAMILY_NAME entries. * [com.google.fonts/check/158](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/158) * πŸ’€ **SKIP** Unfulfilled Conditions: style_with_spaces
πŸ’€ SKIP: Check name table: FULL_FONT_NAME entries. * [com.google.fonts/check/159](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/159) * πŸ’€ **SKIP** Unfulfilled Conditions: style_with_spaces
πŸ’€ SKIP: Check name table: POSTSCRIPT_NAME entries. * [com.google.fonts/check/160](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/160) * πŸ’€ **SKIP** Unfulfilled Conditions: style
πŸ’€ SKIP: Check name table: TYPOGRAPHIC_FAMILY_NAME entries. * [com.google.fonts/check/161](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/161) * πŸ’€ **SKIP** Unfulfilled Conditions: style
πŸ’€ SKIP: Check name table: TYPOGRAPHIC_SUBFAMILY_NAME entries. * [com.google.fonts/check/162](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/162) * πŸ’€ **SKIP** Unfulfilled Conditions: style_with_spaces
πŸ’€ SKIP: Checking with ftxvalidator. * [com.google.fonts/check/035](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/035) * πŸ’€ **SKIP** Unfulfilled Conditions: ftxvalidator_is_available
πŸ’€ SKIP: FontForge validation outputs error messages? * [com.google.fonts/check/038](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/038) * πŸ’€ **SKIP** Unfulfilled Conditions: fontforge_check_results
πŸ’€ SKIP: FontForge checks. * [com.google.fonts/check/039](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/039) * πŸ’€ **SKIP** Unfulfilled Conditions: fontforge_check_results
πŸ’€ SKIP: CFF table FontName must match name table ID 6 (PostScript name). * [com.adobe.fonts/check/postscript_name_cff_vs_name](https://github.com/googlefonts/fontbakery/search?q=com.adobe.fonts/check/postscript_name_cff_vs_name) * πŸ’€ **SKIP** Unfulfilled Conditions: is_cff
πŸ’€ SKIP: Monospace font has hhea.advanceWidthMax equal to each glyph's advanceWidth? * [com.google.fonts/check/079](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/079) * πŸ’€ **SKIP** Unfulfilled Conditions: seems_monospaced
πŸ’€ SKIP: The variable font 'wdth' (Width) axis coordinate must be 100 on the 'Regular' instance. * [com.google.fonts/check/168](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/168) * πŸ’€ **SKIP** Unfulfilled Conditions: regular_wdth_coord
πŸ’€ SKIP: The variable font 'slnt' (Slant) axis coordinate must be zero on the 'Regular' instance. * [com.google.fonts/check/169](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/169) * πŸ’€ **SKIP** Unfulfilled Conditions: regular_slnt_coord
πŸ’€ SKIP: The variable font 'ital' (Italic) axis coordinate must be zero on the 'Regular' instance. * [com.google.fonts/check/170](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/170) * πŸ’€ **SKIP** Unfulfilled Conditions: regular_ital_coord
πŸ’€ SKIP: The variable font 'opsz' (Optical Size) axis coordinate should be between 9 and 13 on the 'Regular' instance. * [com.google.fonts/check/171](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/171) * πŸ’€ **SKIP** Unfulfilled Conditions: regular_opsz_coord
ℹ️ INFO: Show hinting filesize impact. * [com.google.fonts/check/054](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/054) * ℹ️ **INFO** Hinting filesize impact: | | /Users/ebensorkin/virtualenvs/variable_ttf/Merriweather-VF.ttf | |:--- | ---:| | Dehinted Size | 348.4kb | | Hinted Size | 347.4kb | | Increase | -1044 bytes | | Change | -0.3 % |
ℹ️ INFO: Font has old ttfautohint applied? * [com.google.fonts/check/056](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/056) * ℹ️ **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 2.004']
ℹ️ INFO: EPAR table present in font? * [com.google.fonts/check/061](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/061) * ℹ️ **INFO** EPAR table not present in font. To learn more see fonttools/fontbakery#818
ℹ️ INFO: Familyname must be unique according to namecheck.fontdata.com * [com.google.fonts/check/165](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/165) * ℹ️ **INFO** The family name 'Merriweather' seem to be already in use. Please visit http://namecheck.fontdata.com/?q=Merriweather for more info.
ℹ️ INFO: Check for font-v versioning * [com.google.fonts/check/166](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/166) * ℹ️ **INFO** Version string is: "Version 2.004" 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"
ℹ️ INFO: Font contains all required tables? * [com.google.fonts/check/052](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/052) * ℹ️ **INFO** This font contains the following optional tables [loca, GSUB, GPOS] * 🍞 **PASS** Font contains all required tables.
🍞 PASS: Checking file is named canonically. * [com.google.fonts/check/001](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/001) * 🍞 **PASS** /Users/ebensorkin/virtualenvs/variable_ttf/Merriweather-VF.ttf is named canonically.
🍞 PASS: Fonts have equal numbers of glyphs? * [com.google.fonts/check/011](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/011) * 🍞 **PASS** All font files in this family have an equal total ammount of glyphs.
🍞 PASS: Fonts have equal glyph names? * [com.google.fonts/check/012](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/012) * 🍞 **PASS** All font files have identical glyph names.
🍞 PASS: Checking OS/2 fsType. * [com.google.fonts/check/016](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/016) * 🍞 **PASS** OS/2 fsType is properly set to zero.
🍞 PASS: Substitute copyright, registered and trademark symbols in name table entries. * [com.google.fonts/check/019](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/019) * 🍞 **PASS** No need to substitute copyright, registered and trademark symbols in name table entries of this font.
🍞 PASS: "License URL matches License text on name table? * [com.google.fonts/check/030](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/030) * 🍞 **PASS** Font has a valid license URL in NAME table.
🍞 PASS: Description strings in the name table must not exceed 200 characters. * [com.google.fonts/check/032](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/032) * 🍞 **PASS** All description name records have reasonably small lengths.
🍞 PASS: Version format is correct in 'name' table? * [com.google.fonts/check/055](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/055) * 🍞 **PASS** Version format in NAME table entries is correct.
🍞 PASS: Make sure family name does not begin with a digit. * [com.google.fonts/check/067](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/067) * 🍞 **PASS** Font family name first character is not a digit.
🍞 PASS: Font has all expected currency sign characters? * [com.google.fonts/check/070](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/070) * 🍞 **PASS** Font has all expected currency sign characters.
🍞 PASS: Are there non-ASCII characters in ASCII-only NAME table entries? * [com.google.fonts/check/074](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/074) * 🍞 **PASS** None of the ASCII-only NAME table entries contain non-ASCII characteres.
🍞 PASS: Length of copyright notice must not exceed 500 characters. * [com.google.fonts/check/164](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/164) * 🍞 **PASS** All copyright notice name entries on the 'name' table are shorter than 500 characters.
🍞 PASS: Check a static ttf can be generated from a variable font. * [com.google.fonts/check/174](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/174) * 🍞 **PASS** fontTools.varLib.mutator generated a static font instance
🍞 PASS: Check that variable fonts have an HVAR table. * [com.google.fonts/check/varfont/has_HVAR](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/varfont/has_HVAR) * 🍞 **PASS** This variable font contains an HVAR table.
🍞 PASS: Checking OS/2 Metrics match hhea Metrics. * [com.google.fonts/check/042](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/042) * 🍞 **PASS** OS/2.sTypoAscender/Descender values match hhea.ascent/descent.
🍞 PASS: There must not be VTT Talk sources in the font. * [com.google.fonts/check/vttclean](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/vttclean) * 🍞 **PASS** There are no tables with VTT Talk sources embedded in the font.
🍞 PASS: Are there unwanted Apple tables? * [com.google.fonts/check/aat](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/aat) * 🍞 **PASS** There are no unwanted AAT tables.
🍞 PASS: All name entries referenced by fvar instances exist on the name table? * [com.google.fonts/check/fvar_name_entries](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/fvar_name_entries) * 🍞 **PASS** OK
🍞 PASS: A variable font must have named instances. * [com.google.fonts/check/varfont_has_instances](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/varfont_has_instances) * 🍞 **PASS** OK
🍞 PASS: Variable font weight coordinates must be multiples of 100. * [com.google.fonts/check/varfont_weight_instances](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/varfont_weight_instances) * 🍞 **PASS** OK
🍞 PASS: Checking with ots-sanitize. * [com.google.fonts/check/036](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/036) * 🍞 **PASS** ots-sanitize passed this file
🍞 PASS: Font contains .notdef as first glyph? * [com.google.fonts/check/046](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/046) * 🍞 **PASS** Font contains the .notdef glyph as the first glyph, it does not have a Unicode value assigned and contains a drawing.
🍞 PASS: Font contains glyphs for whitespace characters? * [com.google.fonts/check/047](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/047) * 🍞 **PASS** Font contains glyphs for whitespace characters.
🍞 PASS: Font has **proper** whitespace glyph names? * [com.google.fonts/check/048](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/048) * 🍞 **PASS** Font has **proper** whitespace glyph names.
🍞 PASS: Whitespace glyphs have ink? * [com.google.fonts/check/049](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/049) * 🍞 **PASS** There is no whitespace glyph with ink.
🍞 PASS: Are there unwanted tables? * [com.google.fonts/check/053](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/053) * 🍞 **PASS** There are no unwanted tables.
🍞 PASS: Glyph names are all valid? * [com.google.fonts/check/058](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/058) * 🍞 **PASS** Glyph names are all valid.
🍞 PASS: Font contains unique glyph names? * [com.google.fonts/check/059](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/059) * 🍞 **PASS** Font contains unique glyph names.
🍞 PASS: Checking with fontTools.ttx * [com.google.fonts/check/ttx-roundtrip](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/ttx-roundtrip) * 🍞 **PASS** Hey! It all looks good!
🍞 PASS: Check all glyphs have codepoints assigned. * [com.google.fonts/check/077](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/077) * 🍞 **PASS** All glyphs have a codepoint value assigned.
🍞 PASS: Checking unitsPerEm value is reasonable. * [com.google.fonts/check/043](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/043) * 🍞 **PASS** unitsPerEm value (1000) on the 'head' table is reasonable.
🍞 PASS: Checking font version fields (head and name table). * [com.google.fonts/check/044](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/044) * 🍞 **PASS** All font version fields match.
🍞 PASS: Check if OS/2 xAvgCharWidth is correct. * [com.google.fonts/check/034](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/034) * 🍞 **PASS** OS/2 xAvgCharWidth value is correct.
🍞 PASS: Font has correct post table version (2 for TTF, 3 for OTF)? * [com.google.fonts/check/015](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/015) * 🍞 **PASS** Font has post table version 2.
🍞 PASS: Description strings in the name table must not contain copyright info. * [com.google.fonts/check/031](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/031) * 🍞 **PASS** Description strings in the name table do not contain any copyright string.
🍞 PASS: Checking correctness of monospaced metadata. * [com.google.fonts/check/033](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/033) * 🍞 **PASS** Font is not monospaced and all related metadata look good. [code: good]
🍞 PASS: Name table entries should not contain line-breaks. * [com.google.fonts/check/057](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/057) * 🍞 **PASS** Name table entries are all single-line (no line-breaks found).
🍞 PASS: Does full font name begin with the font family name? * [com.google.fonts/check/068](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/068) * 🍞 **PASS** Full font name begins with the font family name.
🍞 PASS: Font follows the family naming recommendations? * [com.google.fonts/check/071](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/071) * 🍞 **PASS** Font follows the family naming recommendations.
🍞 PASS: Checking Vertical Metric Linegaps. * [com.google.fonts/check/041](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/041) * 🍞 **PASS** OS/2 sTypoLineGap and hhea lineGap are both 0.
🍞 PASS: MaxAdvanceWidth is consistent with values in the Hmtx and Hhea tables? * [com.google.fonts/check/073](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/073) * 🍞 **PASS** MaxAdvanceWidth is consistent with values in the Hmtx and Hhea tables.
🍞 PASS: Whitespace and non-breaking space have the same width? * [com.google.fonts/check/050](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/050) * 🍞 **PASS** Whitespace and non-breaking space have the same width.
🍞 PASS: Does GPOS table have kerning information? * [com.google.fonts/check/063](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/063) * 🍞 **PASS** GPOS table has got kerning information.
🍞 PASS: Is there a "kern" table declared in the font? * [com.google.fonts/check/066](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/066) * 🍞 **PASS** Font does not declare an optional "kern" table.
🍞 PASS: Is there any unused data at the end of the glyf table? * [com.google.fonts/check/069](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/069) * 🍞 **PASS** There is no unused data at the end of the glyf table.
🍞 PASS: Check for points out of bounds. * [com.google.fonts/check/075](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/075) * 🍞 **PASS** All glyph paths have coordinates within bounds!
🍞 PASS: The variable font 'wght' (Weight) axis coordinate must be 400 on the 'Regular' instance. * [com.google.fonts/check/167](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/167) * 🍞 **PASS** Regular:wght is 400.
🍞 PASS: The variable font 'wght' (Weight) axis coordinate must be 700 on the 'Bold' instance. * [com.google.fonts/check/172](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/172) * 🍞 **PASS** Bold:wght is 700.
🍞 PASS: The variable font 'wght' (Weight) axis coordinate must be within spec range of 1 to 1000 on all instances. * [com.google.fonts/check/wght_valid_range](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/wght_valid_range) * 🍞 **PASS** OK
🍞 PASS: Does the number of glyphs in the loca table match the maxp table? * [com.google.fonts/check/180](https://github.com/googlefonts/fontbakery/search?q=com.google.fonts/check/180) * 🍞 **PASS** 'loca' table matches numGlyphs in 'maxp' table.

### Summary | πŸ’” ERROR | πŸ”₯ FAIL | ⚠️ WARN | πŸ’€ SKIP | ℹ️ INFO | 🍞 PASS | |:-----:|:----:|:----:|:----:|:----:|:----:| | 0 | 5 | 7 | 66 | 7 | 57 | | 0% | 4% | 5% | 46% | 5% | 40% |