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

Bungee Hairline: Version 2.000 added #7795

Closed vv-monsalve closed 1 month ago

vv-monsalve commented 1 month ago

Taken from the upstream repo https://github.com/djrrb/Bungee at commit https://github.com/djrrb/Bungee/commit/eb03cf69adab5094f6b84e95357789cdf3bfeb99.

PR Checklist:

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.

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

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

[code: lacks-article]

All other checks

[25] BungeeHairline-Regular.ttf
🔥 FAIL Check accent of Lcaron, dcaron, lcaron, tcaron
* 🔥 **FAIL**

dcaron uses component caroncmb.

[code: wrong-mark] * 🔥 **FAIL**

tcaron uses component caroncmb.

[code: wrong-mark] * ⚠️ **WARN**

Lcaron is decomposed and therefore could not be checked. Please check manually.

[code: decomposed-outline] * ⚠️ **WARN**

lcaron is composed of a single component and therefore could not be checked. Please check manually.

[code: single-component]
🔥 FAIL Check if each glyph has the recommended amount of contours.
* 🔥 **FAIL**

The following glyphs have no contours even though they were expected to have some:

- Glyph name: whiteuppointingtriangle    Expected: 2

- Glyph name: whiterightpointingtriangle    Expected: 2

- Glyph name: whitedownpointingtriangle Expected: 2

- Glyph name: whiteleftpointingtriangle Expected: 2
[code: no-contour] * ⚠️ **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: ae    Contours detected: 2    Expected: 3

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

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

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

- 87 more.

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

[code: contour-count]
🔥 FAIL Check license file has good copyright string.
* 🔥 **FAIL**

First line in license file is:

"copyright 2008 the bungee project authors (david@djr.com)"

which does not match the expected format, similar to:

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

[code: bad-format]
🔥 FAIL Check if the vertical metrics of a family are similar to the same family hosted on Google Fonts.
* 🔥 **FAIL**

Bungee Hairline Regular: OS/2 sTypoAscender is 1020 when it should be 1614

[code: bad-typo-ascender] * 🔥 **FAIL**

Bungee Hairline Regular: OS/2 sTypoDescender is -300 when it should be -894

[code: bad-typo-descender] * 🔥 **FAIL**

Bungee Hairline Regular: hhea Ascender is 1020 when it should be 1614

[code: bad-hhea-ascender] * 🔥 **FAIL**

Bungee Hairline Regular: hhea Descender is -300 when it should be -894

[code: bad-hhea-descender]
⚠️ WARN Check glyphs in mark glyph class are non-spacing.
* ⚠️ **WARN**

The following spacing glyphs may be in the GDEF mark glyph class by mistake: commaaccent (U+0326) and commaaccent (U+F6C3)

[code: spacing-mark-glyphs]
⚠️ WARN Check mark characters are in GDEF mark glyph class.
* ⚠️ **WARN**

The following mark characters could be in the GDEF mark glyph class: horncmb (U+031B)

[code: mark-chars]
⚠️ WARN Check math signs have the same width.
* ⚠️ **WARN**

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

Width = 714: greaterequal, lessequal, greater, less

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

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

- Tcedilla

- breveacute

- brevegrave

- brevehookabove

- brevetilde

- circumflexacute

- circumflextilde

- commaaccentcmb

- periodcentered.v

