google / fonts

Font files available from Google Fonts, and a public issue tracker for all things Google Fonts
https://fonts.google.com
17.84k stars 2.6k forks source link

[HOTFIX] Concert One v-metrics #7779

Closed emmamarichal closed 1 month ago

emmamarichal commented 1 month ago

See the discussion here: https://github.com/google/fonts/issues/362

OS/2 and hhea table fixed + version bumped

github-actions[bot] commented 1 month ago

FontBakery report

fontbakery version: 0.12.6

Experimental checks

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

[2] ConcertOne-Regular.ttf
⚠️ WARN Validate location, size and resolution of article images.
* ⚠️ **WARN**

Family metadata at ofl/concertone does not have an article.

[code: lacks-article]
ℹ️ INFO METADATA.pb: Validate family.minisite_url field.
* ℹ️ **INFO**

Please consider adding a family.minisite_url entry.

[code: lacks-minisite-url]

All other checks

[38] ConcertOne-Regular.ttf
🔥 FAIL Ensure component transforms do not perform scaling or rotation.
* 🔥 **FAIL**

The following glyphs had components with scaling or rotation or inverted outline direction:

  • ordfeminine (component a)
[code: transformed-components]
🔥 FAIL METADATA.pb: Check URL on copyright string is the same as in repository_url field.
* 🔥 **FAIL**

Please add a family.source.repository_url entry.

[code: lacks-repo-url]
🔥 FAIL METADATA.pb font.full_name and font.post_script_name fields have equivalent values ?
* 🔥 **FAIL**

METADATA.pb font full_name = "Concert One" does not match post_script_name = "ConcertOne-Regular"

[code: mismatch]
🔥 FAIL METADATA.pb subsets should be alphabetically ordered.
* 🔥 **FAIL**

METADATA.pb subsets are not sorted in alphabetical order: Got ['menu', 'latin', 'latin-ext'] and expected ['latin', 'latin-ext', 'menu']

[code: not-sorted]
🔥 FAIL Copyright notices match canonical pattern in METADATA.pb
* 🔥 **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) 2011, 2011 johan kallas (johankallas@gmail.com), copyright (c) 2011, 2011 mihkel virkus (mihkelvirkus@gmail.com), with reserved font name concert."

[code: bad-notice-format]
🔥 FAIL Shapes languages in all GF glyphsets.
* 🔥 **FAIL**

No GF glyphset was found to be supported >80%, so language shaping support couldn't get checked.

[code: no-glyphset-supported]
🔥 FAIL Does DESCRIPTION file contain broken links?
* 🔥 **FAIL**

Found an email address: mailto:johankallas@gmail.com

[code: email] * 🔥 **FAIL**

Found an email address: mailto:mihkelvirkus@gmail.com

[code: email]
🔥 FAIL Does DESCRIPTION file contain a upstream Git repo 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 Name table strings must not contain the string 'Reserved Font Name'.
* 🔥 **FAIL**

Name table entry contains "Reserved Font Name": "Copyright (c) 2011, 2011 Johan Kallas (johankallas@gmail.com), Copyright (c) 2011, 2011 Mihkel Virkus (mihkelvirkus@gmail.com), with Reserved Font Name Concert."

This is an error except in a few specific rare cases.

[code: rfn] * 🔥 **FAIL**

Name table entry contains "Reserved Font Name": "Copyright (c) 2011, 2011 Johan Kallas (johankallas@gmail.com), Copyright (c) 2011, 2011 Mihkel Virkus (mihkelvirkus@gmail.com), with Reserved Font Name Concert."

This is an error except in a few specific rare cases.

[code: rfn]
🔥 FAIL Check license file has good copyright string.
* 🔥 **FAIL**

First line in license file is:

"copyright (c) 2011 johan kallas (johankallas@gmail.com),"

which does not match the expected format, similar to:

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

[code: bad-format]
🔥 FAIL Copyright notices match canonical pattern in fonts
* 🔥 **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, 2011 Johan Kallas (johankallas@gmail.com), Copyright (c) 2011, 2011 Mihkel Virkus (mihkelvirkus@gmail.com), with Reserved Font Name Concert."

[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, 2011 Johan Kallas (johankallas@gmail.com), Copyright (c) 2011, 2011 Mihkel Virkus (mihkelvirkus@gmail.com), with Reserved Font Name Concert."

[code: bad-notice-format]
🔥 FAIL Check Google Fonts glyph coverage.
* 🔥 **FAIL**

Missing required codepoints:

- 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)

- 0x010E (LATIN CAPITAL LETTER D WITH CARON)

- 0x010F (LATIN SMALL LETTER D WITH CARON)

- 96 more.

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

[code: missing-codepoints]
🔥 FAIL Font enables smart dropout control in "prep" table instructions?
* 🔥 **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 GPOS table have kerning information? This check skips monospaced fonts as defined by post.isFixedPitch value
* ⚠️ **WARN**

GPOS table lacks kerning information.

[code: lacks-kern-info]
⚠️ WARN Check math signs have the same width.
* ⚠️ **WARN**

The most common width is 1102 among a set of 2 math glyphs. The following math glyphs have a different width, though:

Width = 930: less, greater

Width = 1492: logicalnot

Width = 1058: plusminus

Width = 1276: multiply

Width = 1396: divide

Width = 1038: minus

[code: width-outliers]
⚠️ WARN Check font contains no unreachable glyphs
* ⚠️ **WARN**

The following glyphs could not be reached by codepoint or substitution rules:

- nonmarkingreturn
[code: unreachable-glyphs]
⚠️ WARN Are there any misaligned on-curve points?
* ⚠️ **WARN**

The following glyphs have on-curve points which have potentially incorrect y coordinates:

* exclam (U+0021): X=392.0,Y=1398.0 (should be at cap-height 1400?)

* exclam (U+0021): X=392.0,Y=-2.0 (should be at baseline 0?)

* ampersand (U+0026): X=1036.0,Y=-2.0 (should be at baseline 0?)

* one (U+0031): X=484.0,Y=1399.5 (should be at cap-height 1400?)

* three (U+0033): X=582.0,Y=2.0 (should be at baseline 0?)

* five (U+0035): X=604.0,Y=2.0 (should be at baseline 0?)

* K (U+004B): X=962.5,Y=-2.0 (should be at baseline 0?)

* K (U+004B): X=835.0,Y=2.0 (should be at baseline 0?)

* R (U+0052): X=960.5,Y=-1.5 (should be at baseline 0?)

* bracketleft (U+005B): X=590.0,Y=2.0 (should be at baseline 0?)

* 41 more.

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

[code: found-misalignments]
⚠️ WARN Do any segments have colinear vectors?
* ⚠️ **WARN**

The following glyphs have colinear vectors:

* bar (U+007C): L<<424.0,1422.0>--<424.0,40.0>> -> L<<424.0,40.0>--<424.0,-16.0>>

* brokenbar (U+00A6): L<<452.0,1422.0>--<452.0,1018.0>> -> L<<452.0,1018.0>--<452.0,962.0>>

* brokenbar (U+00A6): L<<452.0,442.0>--<452.0,40.0>> -> L<<452.0,40.0>--<452.0,-16.0>>

* divide (U+00F7): L<<1110.0,602.0>--<356.0,602.0>> -> L<<356.0,602.0>--<300.0,602.0>>

* emdash (U+2014): L<<1382.0,482.0>--<376.0,482.0>> -> L<<376.0,482.0>--<320.0,482.0>>

* endash (U+2013): L<<726.0,478.0>--<340.0,478.0>> -> L<<340.0,478.0>--<284.0,478.0>>

* equal (U+003D): L<<766.0,290.0>--<380.0,290.0>> -> L<<380.0,290.0>--<324.0,290.0>>

* equal (U+003D): L<<770.0,682.0>--<384.0,682.0>> -> L<<384.0,682.0>--<328.0,682.0>>

* fraction (U+2044): L<<714.0,664.0>--<254.0,664.0>> -> L<<254.0,664.0>--<228.0,664.0>>