- tcedilla
[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:

* Eng (U+014A): X=445.0,Y=1.0 (should be at baseline 0?)

* summation (U+2211): X=514.0,Y=1.0 (should be at baseline 0?)

* summation (U+2211): X=180.0,Y=1.0 (should be at baseline 0?)

* integral (U+222B): X=105.0,Y=2.0 (should be at baseline 0?)

* integral (U+222B): X=359.0,Y=718.0 (should be at cap-height 720?)

* Aogonek.v (U+E192): X=636.0,Y=-1.0 (should be at baseline 0?)

* Eogonek.v (U+E1A0): X=625.0,Y=-1.0 (should be at baseline 0?)

* Iogonek.v (U+E1AE): X=626.0,Y=-1.0 (should be at baseline 0?)

* Eng.v (U+E1E9): X=563.0,Y=1.0 (should be at baseline 0?)

* Eogonek.salt_v (U+E1FF): X=625.0,Y=-1.0 (should be at baseline 0?)

* 5 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:

* Abrevetilde (U+1EB4): L<<336.0,1115.0>--<364.0,1111.0>> -> L<<364.0,1111.0>--<380.0,1109.0>>

* Abrevetilde (U+1EB4): L<<378.0,1099.0>--<362.0,1101.0>> -> L<<362.0,1101.0>--<334.0,1105.0>>

* Acircumflextilde (U+1EAA): L<<336.0,1105.0>--<364.0,1101.0>> -> L<<364.0,1101.0>--<380.0,1099.0>>

* Acircumflextilde (U+1EAA): L<<378.0,1089.0>--<362.0,1091.0>> -> L<<362.0,1091.0>--<334.0,1095.0>>

* Atilde (U+00C3): L<<336.0,855.0>--<364.0,851.0>> -> L<<364.0,851.0>--<380.0,849.0>>

* Atilde (U+00C3): L<<378.0,839.0>--<362.0,841.0>> -> L<<362.0,841.0>--<334.0,845.0>>

* Atilde.salt (U+E104): L<<339.0,855.0>--<367.0,851.0>> -> L<<367.0,851.0>--<383.0,849.0>>

* Atilde.salt (U+E104): L<<381.0,839.0>--<365.0,841.0>> -> L<<365.0,841.0>--<337.0,845.0>>

* Atilde.salt_v (U+E1F1): L<<471.0,815.0>--<499.0,811.0>> -> L<<499.0,811.0>--<515.0,809.0>>

* Atilde.salt_v (U+E1F1): L<<513.0,799.0>--<497.0,801.0>> -> L<<497.0,801.0>--<469.0,805.0>>

* 86 more.

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

[code: found-colinear-vectors]
⚠️ WARN Do outlines contain any jaggy segments?
* ⚠️ **WARN**

The following glyphs have jaggy segments:

* indianrupee (U+20B9): B<<366.5,320.5>-<354.0,291.0>-<316.0,280.0>>/L<<316.0,280.0>--<340.0,281.0>> = 13.758394749894615

* indianrupee (U+20B9): L<<129.0,272.0>--<176.0,274.0>>/L<<176.0,274.0>--<129.0,274.0>> = 2.436648246810141

* indianrupee (U+20B9): L<<340.0,272.0>--<129.0,272.0>>/L<<129.0,272.0>--<176.0,274.0>> = 2.436648246810141

* onethird (U+2153): B<<997.5,291.0>-<990.0,271.0>-<957.0,264.0>>/L<<957.0,264.0>--<968.0,264.0>> = 11.976132444203333

* three (U+0033): B<<402.0,388.5>-<388.0,374.0>-<358.0,367.0>>/L<<358.0,367.0>--<374.0,367.0>> = 13.134022306396327

* three.sinf (U+2083): B<<312.5,291.0>-<305.0,271.0>-<272.0,264.0>>/L<<272.0,264.0>--<283.0,264.0>> = 11.976132444203333

* three.sups: B<<312.5,493.0>-<305.0,473.0>-<272.0,466.0>>/L<<272.0,466.0>--<283.0,466.0>> = 11.976132444203333

* three.v (U+FF13): B<<608.0,388.5>-<594.0,374.0>-<564.0,367.0>>/L<<564.0,367.0>--<580.0,367.0>> = 13.134022306396327

* threeeighths (U+215C): B<<312.5,493.0>-<305.0,473.0>-<272.0,466.0>>/L<<272.0,466.0>--<283.0,466.0>> = 11.976132444203333

* threequarters (U+00BE): B<<312.5,493.0>-<305.0,473.0>-<272.0,466.0>>/L<<272.0,466.0>--<283.0,466.0>> = 11.976132444203333

* threesuperior (U+00B3): B<<312.5,493.0>-<305.0,473.0>-<272.0,466.0>>/L<<272.0,466.0>--<283.0,466.0>> = 11.976132444203333

* twothirds (U+2154): B<<997.5,291.0>-<990.0,271.0>-<957.0,264.0>>/L<<957.0,264.0>--<968.0,264.0>> = 11.976132444203333
[code: found-jaggy-segments]
⚠️ WARN Do outlines contain any semi-vertical or semi-horizontal lines?
* ⚠️ **WARN**

The following glyphs have semi-vertical/semi-horizontal lines:

* M.v (U+FF4D): L<<277.0,90.0>--<279.0,599.0>>

* M.v (U+FF4D): L<<289.0,599.0>--<287.0,90.0>>

* M.v (U+FF4D): L<<705.0,90.0>--<703.0,599.0>>

* M.v (U+FF4D): L<<713.0,599.0>--<715.0,90.0>>
[code: found-semi-vertical]
⚠️ WARN Ensure dotted circle glyph is present and can attach marks.
* ⚠️ **WARN**

No dotted circle glyph present

[code: missing-dotted-circle]
⚠️ 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+02BE MODIFIER LETTER RIGHT HALF RING: not included in any glyphset definition
  • U+02BF MODIFIER LETTER LEFT HALF RING: not included in any glyphset definition
  • U+02C7 CARON: try adding one of: canadian-aboriginal, yi, tifinagh
  • U+02C8 MODIFIER LETTER VERTICAL LINE: not included in any glyphset definition
  • U+02C9 MODIFIER LETTER MACRON: not included in any glyphset definition
  • U+02CA MODIFIER LETTER ACUTE ACCENT: not included in any glyphset definition
  • U+02CB MODIFIER LETTER GRAVE ACCENT: not included in any glyphset definition
  • U+02CC MODIFIER LETTER LOW VERTICAL LINE: not included in any glyphset definition
  • U+02D8 BREVE: try adding one of: canadian-aboriginal, yi
  • U+02D9 DOT ABOVE: try adding one of: canadian-aboriginal, yi 535 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, latin-ext, menu, vietnamese

[code: unreachable-subsetting]
⚠️ WARN Is there kerning info for non-ligated sequences?
* ⚠️ **WARN**

GPOS table lacks kerning info for the following non-ligated sequences:

- I.salt_v + I.salt_v
[code: lacks-kern-info]
⚠️ WARN Are there caret positions declared for every ligature?
* ⚠️ **WARN**

This font lacks caret position values for ligature glyphs on its GDEF table.

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

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

[code: lacks-meta-table]
ℹ️ INFO List all superfamily filepaths
* ℹ️ **INFO**

ofl/bungeehairline

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

This font contains the following optional tables:

- loca

- prep

- GPOS

- GSUB

- gasp

- vhea

- vmtx
[code: optional-tables]
ℹ️ INFO Does DESCRIPTION file contain a upstream Git repo URL?
* ℹ️ **INFO**

Found a git repo URL: https://github.com/djrrb/Bungee

[code: url-found]
ℹ️ 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/bungeehairline/BungeeHairline-Regular.ttf
Dehinted Size 102.2kb
Hinted Size 102.2kb
Increase 24 bytes
Change 0.0 %
[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 2.000']

[code: version-not-detected]
[1] Family checks
ℹ️ 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 4 14 62 9 162 0
0% 0% 2% 6% 25% 4% 65% 0%

Note: The following loglevels were omitted in this report:

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.

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

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

[code: lacks-article]

All other checks

[24] BungeeHairline-Regular.ttf
🔥 FAIL Check accent of Lcaron, dcaron, lcaron, tcaron
* 🔥 **FAIL**

dcaron uses component caroncmb.

[code: wrong-mark] * 🔥 **FAIL**

tcaron uses component caroncmb.

[code: wrong-mark] * ⚠️ **WARN**

Lcaron is decomposed and therefore could not be checked. Please check manually.

[code: decomposed-outline] * ⚠️ **WARN**

lcaron is composed of a single component and therefore could not be checked. Please check manually.

[code: single-component]
🔥 FAIL Check if each glyph has the recommended amount of contours.
* 🔥 **FAIL**

The following glyphs have no contours even though they were expected to have some:

- Glyph name: whiteuppointingtriangle    Expected: 2

- Glyph name: whiterightpointingtriangle    Expected: 2

- Glyph name: whitedownpointingtriangle Expected: 2

- Glyph name: whiteleftpointingtriangle Expected: 2
[code: no-contour] * ⚠️ **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: ae    Contours detected: 2    Expected: 3

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

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

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

- 87 more.

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

[code: contour-count]
🔥 FAIL Check if the vertical metrics of a family are similar to the same family hosted on Google Fonts.
* 🔥 **FAIL**

Bungee Hairline Regular: OS/2 sTypoAscender is 1020 when it should be 1614

[code: bad-typo-ascender] * 🔥 **FAIL**

Bungee Hairline Regular: OS/2 sTypoDescender is -300 when it should be -894

[code: bad-typo-descender] * 🔥 **FAIL**

Bungee Hairline Regular: hhea Ascender is 1020 when it should be 1614

[code: bad-hhea-ascender] * 🔥 **FAIL**

Bungee Hairline Regular: hhea Descender is -300 when it should be -894

[code: bad-hhea-descender]
⚠️ WARN Check glyphs in mark glyph class are non-spacing.
* ⚠️ **WARN**

The following spacing glyphs may be in the GDEF mark glyph class by mistake: commaaccent (U+0326) and commaaccent (U+F6C3)

[code: spacing-mark-glyphs]
⚠️ WARN Check mark characters are in GDEF mark glyph class.
* ⚠️ **WARN**

The following mark characters could be in the GDEF mark glyph class: horncmb (U+031B)

[code: mark-chars]
⚠️ WARN Check math signs have the same width.
* ⚠️ **WARN**

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

Width = 714: lessequal, greater, less, greaterequal

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

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

- Tcedilla

- breveacute

- brevegrave

- brevehookabove

- brevetilde

- circumflexacute

- circumflextilde

- commaaccentcmb

- periodcentered.v

- tcedilla
[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:

* Eng (U+014A): X=445.0,Y=1.0 (should be at baseline 0?)

* summation (U+2211): X=514.0,Y=1.0 (should be at baseline 0?)

* summation (U+2211): X=180.0,Y=1.0 (should be at baseline 0?)

* integral (U+222B): X=105.0,Y=2.0 (should be at baseline 0?)

* integral (U+222B): X=359.0,Y=718.0 (should be at cap-height 720?)

* Aogonek.v (U+E192): X=636.0,Y=-1.0 (should be at baseline 0?)

* Eogonek.v (U+E1A0): X=625.0,Y=-1.0 (should be at baseline 0?)

* Iogonek.v (U+E1AE): X=626.0,Y=-1.0 (should be at baseline 0?)

* Eng.v (U+E1E9): X=563.0,Y=1.0 (should be at baseline 0?)

* Eogonek.salt_v (U+E1FF): X=625.0,Y=-1.0 (should be at baseline 0?)

* 5 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:

* Abrevetilde (U+1EB4): L<<336.0,1115.0>--<364.0,1111.0>> -> L<<364.0,1111.0>--<380.0,1109.0>>

* Abrevetilde (U+1EB4): L<<378.0,1099.0>--<362.0,1101.0>> -> L<<362.0,1101.0>--<334.0,1105.0>>

* Acircumflextilde (U+1EAA): L<<336.0,1105.0>--<364.0,1101.0>> -> L<<364.0,1101.0>--<380.0,1099.0>>

* Acircumflextilde (U+1EAA): L<<378.0,1089.0>--<362.0,1091.0>> -> L<<362.0,1091.0>--<334.0,1095.0>>

* Atilde (U+00C3): L<<336.0,855.0>--<364.0,851.0>> -> L<<364.0,851.0>--<380.0,849.0>>

* Atilde (U+00C3): L<<378.0,839.0>--<362.0,841.0>> -> L<<362.0,841.0>--<334.0,845.0>>

* Atilde.salt (U+E104): L<<339.0,855.0>--<367.0,851.0>> -> L<<367.0,851.0>--<383.0,849.0>>

* Atilde.salt (U+E104): L<<381.0,839.0>--<365.0,841.0>> -> L<<365.0,841.0>--<337.0,845.0>>

* Atilde.salt_v (U+E1F1): L<<471.0,815.0>--<499.0,811.0>> -> L<<499.0,811.0>--<515.0,809.0>>

* Atilde.salt_v (U+E1F1): L<<513.0,799.0>--<497.0,801.0>> -> L<<497.0,801.0>--<469.0,805.0>>

* 86 more.

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

[code: found-colinear-vectors]
⚠️ WARN Do outlines contain any jaggy segments?
* ⚠️ **WARN**

The following glyphs have jaggy segments:

* indianrupee (U+20B9): B<<366.5,320.5>-<354.0,291.0>-<316.0,280.0>>/L<<316.0,280.0>--<340.0,281.0>> = 13.758394749894615

* indianrupee (U+20B9): L<<129.0,272.0>--<176.0,274.0>>/L<<176.0,274.0>--<129.0,274.0>> = 2.436648246810141

* indianrupee (U+20B9): L<<340.0,272.0>--<129.0,272.0>>/L<<129.0,272.0>--<176.0,274.0>> = 2.436648246810141

* onethird (U+2153): B<<997.5,291.0>-<990.0,271.0>-<957.0,264.0>>/L<<957.0,264.0>--<968.0,264.0>> = 11.976132444203333

* three (U+0033): B<<402.0,388.5>-<388.0,374.0>-<358.0,367.0>>/L<<358.0,367.0>--<374.0,367.0>> = 13.134022306396327

* three.sinf (U+2083): B<<312.5,291.0>-<305.0,271.0>-<272.0,264.0>>/L<<272.0,264.0>--<283.0,264.0>> = 11.976132444203333

* three.sups: B<<312.5,493.0>-<305.0,473.0>-<272.0,466.0>>/L<<272.0,466.0>--<283.0,466.0>> = 11.976132444203333

* three.v (U+FF13): B<<608.0,388.5>-<594.0,374.0>-<564.0,367.0>>/L<<564.0,367.0>--<580.0,367.0>> = 13.134022306396327

* threeeighths (U+215C): B<<312.5,493.0>-<305.0,473.0>-<272.0,466.0>>/L<<272.0,466.0>--<283.0,466.0>> = 11.976132444203333

* threequarters (U+00BE): B<<312.5,493.0>-<305.0,473.0>-<272.0,466.0>>/L<<272.0,466.0>--<283.0,466.0>> = 11.976132444203333

* threesuperior (U+00B3): B<<312.5,493.0>-<305.0,473.0>-<272.0,466.0>>/L<<272.0,466.0>--<283.0,466.0>> = 11.976132444203333

* twothirds (U+2154): B<<997.5,291.0>-<990.0,271.0>-<957.0,264.0>>/L<<957.0,264.0>--<968.0,264.0>> = 11.976132444203333
[code: found-jaggy-segments]
⚠️ WARN Do outlines contain any semi-vertical or semi-horizontal lines?
* ⚠️ **WARN**

The following glyphs have semi-vertical/semi-horizontal lines:

* M.v (U+FF4D): L<<277.0,90.0>--<279.0,599.0>>

* M.v (U+FF4D): L<<289.0,599.0>--<287.0,90.0>>

* M.v (U+FF4D): L<<705.0,90.0>--<703.0,599.0>>

* M.v (U+FF4D): L<<713.0,599.0>--<715.0,90.0>>
[code: found-semi-vertical]
⚠️ WARN Ensure dotted circle glyph is present and can attach marks.
* ⚠️ **WARN**

No dotted circle glyph present

[code: missing-dotted-circle]
⚠️ 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+02BE MODIFIER LETTER RIGHT HALF RING: not included in any glyphset definition
  • U+02BF MODIFIER LETTER LEFT HALF RING: not included in any glyphset definition
  • U+02C7 CARON: try adding one of: yi, canadian-aboriginal, tifinagh
  • U+02C8 MODIFIER LETTER VERTICAL LINE: not included in any glyphset definition
  • U+02C9 MODIFIER LETTER MACRON: not included in any glyphset definition
  • U+02CA MODIFIER LETTER ACUTE ACCENT: not included in any glyphset definition
  • U+02CB MODIFIER LETTER GRAVE ACCENT: not included in any glyphset definition
  • U+02CC MODIFIER LETTER LOW VERTICAL LINE: not included in any glyphset definition
  • U+02D8 BREVE: try adding one of: yi, canadian-aboriginal
  • U+02D9 DOT ABOVE: try adding one of: yi, canadian-aboriginal 535 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, latin-ext, menu, vietnamese

[code: unreachable-subsetting]
⚠️ WARN Is there kerning info for non-ligated sequences?
* ⚠️ **WARN**

GPOS table lacks kerning info for the following non-ligated sequences:

- I.salt_v + I.salt_v
[code: lacks-kern-info]
⚠️ WARN Are there caret positions declared for every ligature?
* ⚠️ **WARN**

This font lacks caret position values for ligature glyphs on its GDEF table.

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

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

[code: lacks-meta-table]
ℹ️ INFO List all superfamily filepaths
* ℹ️ **INFO**

ofl/bungeehairline

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

This font contains the following optional tables:

- loca

- prep

- GPOS

- GSUB

- gasp

- vhea

- vmtx
[code: optional-tables]
ℹ️ INFO Does DESCRIPTION file contain a upstream Git repo URL?
* ℹ️ **INFO**

Found a git repo URL: https://github.com/djrrb/Bungee

[code: url-found]
ℹ️ 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/bungeehairline/BungeeHairline-Regular.ttf
Dehinted Size 102.2kb
Hinted Size 102.2kb
Increase 24 bytes
Change 0.0 %
[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 2.000']

[code: version-not-detected]
[1] Family checks
ℹ️ 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 3 14 62 9 163 0
0% 0% 1% 6% 25% 4% 65% 0%

Note: The following loglevels were omitted in this report:

vv-monsalve commented 1 month ago

@emmamarichal

🔥 FAIL Check if each glyph has the recommended amount of contours.

Other than that, the same comments as in Bungee Regular.

github-actions[bot] commented 1 month ago

FontBakery report

fontbakery version: 0.12.7

Experimental checks

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

[1] BungeeHairline-Regular.ttf
⚠️ WARN Validate size, and resolution of article images, and ensure article page has minimum length and includes visual assets.
* ⚠️ **WARN**

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

[code: lacks-article]

All other checks

[24] BungeeHairline-Regular.ttf
🔥 FAIL Check accent of Lcaron, dcaron, lcaron, tcaron
* 🔥 **FAIL**

dcaron uses component caroncmb.

[code: wrong-mark] * 🔥 **FAIL**

tcaron uses component caroncmb.

[code: wrong-mark] * ⚠️ **WARN**

Lcaron is decomposed and therefore could not be checked. Please check manually.

[code: decomposed-outline] * ⚠️ **WARN**

lcaron is composed of a single component and therefore could not be checked. Please check manually.

[code: single-component]
🔥 FAIL Check if each glyph has the recommended amount of contours.
* 🔥 **FAIL**

The following glyphs have no contours even though they were expected to have some:

- Glyph name: whiteuppointingtriangle    Expected: 2

- Glyph name: whiterightpointingtriangle    Expected: 2

- Glyph name: whitedownpointingtriangle Expected: 2

- Glyph name: whiteleftpointingtriangle Expected: 2
[code: no-contour] * ⚠️ **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: ae    Contours detected: 2    Expected: 3

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

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

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

- 87 more.

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

[code: contour-count]
🔥 FAIL Check if the vertical metrics of a family are similar to the same family hosted on Google Fonts.
* 🔥 **FAIL**

Bungee Hairline Regular: OS/2 sTypoAscender is 1020 when it should be 1614

[code: bad-typo-ascender] * 🔥 **FAIL**

Bungee Hairline Regular: OS/2 sTypoDescender is -300 when it should be -894

[code: bad-typo-descender] * 🔥 **FAIL**

Bungee Hairline Regular: hhea Ascender is 1020 when it should be 1614

[code: bad-hhea-ascender] * 🔥 **FAIL**

Bungee Hairline Regular: hhea Descender is -300 when it should be -894

[code: bad-hhea-descender]
⚠️ WARN Check glyphs in mark glyph class are non-spacing.
* ⚠️ **WARN**

The following spacing glyphs may be in the GDEF mark glyph class by mistake: commaaccent (U+0326) and commaaccent (U+F6C3)

[code: spacing-mark-glyphs]
⚠️ WARN Check mark characters are in GDEF mark glyph class.
* ⚠️ **WARN**

The following mark characters could be in the GDEF mark glyph class: horncmb (U+031B)

[code: mark-chars]
⚠️ WARN Check math signs have the same width.
* ⚠️ **WARN**

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

Width = 714: greater, less, greaterequal, lessequal

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

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

- Tcedilla

- breveacute

- brevegrave

- brevehookabove

- brevetilde

- circumflexacute

- circumflextilde

- commaaccentcmb

- periodcentered.v

- tcedilla
[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:

* Eng (U+014A): X=445.0,Y=1.0 (should be at baseline 0?)

* summation (U+2211): X=514.0,Y=1.0 (should be at baseline 0?)

* summation (U+2211): X=180.0,Y=1.0 (should be at baseline 0?)

* integral (U+222B): X=105.0,Y=2.0 (should be at baseline 0?)

* integral (U+222B): X=359.0,Y=718.0 (should be at cap-height 720?)

* Aogonek.v (U+E192): X=636.0,Y=-1.0 (should be at baseline 0?)

* Eogonek.v (U+E1A0): X=625.0,Y=-1.0 (should be at baseline 0?)

* Iogonek.v (U+E1AE): X=626.0,Y=-1.0 (should be at baseline 0?)

* Eng.v (U+E1E9): X=563.0,Y=1.0 (should be at baseline 0?)

* Eogonek.salt_v (U+E1FF): X=625.0,Y=-1.0 (should be at baseline 0?)

* 5 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:

* Abrevetilde (U+1EB4): L<<336.0,1115.0>--<364.0,1111.0>> -> L<<364.0,1111.0>--<380.0,1109.0>>

* Abrevetilde (U+1EB4): L<<378.0,1099.0>--<362.0,1101.0>> -> L<<362.0,1101.0>--<334.0,1105.0>>

* Acircumflextilde (U+1EAA): L<<336.0,1105.0>--<364.0,1101.0>> -> L<<364.0,1101.0>--<380.0,1099.0>>

* Acircumflextilde (U+1EAA): L<<378.0,1089.0>--<362.0,1091.0>> -> L<<362.0,1091.0>--<334.0,1095.0>>

* Atilde (U+00C3): L<<336.0,855.0>--<364.0,851.0>> -> L<<364.0,851.0>--<380.0,849.0>>

* Atilde (U+00C3): L<<378.0,839.0>--<362.0,841.0>> -> L<<362.0,841.0>--<334.0,845.0>>

* Atilde.salt (U+E104): L<<339.0,855.0>--<367.0,851.0>> -> L<<367.0,851.0>--<383.0,849.0>>

* Atilde.salt (U+E104): L<<381.0,839.0>--<365.0,841.0>> -> L<<365.0,841.0>--<337.0,845.0>>

* Atilde.salt_v (U+E1F1): L<<471.0,815.0>--<499.0,811.0>> -> L<<499.0,811.0>--<515.0,809.0>>

* Atilde.salt_v (U+E1F1): L<<513.0,799.0>--<497.0,801.0>> -> L<<497.0,801.0>--<469.0,805.0>>

* 86 more.

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

[code: found-colinear-vectors]
⚠️ WARN Do outlines contain any jaggy segments?
* ⚠️ **WARN**

The following glyphs have jaggy segments:

* indianrupee (U+20B9): B<<366.5,320.5>-<354.0,291.0>-<316.0,280.0>>/L<<316.0,280.0>--<340.0,281.0>> = 13.758394749894615

* indianrupee (U+20B9): L<<129.0,272.0>--<176.0,274.0>>/L<<176.0,274.0>--<129.0,274.0>> = 2.436648246810141

* indianrupee (U+20B9): L<<340.0,272.0>--<129.0,272.0>>/L<<129.0,272.0>--<176.0,274.0>> = 2.436648246810141

* onethird (U+2153): B<<997.5,291.0>-<990.0,271.0>-<957.0,264.0>>/L<<957.0,264.0>--<968.0,264.0>> = 11.976132444203333

* three (U+0033): B<<402.0,388.5>-<388.0,374.0>-<358.0,367.0>>/L<<358.0,367.0>--<374.0,367.0>> = 13.134022306396327

* three.sinf (U+2083): B<<312.5,291.0>-<305.0,271.0>-<272.0,264.0>>/L<<272.0,264.0>--<283.0,264.0>> = 11.976132444203333

* three.sups: B<<312.5,493.0>-<305.0,473.0>-<272.0,466.0>>/L<<272.0,466.0>--<283.0,466.0>> = 11.976132444203333

* three.v (U+FF13): B<<608.0,388.5>-<594.0,374.0>-<564.0,367.0>>/L<<564.0,367.0>--<580.0,367.0>> = 13.134022306396327

* threeeighths (U+215C): B<<312.5,493.0>-<305.0,473.0>-<272.0,466.0>>/L<<272.0,466.0>--<283.0,466.0>> = 11.976132444203333

* threequarters (U+00BE): B<<312.5,493.0>-<305.0,473.0>-<272.0,466.0>>/L<<272.0,466.0>--<283.0,466.0>> = 11.976132444203333

* threesuperior (U+00B3): B<<312.5,493.0>-<305.0,473.0>-<272.0,466.0>>/L<<272.0,466.0>--<283.0,466.0>> = 11.976132444203333

* twothirds (U+2154): B<<997.5,291.0>-<990.0,271.0>-<957.0,264.0>>/L<<957.0,264.0>--<968.0,264.0>> = 11.976132444203333
[code: found-jaggy-segments]
⚠️ WARN Do outlines contain any semi-vertical or semi-horizontal lines?
* ⚠️ **WARN**

The following glyphs have semi-vertical/semi-horizontal lines:

* M.v (U+FF4D): L<<277.0,90.0>--<279.0,599.0>>

* M.v (U+FF4D): L<<289.0,599.0>--<287.0,90.0>>

* M.v (U+FF4D): L<<705.0,90.0>--<703.0,599.0>>

* M.v (U+FF4D): L<<713.0,599.0>--<715.0,90.0>>
[code: found-semi-vertical]
⚠️ WARN Ensure dotted circle glyph is present and can attach marks.
* ⚠️ **WARN**

No dotted circle glyph present

[code: missing-dotted-circle]
⚠️ 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+02BE MODIFIER LETTER RIGHT HALF RING: not included in any glyphset definition
  • U+02BF MODIFIER LETTER LEFT HALF RING: not included in any glyphset definition
  • U+02C7 CARON: try adding one of: canadian-aboriginal, tifinagh, yi
  • U+02C8 MODIFIER LETTER VERTICAL LINE: not included in any glyphset definition
  • U+02C9 MODIFIER LETTER MACRON: not included in any glyphset definition
  • U+02CA MODIFIER LETTER ACUTE ACCENT: not included in any glyphset definition
  • U+02CB MODIFIER LETTER GRAVE ACCENT: not included in any glyphset definition
  • U+02CC MODIFIER LETTER LOW VERTICAL LINE: not included in any glyphset definition
  • U+02D8 BREVE: try adding one of: canadian-aboriginal, yi
  • U+02D9 DOT ABOVE: try adding one of: canadian-aboriginal, yi 535 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, latin-ext, menu, vietnamese

[code: unreachable-subsetting]
⚠️ WARN Is there kerning info for non-ligated sequences?
* ⚠️ **WARN**

GPOS table lacks kerning info for the following non-ligated sequences:

- I.salt_v + I.salt_v
[code: lacks-kern-info]
⚠️ WARN Are there caret positions declared for every ligature?
* ⚠️ **WARN**

This font lacks caret position values for ligature glyphs on its GDEF table.

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

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

[code: lacks-meta-table]
ℹ️ INFO List all superfamily filepaths
* ℹ️ **INFO**

ofl/bungeehairline

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

This font contains the following optional tables:

- loca

- prep

- GPOS

- GSUB

- gasp

- vhea

- vmtx
[code: optional-tables]
ℹ️ INFO Does DESCRIPTION file contain a upstream Git repo URL?
* ℹ️ **INFO**

Found a git repo URL: https://github.com/djrrb/Bungee

[code: url-found]
ℹ️ 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/bungeehairline/BungeeHairline-Regular.ttf
Dehinted Size 102.2kb
Hinted Size 102.2kb
Increase 24 bytes
Change 0.0 %
[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 2.000']

[code: version-not-detected]
[1] Family checks
ℹ️ 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 3 14 63 9 159 0
0% 0% 1% 6% 25% 4% 64% 0%

Note: The following loglevels were omitted in this report:

vv-monsalve commented 1 month ago

@m4rc1e, the glyphs with no contours have been confirmed as ok by David and Just for this font.

the empty glyphs in Bungee Hairline was intentional, and intended for layering. These glyphs are too thin/complex to have anything going on inside them.

The previous font also has them empty, so we can continue with this font as it is now.