* hyphen (U+002D): L<<694.0,480.0>--<308.0,480.0>> -> L<<308.0,480.0>--<252.0,480.0>>

* 12 more.

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

[code: found-colinear-vectors]
⚠️ WARN Check the direction of the outermost contour in each glyph
* ⚠️ **WARN**

The following glyphs have a counter-clockwise outer contour:

* A (U+0041) has a counter-clockwise outer contour

* Aacute (U+00C1) has a counter-clockwise outer contour

* Acircumflex (U+00C2) has a counter-clockwise outer contour

* Adieresis (U+00C4) has a counter-clockwise outer contour

* Agrave (U+00C0) has a counter-clockwise outer contour

* Amacron (U+0100) has a counter-clockwise outer contour

* Aring (U+00C5) has a counter-clockwise outer contour

* Aring (U+00C5) has a counter-clockwise outer contour

* Atilde (U+00C3) has a counter-clockwise outer contour

* aring (U+00E5) has a counter-clockwise outer contour

* 5 more.

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

[code: ccw-outer-contour]
⚠️ WARN METADATA.pb: Designers are listed correctly on the Google Fonts catalog?
* ⚠️ **WARN**

It seems that Mihkel Virkus 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]
⚠️ WARN Copyright notice on METADATA.pb should not contain 'Reserved Font Name'.
* ⚠️ **WARN**

METADATA.pb: copyright field ("Copyright (c) 2011, 2011 Johan Kallas (johankallas@gmail.com), Copyright (c) 2011, 2011 Mihkel Virkus (mihkelvirkus@gmail.com), with Reserved Font Name Concert.") contains "Reserved Font Name". This is an error except in a few specific rare cases.

[code: rfn]
⚠️ WARN Check for codepoints not covered by METADATA subsets.
* ⚠️ **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+02C7 CARON: try adding one of: tifinagh, yi, canadian-aboriginal
  • U+02D8 BREVE: try adding one of: yi, canadian-aboriginal
  • U+02D9 DOT ABOVE: try adding one of: yi, canadian-aboriginal
  • U+02DB OGONEK: try adding one of: yi, canadian-aboriginal
  • U+02DD DOUBLE ACUTE ACCENT: not included in any glyphset definition
  • U+2082 SUBSCRIPT TWO: not included in any glyphset definition
  • U+2084 SUBSCRIPT FOUR: not included in any glyphset definition

Or you can add the above codepoints to one of the subsets supported by the font: menu, latin, latin-ext

[code: unreachable-subsetting]
⚠️ WARN DESCRIPTION.en_us.html should end in a linebreak.
* ⚠️ **WARN**

The last characther on DESCRIPTION.en_us.html is not a line-break. Please add it.

[code: missing-eof-linebreak]
⚠️ WARN On a family update, the DESCRIPTION.en_us.html file should ideally also be updated.
* ⚠️ **WARN**

The DESCRIPTION.en_us.html file in this family has not changed in comparison to the latest font release on the google/fonts github repo. Please consider mentioning note-worthy improvements made to the family recently.

[code: description-not-updated]
⚠️ WARN Check copyright namerecords match license file.
* ⚠️ **WARN**

Please consider using HTTPS URLs at name table entry [plat=1, enc=0, name=13]

[code: http-in-description] * ⚠️ **WARN**

Please consider updating the url from 'https://scripts.sil.org/OFL' to 'https://openfontlicense.org'.

[code: old-url]
⚠️ WARN License URL matches License text on name table?
* ⚠️ **WARN**

Please consider using HTTPS URLs at name table entry [plat=1, enc=0, name=13]

[code: http-in-description] * ⚠️ **WARN**

Please consider using HTTPS URLs at name table entry [plat=3, enc=1, name=13]

[code: http-in-description] * ⚠️ **WARN**

Please consider using HTTPS URLs at name table entry [plat=1, enc=0, name=13]

[code: http-in-description] * ⚠️ **WARN**

Please consider using HTTPS URLs at name table entry [plat=3, enc=1, name=13]

[code: http-in-description] * ⚠️ **WARN**

Please consider using HTTPS URLs at name table entry [plat=1, enc=0, name=13]

[code: http-in-description] * ⚠️ **WARN**

Please consider using HTTPS URLs at name table entry [plat=3, enc=1, name=13]

[code: http-in-description]
⚠️ WARN Check OFL body text is correct.
* ⚠️ **WARN**

The OFL.txt body text is incorrect. Please use https://github.com/googlefonts/Unified-Font-Repository/blob/main/OFL.txt as a template. You should only modify the first line.

Lines changed:

+ Copyright (c) 2011 Mihkel Virkus (mihkelvirkus@gmail.com),\n

+ with Reserved Font Names "Concert" and "Concert One".\n

[code: incorrect-ofl-body-text]
⚠️ WARN Check font names are correct
* ⚠️ **WARN**

Regular missing from full name

[code: lacks-regular]
⚠️ WARN Ensure fonts have ScriptLangTags declared on the 'meta' table.
* ⚠️ **WARN**

This font file does not have a 'meta' table.

[code: lacks-meta-table]
⚠️ WARN Checking OS/2 achVendID.
* ⚠️ **WARN**

OS/2 VendorID value 'pyrs' 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]
ℹ️ INFO Check if OS/2 xAvgCharWidth is correct.
* ℹ️ **INFO**

OS/2 xAvgCharWidth is 1013 but it should be 1015 which corresponds to the average of the widths of all glyphs in the font. These are similar values, which may be a symptom of the slightly different calculation of the xAvgCharWidth value in font editors. There's further discussion on this at https://github.com/fonttools/fontbakery/issues/1622

[code: xAvgCharWidth-close]
ℹ️ INFO List all superfamily filepaths
* ℹ️ **INFO**

ofl/concertone

[code: family-path]
ℹ️ INFO Font contains all required tables?
* ℹ️ **INFO**

This font contains the following optional tables:

- cvt 

- fpgm

- loca

- prep

- gasp
[code: optional-tables]
ℹ️ INFO Check for presence of an ARTICLE.en_us.html file
* ℹ️ **INFO**

This font doesn't have an ARTICLE.en_us.html file.

[code: missing-article]
ℹ️ INFO EPAR table present in font?
* ℹ️ **INFO**

EPAR table not present in font. To learn more see https://github.com/fonttools/fontbakery/issues/818

[code: lacks-EPAR]
ℹ️ INFO Is the Grid-fitting and Scan-conversion Procedure ('gasp') table set to optimize rendering?
* ℹ️ **INFO**

These are the ppm ranges declared on the gasp table:

PPM <= 65535: flag = 0x0F - Use grid-fitting - Use grayscale rendering - Use gridfitting with ClearType symmetric smoothing - Use smoothing along multiple axes with ClearType®

[code: ranges]
ℹ️ INFO Show hinting filesize impact.
* ℹ️ **INFO**

Hinting filesize impact:

ofl/concertone/ConcertOne-Regular.ttf
Dehinted Size 43.4kb
Hinted Size 69.4kb
Increase 25.9kb
Change 59.7 %
[code: size-impact]
ℹ️ INFO Font has old ttfautohint applied?
* ℹ️ **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.004', 'Version 1.004']

[code: version-not-detected]
[2] Family checks
🔥 FAIL OS/2.fsSelection bit 7 (USE_TYPO_METRICS) is set in all fonts.
* 🔥 **FAIL**

OS/2.fsSelection bit 7 (USE_TYPO_METRICS) wasNOT set in the following fonts: ['ofl/concertone/ConcertOne-Regular.ttf'].

[code: missing-os2-fsselection-bit7]
ℹ️ INFO Check axis ordering on the STAT table.
* ℹ️ **INFO**

All of the fonts lack a STAT table.

[code: summary]

Summary

💥 ERROR ☠ FATAL 🔥 FAIL ⚠️ WARN ⏩ SKIP ℹ️ INFO ✅ PASS 🔎 DEBUG
0 0 14 18 67 10 142 0
0% 0% 6% 7% 27% 4% 57% 0%

Note: The following loglevels were omitted in this report:

vv-monsalve commented 1 month ago

Following the linked issue, LGTM.