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

Caramel: Version 1.010 added #3672

Merged
merged 2 commits into from
Aug 6, 2021
Merged

Caramel: Version 1.010 added #3672

merged 2 commits into from
Aug 6, 2021

Conversation

vv-monsalve
Copy link
Collaborator

2f73c81: [gftools-packager] Caramel: Version 1.010 added

57d5601: [gftools-packager] ofl/caramel remove METADATA "source". #2587

@gf-bot
Copy link

gf-bot commented Aug 5, 2021

Fontbakery report

Fontbakery version: 0.8.0

[1] Family checks
WARN: Is the command `ftxvalidator` (Apple Font Tool Suite) available?
--- Rationale ---
There's no reasonable (and legal) way to run the command `ftxvalidator` of the
Apple Font Tool Suite on a non-macOS machine. I.e. on GNU+Linux or Windows etc.
If Font Bakery is not running on an OSX machine, the machine running Font Bakery
could access `ftxvalidator` on OSX, e.g. via ssh or a remote procedure call
(rpc).
There's an ssh example implementation at:
https://github.com/googlefonts/fontbakery/blob/main/prebuilt/workarounds
/ftxvalidator/ssh-implementation/ftxvalidator
  • WARN Could not find ftxvalidator. [code: ftxvalidator-available]

[11] Caramel-Regular.ttf
🔥 FAIL: Does DESCRIPTION file contain broken links?
--- Rationale ---
The snippet of HTML in the DESCRIPTION.en_us.html file is added to the font
family webpage on the Google Fonts website. For that reason, all hyperlinks in
it must be properly working.
🔥 FAIL: Does METADATA.pb copyright field contain broken links?
🔥 FAIL: METADATA.pb: Designer is listed with the correct name on the Google Fonts catalog of designers?
WARN: METADATA.pb: Fontfamily is listed on Google Fonts API?
WARN: Check if each glyph has the recommended amount of contours.
--- Rationale ---
Visually QAing thousands of glyphs by hand is tiring. Most glyphs can only be
constructured in a handful of ways. This means a glyph's contour count will only
differ slightly amongst different fonts, e.g a 'g' could either be 2 or 3
contours, depending on whether its double story or single story.
However, a quotedbl should have 2 contours, unless the font belongs to a display
family.
This check currently does not cover variable fonts because there's plenty of
alternative ways of constructing glyphs with multiple outlines for each feature
in a VarFont. The expected contour count data for this check is currently
optimized for the typical construction of glyphs in static fonts.
  • 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: percent Contours detected: 4 Expected: 5
Glyph name: zero Contours detected: 1 Expected: 2 or 3
Glyph name: at Contours detected: 3 Expected: 2
Glyph name: B Contours detected: 1 Expected: 2 or 3
Glyph name: D Contours detected: 1 Expected: 2
Glyph name: I Contours detected: 2 Expected: 1
Glyph name: J Contours detected: 2 Expected: 1
Glyph name: registered Contours detected: 2 Expected: 3 or 4
Glyph name: Igrave Contours detected: 3 Expected: 2
Glyph name: Iacute Contours detected: 3 Expected: 2
Glyph name: Icircumflex Contours detected: 3 Expected: 2
Glyph name: Idieresis Contours detected: 4 Expected: 3
Glyph name: aogonek Contours detected: 3 Expected: 2
Glyph name: Dcaron Contours detected: 2 Expected: 3
Glyph name: Dcroat Contours detected: 1 Expected: 2
Glyph name: dcroat Contours detected: 3 Expected: 2
Glyph name: eogonek Contours detected: 3 Expected: 2
Glyph name: Itilde Contours detected: 3 Expected: 2
Glyph name: Imacron Contours detected: 3 Expected: 2
Glyph name: Ibreve Contours detected: 3 Expected: 2
Glyph name: Iogonek Contours detected: 3 Expected: 1 or 2
Glyph name: Idotaccent Contours detected: 3 Expected: 2
Glyph name: Jcircumflex Contours detected: 3 Expected: 2
Glyph name: Racute Contours detected: 2 Expected: 3
Glyph name: uni0156 Contours detected: 2 Expected: 3
Glyph name: Rcaron Contours detected: 2 Expected: 3
Glyph name: Tbar Contours detected: 2 Expected: 1
Glyph name: tbar Contours detected: 2 Expected: 1
Glyph name: Uogonek Contours detected: 2 Expected: 1
Glyph name: uogonek Contours detected: 2 Expected: 1
Glyph name: ohorn Contours detected: 3 Expected: 2
Glyph name: Uhorn Contours detected: 2 Expected: 1
Glyph name: uhorn Contours detected: 2 Expected: 1
Glyph name: uni01C4 Contours detected: 2 Expected: 4
Glyph name: uni01C5 Contours detected: 3 Expected: 4
Glyph name: uni01C7 Contours detected: 3 Expected: 2
Glyph name: uni01CA Contours detected: 3 Expected: 2
Glyph name: uni01CF Contours detected: 3 Expected: 2
Glyph name: uni01EA Contours detected: 3 Expected: 2
Glyph name: uni01EB Contours detected: 3 Expected: 2
Glyph name: uni0200 Contours detected: 5 Expected: 4
Glyph name: uni0204 Contours detected: 4 Expected: 3
Glyph name: uni0208 Contours detected: 5 Expected: 3
Glyph name: uni020A Contours detected: 3 Expected: 2
Glyph name: uni020C Contours detected: 5 Expected: 4
Glyph name: uni0212 Contours detected: 2 Expected: 3
Glyph name: uni0214 Contours detected: 4 Expected: 3
Glyph name: uni1EC8 Contours detected: 3 Expected: 2
Glyph name: uni1ECA Contours detected: 3 Expected: 2
Glyph name: uni1EDB Contours detected: 4 Expected: 3
Glyph name: uni1EDD Contours detected: 4 Expected: 3
Glyph name: uni1EDF Contours detected: 4 Expected: 3
Glyph name: uni1EE1 Contours detected: 4 Expected: 3
Glyph name: uni1EE3 Contours detected: 4 Expected: 3
Glyph name: uni1EE8 Contours detected: 3 Expected: 2
Glyph name: uni1EE9 Contours detected: 3 Expected: 2
Glyph name: uni1EEA Contours detected: 3 Expected: 2
Glyph name: uni1EEB Contours detected: 3 Expected: 2
Glyph name: uni1EEC Contours detected: 3 Expected: 2
Glyph name: uni1EED Contours detected: 3 Expected: 2
Glyph name: uni1EEE Contours detected: 3 Expected: 2
Glyph name: uni1EEF Contours detected: 3 Expected: 2
Glyph name: uni1EF0 Contours detected: 3 Expected: 2
Glyph name: uni1EF1 Contours detected: 3 Expected: 2
Glyph name: lira Contours detected: 2 Expected: 1
Glyph name: uni20AD Contours detected: 3 Expected: 1
Glyph name: uni20BD Contours detected: 3 Expected: 2
Glyph name: B Contours detected: 1 Expected: 2 or 3
Glyph name: D Contours detected: 1 Expected: 2
Glyph name: Dcaron Contours detected: 2 Expected: 3
Glyph name: Dcroat Contours detected: 1 Expected: 2
Glyph name: I Contours detected: 2 Expected: 1
Glyph name: Iacute Contours detected: 3 Expected: 2
Glyph name: Ibreve Contours detected: 3 Expected: 2
Glyph name: Icircumflex Contours detected: 3 Expected: 2
Glyph name: Idieresis Contours detected: 4 Expected: 3
Glyph name: Idotaccent Contours detected: 3 Expected: 2
Glyph name: Igrave Contours detected: 3 Expected: 2
Glyph name: Imacron Contours detected: 3 Expected: 2
Glyph name: Iogonek Contours detected: 3 Expected: 1 or 2
Glyph name: Itilde Contours detected: 3 Expected: 2
Glyph name: J Contours detected: 2 Expected: 1
Glyph name: Jcircumflex Contours detected: 3 Expected: 2
Glyph name: Racute Contours detected: 2 Expected: 3
Glyph name: Rcaron Contours detected: 2 Expected: 3
Glyph name: Tbar Contours detected: 2 Expected: 1
Glyph name: Uhorn Contours detected: 2 Expected: 1
Glyph name: Uogonek Contours detected: 2 Expected: 1
Glyph name: aogonek Contours detected: 3 Expected: 2
Glyph name: at Contours detected: 3 Expected: 2
Glyph name: dcroat Contours detected: 3 Expected: 2
Glyph name: eogonek Contours detected: 3 Expected: 2
Glyph name: lira Contours detected: 2 Expected: 1
Glyph name: ohorn Contours detected: 3 Expected: 2
Glyph name: percent Contours detected: 4 Expected: 5
Glyph name: registered Contours detected: 2 Expected: 3 or 4
Glyph name: tbar Contours detected: 2 Expected: 1
Glyph name: uhorn Contours detected: 2 Expected: 1
Glyph name: uni0156 Contours detected: 2 Expected: 3
Glyph name: uni01C4 Contours detected: 2 Expected: 4
Glyph name: uni01C5 Contours detected: 3 Expected: 4
Glyph name: uni01C7 Contours detected: 3 Expected: 2
Glyph name: uni01CA Contours detected: 3 Expected: 2
Glyph name: uni01CF Contours detected: 3 Expected: 2
Glyph name: uni1EC8 Contours detected: 3 Expected: 2
Glyph name: uni1ECA Contours detected: 3 Expected: 2
Glyph name: uni1EDB Contours detected: 4 Expected: 3
Glyph name: uni1EDD Contours detected: 4 Expected: 3
Glyph name: uni1EDF Contours detected: 4 Expected: 3
Glyph name: uni1EE1 Contours detected: 4 Expected: 3
Glyph name: uni1EE3 Contours detected: 4 Expected: 3
Glyph name: uni1EE8 Contours detected: 3 Expected: 2
Glyph name: uni1EE9 Contours detected: 3 Expected: 2
Glyph name: uni1EEA Contours detected: 3 Expected: 2
Glyph name: uni1EEB Contours detected: 3 Expected: 2
Glyph name: uni1EEC Contours detected: 3 Expected: 2
Glyph name: uni1EED Contours detected: 3 Expected: 2
Glyph name: uni1EEE Contours detected: 3 Expected: 2
Glyph name: uni1EEF Contours detected: 3 Expected: 2
Glyph name: uni1EF0 Contours detected: 3 Expected: 2
Glyph name: uni1EF1 Contours detected: 3 Expected: 2
Glyph name: uni20AD Contours detected: 3 Expected: 1
Glyph name: uni20BD Contours detected: 3 Expected: 2
Glyph name: uogonek Contours detected: 2 Expected: 1
Glyph name: zero Contours detected: 1 Expected: 2 or 3 [code: contour-count]

WARN: Are there caret positions declared for every ligature?
--- Rationale ---
All ligatures in a font must have corresponding caret (text cursor) positions
defined in the GDEF table, otherwhise, users may experience issues with caret
rendering.
If using GlyphsApp or UFOs, ligature carets can be defined as anchors with names
starting with 'caret_'. These can be compiled with fontmake as of version
v2.4.0.
  • WARN This font lacks caret position values for ligature glyphs on its GDEF table. [code: lacks-caret-pos]
WARN: Is there kerning info for non-ligated sequences?
--- Rationale ---
Fonts with ligatures should have kerning on the corresponding non-ligated
sequences for text where ligatures aren't used (eg
https://github.com/impallari/Raleway/issues/14).
  • WARN 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: Ensure Stylistic Sets have description.
--- Rationale ---
Stylistic sets should provide description text. Programs such as InDesign,
TextEdit and Inkscape use that info to display to the users so that they know
what a given stylistic set offers.
  • WARN The stylistic set ss01 lacks a description string on the 'name' table. [code: missing-description]
  • WARN The stylistic set ss02 lacks a description string on the 'name' table. [code: missing-description]
WARN: Ensure fonts have ScriptLangTags declared on the 'meta' table.
--- Rationale ---
The OpenType 'meta' table originated at Apple. Microsoft added it to OT with
just two DataMap records:
- dlng: comma-separated ScriptLangTags that indicate which scripts, or languages
and scripts, with possible variants, the font is designed for
- slng: comma-separated ScriptLangTags that indicate which scripts, or languages
and scripts, with possible variants, the font supports
The slng structure is intended to describe which languages and scripts the font
overall supports. For example, a Traditional Chinese font that also contains
Latin characters, can indicate Hant,Latn, showing that it supports Hant, the
Traditional Chinese variant of the Hani script, and it also supports the Latn
script
The dlng structure is far more interesting. A font may contain various glyphs,
but only a particular subset of the glyphs may be truly "leading" in the design,
while other glyphs may have been included for technical reasons. Such a
Traditional Chinese font could only list Hant there, showing that it’s designed
for Traditional Chinese, but the font would omit Latn, because the developers
don’t think the font is really recommended for purely Latin-script use.
The tags used in the structures can comprise just script, or also language and
script. For example, if a font has Bulgarian Cyrillic alternates in the locl
feature for the cyrl BGR OT languagesystem, it could also indicate in dlng
explicitly that it supports bul-Cyrl. (Note that the scripts and languages in
meta use the ISO language and script codes, not the OpenType ones).
This check ensures that the font has the meta table containing the slng and dlng
structures.
All families in the Google Fonts collection should contain the 'meta' table.
Windows 10 already uses it when deciding on which fonts to fall back to. The
Google Fonts API and also other environments could use the data for smarter
filtering. Most importantly, those entries should be added to the Noto fonts.
In the font making process, some environments store this data in external files
already. But the meta table provides a convenient way to store this inside the
font file, so some tools may add the data, and unrelated tools may read this
data. This makes the solution much more portable and universal.
  • WARN This font file does not have a 'meta' table. [code: lacks-meta-table]
WARN: Do outlines contain any jaggy segments?
--- Rationale ---
This check heuristically detects outline segments which form a particularly
small angle, indicative of an outline error. This may cause false positives in
cases such as extreme ink traps, so should be regarded as advisory and backed up
by manual inspection.
  • WARN The following glyphs have jaggy segments:
    • AE.ss02: B<<470.0,346.5>-<496.0,395.0>-<519.0,435.0>>/B<<519.0,435.0>-<488.0,394.0>-<445.5,345.0>> = 7.193935458426981
    • AEacute.ss02: B<<470.0,346.5>-<496.0,395.0>-<519.0,435.0>>/B<<519.0,435.0>-<488.0,394.0>-<445.5,345.0>> = 7.193935458426981
    • B.ss01: B<<406.5,270.5>-<375.0,260.0>-<352.0,255.0>>/B<<352.0,255.0>-<379.0,258.0>-<403.0,258.0>> = 5.9245819819824845
    • E.ss02: B<<188.5,226.0>-<230.0,247.0>-<261.0,255.0>>/B<<261.0,255.0>-<251.0,254.0>-<240.5,253.5>> = 8.759700962566225
    • Eacute.ss02: B<<188.5,226.0>-<230.0,247.0>-<261.0,255.0>>/B<<261.0,255.0>-<251.0,254.0>-<240.5,253.5>> = 8.759700962566225
    • Ebreve.ss02: B<<188.5,226.0>-<230.0,247.0>-<261.0,255.0>>/B<<261.0,255.0>-<251.0,254.0>-<240.5,253.5>> = 8.759700962566225
    • Ecaron.ss02: B<<188.5,226.0>-<230.0,247.0>-<261.0,255.0>>/B<<261.0,255.0>-<251.0,254.0>-<240.5,253.5>> = 8.759700962566225
    • Ecircumflex.ss02: B<<188.5,226.0>-<230.0,247.0>-<261.0,255.0>>/B<<261.0,255.0>-<251.0,254.0>-<240.5,253.5>> = 8.759700962566225
    • Edieresis.ss02: B<<188.5,226.0>-<230.0,247.0>-<261.0,255.0>>/B<<261.0,255.0>-<251.0,254.0>-<240.5,253.5>> = 8.759700962566225
    • Edotaccent.ss02: B<<188.5,226.0>-<230.0,247.0>-<261.0,255.0>>/B<<261.0,255.0>-<251.0,254.0>-<240.5,253.5>> = 8.759700962566225 and 370 more. [code: found-jaggy-segments]
WARN: Do outlines contain any semi-vertical or semi-horizontal lines?
--- Rationale ---
This check detects line segments which are nearly, but not quite, exactly
horizontal or vertical. Sometimes such lines are created by design, but often
they are indicative of a design error.
This check is disabled for italic styles, which often contain nearly-upright
lines.
  • WARN The following glyphs have semi-vertical/semi-horizontal lines:
  • Amacron.ss01: L<<798.0,603.0>--<969.0,604.0>>
  • Amacron.ss02: L<<811.0,746.0>--<982.0,747.0>>
  • Amacron: L<<521.0,605.0>--<692.0,606.0>>
  • Dcroat.ss01: L<<194.0,284.0>--<395.0,285.0>>
  • Dcroat.ss02: L<<253.0,318.0>--<454.0,319.0>>
  • Emacron.ss01: L<<476.0,600.0>--<647.0,601.0>>
  • Emacron.ss02: L<<495.0,728.0>--<666.0,729.0>>
  • Emacron: L<<343.0,606.0>--<514.0,607.0>>
  • Eth.ss01: L<<194.0,284.0>--<395.0,285.0>>
  • Eth.ss02: L<<253.0,318.0>--<454.0,319.0>> and 77 more. [code: found-semi-vertical]

Summary

💔 ERROR 🔥 FAIL ⚠ WARN 💤 SKIP ℹ INFO 🍞 PASS 🔎 DEBUG
0 3 9 49 9 143 0
0% 1% 4% 23% 4% 67% 0%

Note: The following loglevels were omitted in this report:

  • SKIP
  • INFO
  • PASS
  • DEBUG

@vv-monsalve vv-monsalve marked this pull request as draft August 5, 2021 17:10
@vv-monsalve vv-monsalve marked this pull request as ready for review August 5, 2021 18:02
@vv-monsalve vv-monsalve requested a review from RosaWagner August 5, 2021 18:06
@vv-monsalve
Copy link
Collaborator Author

vv-monsalve commented Aug 5, 2021

This is part of the Batch2 of TypeSetIt projects.

🔥 FAIL: Does DESCRIPTION file contain broken links?
🔥 FAIL: Does METADATA.pb copyright field contain broken links?

The link is not broken

🔥 FAIL Designer Robert Leuschke still does not have a webpage link on the catalog. Please provide one. [code: missing-link]

It was already done in #3463

@vv-monsalve vv-monsalve linked an issue Aug 5, 2021 that may be closed by this pull request
@RosaWagner
Copy link
Contributor

@vv-monsalve It indicates as broken because the repo is still private

ofl/caramel/METADATA.pb Outdated Show resolved Hide resolved
@RosaWagner
Copy link
Contributor

Otherwise LGTM, we can merge as soon as the category is confirmed or corrected

@vv-monsalve
Copy link
Collaborator Author

Updated

Caramel: Version 1.010 added


375b262: [gftools-packager] Caramel: Version 1.010 added

55f81cc: [gftools-packager] ofl/caramel remove METADATA "source". #2587

@vv-monsalve vv-monsalve force-pushed the gftools_packager_ofl_caramel branch from 57d5601 to 55f81cc Compare August 6, 2021 14:16
@RosaWagner RosaWagner removed the -- Needs confirmation from upstream or onboarder label Aug 6, 2021
@gf-bot
Copy link

gf-bot commented Aug 6, 2021

Fontbakery report

Fontbakery version: 0.8.0

[1] Family checks
WARN: Is the command `ftxvalidator` (Apple Font Tool Suite) available?
--- Rationale ---
There's no reasonable (and legal) way to run the command `ftxvalidator` of the
Apple Font Tool Suite on a non-macOS machine. I.e. on GNU+Linux or Windows etc.
If Font Bakery is not running on an OSX machine, the machine running Font Bakery
could access `ftxvalidator` on OSX, e.g. via ssh or a remote procedure call
(rpc).
There's an ssh example implementation at:
https://github.com/googlefonts/fontbakery/blob/main/prebuilt/workarounds
/ftxvalidator/ssh-implementation/ftxvalidator
  • WARN Could not find ftxvalidator. [code: ftxvalidator-available]

[11] Caramel-Regular.ttf
🔥 FAIL: Does DESCRIPTION file contain broken links?
--- Rationale ---
The snippet of HTML in the DESCRIPTION.en_us.html file is added to the font
family webpage on the Google Fonts website. For that reason, all hyperlinks in
it must be properly working.
🔥 FAIL: Does METADATA.pb copyright field contain broken links?
🔥 FAIL: METADATA.pb: Designer is listed with the correct name on the Google Fonts catalog of designers?
WARN: METADATA.pb: Fontfamily is listed on Google Fonts API?
WARN: Check if each glyph has the recommended amount of contours.
--- Rationale ---
Visually QAing thousands of glyphs by hand is tiring. Most glyphs can only be
constructured in a handful of ways. This means a glyph's contour count will only
differ slightly amongst different fonts, e.g a 'g' could either be 2 or 3
contours, depending on whether its double story or single story.
However, a quotedbl should have 2 contours, unless the font belongs to a display
family.
This check currently does not cover variable fonts because there's plenty of
alternative ways of constructing glyphs with multiple outlines for each feature
in a VarFont. The expected contour count data for this check is currently
optimized for the typical construction of glyphs in static fonts.
  • 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: percent Contours detected: 4 Expected: 5
Glyph name: zero Contours detected: 1 Expected: 2 or 3
Glyph name: at Contours detected: 3 Expected: 2
Glyph name: B Contours detected: 1 Expected: 2 or 3
Glyph name: D Contours detected: 1 Expected: 2
Glyph name: I Contours detected: 2 Expected: 1
Glyph name: J Contours detected: 2 Expected: 1
Glyph name: registered Contours detected: 2 Expected: 3 or 4
Glyph name: Igrave Contours detected: 3 Expected: 2
Glyph name: Iacute Contours detected: 3 Expected: 2
Glyph name: Icircumflex Contours detected: 3 Expected: 2
Glyph name: Idieresis Contours detected: 4 Expected: 3
Glyph name: aogonek Contours detected: 3 Expected: 2
Glyph name: Dcaron Contours detected: 2 Expected: 3
Glyph name: Dcroat Contours detected: 1 Expected: 2
Glyph name: dcroat Contours detected: 3 Expected: 2
Glyph name: eogonek Contours detected: 3 Expected: 2
Glyph name: Itilde Contours detected: 3 Expected: 2
Glyph name: Imacron Contours detected: 3 Expected: 2
Glyph name: Ibreve Contours detected: 3 Expected: 2
Glyph name: Iogonek Contours detected: 3 Expected: 1 or 2
Glyph name: Idotaccent Contours detected: 3 Expected: 2
Glyph name: Jcircumflex Contours detected: 3 Expected: 2
Glyph name: Racute Contours detected: 2 Expected: 3
Glyph name: uni0156 Contours detected: 2 Expected: 3
Glyph name: Rcaron Contours detected: 2 Expected: 3
Glyph name: Tbar Contours detected: 2 Expected: 1
Glyph name: tbar Contours detected: 2 Expected: 1
Glyph name: Uogonek Contours detected: 2 Expected: 1
Glyph name: uogonek Contours detected: 2 Expected: 1
Glyph name: ohorn Contours detected: 3 Expected: 2
Glyph name: Uhorn Contours detected: 2 Expected: 1
Glyph name: uhorn Contours detected: 2 Expected: 1
Glyph name: uni01C4 Contours detected: 2 Expected: 4
Glyph name: uni01C5 Contours detected: 3 Expected: 4
Glyph name: uni01C7 Contours detected: 3 Expected: 2
Glyph name: uni01CA Contours detected: 3 Expected: 2
Glyph name: uni01CF Contours detected: 3 Expected: 2
Glyph name: uni01EA Contours detected: 3 Expected: 2
Glyph name: uni01EB Contours detected: 3 Expected: 2
Glyph name: uni0200 Contours detected: 5 Expected: 4
Glyph name: uni0204 Contours detected: 4 Expected: 3
Glyph name: uni0208 Contours detected: 5 Expected: 3
Glyph name: uni020A Contours detected: 3 Expected: 2
Glyph name: uni020C Contours detected: 5 Expected: 4
Glyph name: uni0212 Contours detected: 2 Expected: 3
Glyph name: uni0214 Contours detected: 4 Expected: 3
Glyph name: uni1EC8 Contours detected: 3 Expected: 2
Glyph name: uni1ECA Contours detected: 3 Expected: 2
Glyph name: uni1EDB Contours detected: 4 Expected: 3
Glyph name: uni1EDD Contours detected: 4 Expected: 3
Glyph name: uni1EDF Contours detected: 4 Expected: 3
Glyph name: uni1EE1 Contours detected: 4 Expected: 3
Glyph name: uni1EE3 Contours detected: 4 Expected: 3
Glyph name: uni1EE8 Contours detected: 3 Expected: 2
Glyph name: uni1EE9 Contours detected: 3 Expected: 2
Glyph name: uni1EEA Contours detected: 3 Expected: 2
Glyph name: uni1EEB Contours detected: 3 Expected: 2
Glyph name: uni1EEC Contours detected: 3 Expected: 2
Glyph name: uni1EED Contours detected: 3 Expected: 2
Glyph name: uni1EEE Contours detected: 3 Expected: 2
Glyph name: uni1EEF Contours detected: 3 Expected: 2
Glyph name: uni1EF0 Contours detected: 3 Expected: 2
Glyph name: uni1EF1 Contours detected: 3 Expected: 2
Glyph name: lira Contours detected: 2 Expected: 1
Glyph name: uni20AD Contours detected: 3 Expected: 1
Glyph name: uni20BD Contours detected: 3 Expected: 2
Glyph name: B Contours detected: 1 Expected: 2 or 3
Glyph name: D Contours detected: 1 Expected: 2
Glyph name: Dcaron Contours detected: 2 Expected: 3
Glyph name: Dcroat Contours detected: 1 Expected: 2
Glyph name: I Contours detected: 2 Expected: 1
Glyph name: Iacute Contours detected: 3 Expected: 2
Glyph name: Ibreve Contours detected: 3 Expected: 2
Glyph name: Icircumflex Contours detected: 3 Expected: 2
Glyph name: Idieresis Contours detected: 4 Expected: 3
Glyph name: Idotaccent Contours detected: 3 Expected: 2
Glyph name: Igrave Contours detected: 3 Expected: 2
Glyph name: Imacron Contours detected: 3 Expected: 2
Glyph name: Iogonek Contours detected: 3 Expected: 1 or 2
Glyph name: Itilde Contours detected: 3 Expected: 2
Glyph name: J Contours detected: 2 Expected: 1
Glyph name: Jcircumflex Contours detected: 3 Expected: 2
Glyph name: Racute Contours detected: 2 Expected: 3
Glyph name: Rcaron Contours detected: 2 Expected: 3
Glyph name: Tbar Contours detected: 2 Expected: 1
Glyph name: Uhorn Contours detected: 2 Expected: 1
Glyph name: Uogonek Contours detected: 2 Expected: 1
Glyph name: aogonek Contours detected: 3 Expected: 2
Glyph name: at Contours detected: 3 Expected: 2
Glyph name: dcroat Contours detected: 3 Expected: 2
Glyph name: eogonek Contours detected: 3 Expected: 2
Glyph name: lira Contours detected: 2 Expected: 1
Glyph name: ohorn Contours detected: 3 Expected: 2
Glyph name: percent Contours detected: 4 Expected: 5
Glyph name: registered Contours detected: 2 Expected: 3 or 4
Glyph name: tbar Contours detected: 2 Expected: 1
Glyph name: uhorn Contours detected: 2 Expected: 1
Glyph name: uni0156 Contours detected: 2 Expected: 3
Glyph name: uni01C4 Contours detected: 2 Expected: 4
Glyph name: uni01C5 Contours detected: 3 Expected: 4
Glyph name: uni01C7 Contours detected: 3 Expected: 2
Glyph name: uni01CA Contours detected: 3 Expected: 2
Glyph name: uni01CF Contours detected: 3 Expected: 2
Glyph name: uni1EC8 Contours detected: 3 Expected: 2
Glyph name: uni1ECA Contours detected: 3 Expected: 2
Glyph name: uni1EDB Contours detected: 4 Expected: 3
Glyph name: uni1EDD Contours detected: 4 Expected: 3
Glyph name: uni1EDF Contours detected: 4 Expected: 3
Glyph name: uni1EE1 Contours detected: 4 Expected: 3
Glyph name: uni1EE3 Contours detected: 4 Expected: 3
Glyph name: uni1EE8 Contours detected: 3 Expected: 2
Glyph name: uni1EE9 Contours detected: 3 Expected: 2
Glyph name: uni1EEA Contours detected: 3 Expected: 2
Glyph name: uni1EEB Contours detected: 3 Expected: 2
Glyph name: uni1EEC Contours detected: 3 Expected: 2
Glyph name: uni1EED Contours detected: 3 Expected: 2
Glyph name: uni1EEE Contours detected: 3 Expected: 2
Glyph name: uni1EEF Contours detected: 3 Expected: 2
Glyph name: uni1EF0 Contours detected: 3 Expected: 2
Glyph name: uni1EF1 Contours detected: 3 Expected: 2
Glyph name: uni20AD Contours detected: 3 Expected: 1
Glyph name: uni20BD Contours detected: 3 Expected: 2
Glyph name: uogonek Contours detected: 2 Expected: 1
Glyph name: zero Contours detected: 1 Expected: 2 or 3 [code: contour-count]

WARN: Are there caret positions declared for every ligature?
--- Rationale ---
All ligatures in a font must have corresponding caret (text cursor) positions
defined in the GDEF table, otherwhise, users may experience issues with caret
rendering.
If using GlyphsApp or UFOs, ligature carets can be defined as anchors with names
starting with 'caret_'. These can be compiled with fontmake as of version
v2.4.0.
  • WARN This font lacks caret position values for ligature glyphs on its GDEF table. [code: lacks-caret-pos]
WARN: Is there kerning info for non-ligated sequences?
--- Rationale ---
Fonts with ligatures should have kerning on the corresponding non-ligated
sequences for text where ligatures aren't used (eg
https://github.com/impallari/Raleway/issues/14).
  • WARN 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: Ensure Stylistic Sets have description.
--- Rationale ---
Stylistic sets should provide description text. Programs such as InDesign,
TextEdit and Inkscape use that info to display to the users so that they know
what a given stylistic set offers.
  • WARN The stylistic set ss01 lacks a description string on the 'name' table. [code: missing-description]
  • WARN The stylistic set ss02 lacks a description string on the 'name' table. [code: missing-description]
WARN: Ensure fonts have ScriptLangTags declared on the 'meta' table.
--- Rationale ---
The OpenType 'meta' table originated at Apple. Microsoft added it to OT with
just two DataMap records:
- dlng: comma-separated ScriptLangTags that indicate which scripts, or languages
and scripts, with possible variants, the font is designed for
- slng: comma-separated ScriptLangTags that indicate which scripts, or languages
and scripts, with possible variants, the font supports
The slng structure is intended to describe which languages and scripts the font
overall supports. For example, a Traditional Chinese font that also contains
Latin characters, can indicate Hant,Latn, showing that it supports Hant, the
Traditional Chinese variant of the Hani script, and it also supports the Latn
script
The dlng structure is far more interesting. A font may contain various glyphs,
but only a particular subset of the glyphs may be truly "leading" in the design,
while other glyphs may have been included for technical reasons. Such a
Traditional Chinese font could only list Hant there, showing that it’s designed
for Traditional Chinese, but the font would omit Latn, because the developers
don’t think the font is really recommended for purely Latin-script use.
The tags used in the structures can comprise just script, or also language and
script. For example, if a font has Bulgarian Cyrillic alternates in the locl
feature for the cyrl BGR OT languagesystem, it could also indicate in dlng
explicitly that it supports bul-Cyrl. (Note that the scripts and languages in
meta use the ISO language and script codes, not the OpenType ones).
This check ensures that the font has the meta table containing the slng and dlng
structures.
All families in the Google Fonts collection should contain the 'meta' table.
Windows 10 already uses it when deciding on which fonts to fall back to. The
Google Fonts API and also other environments could use the data for smarter
filtering. Most importantly, those entries should be added to the Noto fonts.
In the font making process, some environments store this data in external files
already. But the meta table provides a convenient way to store this inside the
font file, so some tools may add the data, and unrelated tools may read this
data. This makes the solution much more portable and universal.
  • WARN This font file does not have a 'meta' table. [code: lacks-meta-table]
WARN: Do outlines contain any jaggy segments?
--- Rationale ---
This check heuristically detects outline segments which form a particularly
small angle, indicative of an outline error. This may cause false positives in
cases such as extreme ink traps, so should be regarded as advisory and backed up
by manual inspection.
  • WARN The following glyphs have jaggy segments:
    • AE.ss02: B<<470.0,346.5>-<496.0,395.0>-<519.0,435.0>>/B<<519.0,435.0>-<488.0,394.0>-<445.5,345.0>> = 7.193935458426981
    • AEacute.ss02: B<<470.0,346.5>-<496.0,395.0>-<519.0,435.0>>/B<<519.0,435.0>-<488.0,394.0>-<445.5,345.0>> = 7.193935458426981
    • B.ss01: B<<406.5,270.5>-<375.0,260.0>-<352.0,255.0>>/B<<352.0,255.0>-<379.0,258.0>-<403.0,258.0>> = 5.9245819819824845
    • E.ss02: B<<188.5,226.0>-<230.0,247.0>-<261.0,255.0>>/B<<261.0,255.0>-<251.0,254.0>-<240.5,253.5>> = 8.759700962566225
    • Eacute.ss02: B<<188.5,226.0>-<230.0,247.0>-<261.0,255.0>>/B<<261.0,255.0>-<251.0,254.0>-<240.5,253.5>> = 8.759700962566225
    • Ebreve.ss02: B<<188.5,226.0>-<230.0,247.0>-<261.0,255.0>>/B<<261.0,255.0>-<251.0,254.0>-<240.5,253.5>> = 8.759700962566225
    • Ecaron.ss02: B<<188.5,226.0>-<230.0,247.0>-<261.0,255.0>>/B<<261.0,255.0>-<251.0,254.0>-<240.5,253.5>> = 8.759700962566225
    • Ecircumflex.ss02: B<<188.5,226.0>-<230.0,247.0>-<261.0,255.0>>/B<<261.0,255.0>-<251.0,254.0>-<240.5,253.5>> = 8.759700962566225
    • Edieresis.ss02: B<<188.5,226.0>-<230.0,247.0>-<261.0,255.0>>/B<<261.0,255.0>-<251.0,254.0>-<240.5,253.5>> = 8.759700962566225
    • Edotaccent.ss02: B<<188.5,226.0>-<230.0,247.0>-<261.0,255.0>>/B<<261.0,255.0>-<251.0,254.0>-<240.5,253.5>> = 8.759700962566225 and 370 more. [code: found-jaggy-segments]
WARN: Do outlines contain any semi-vertical or semi-horizontal lines?
--- Rationale ---
This check detects line segments which are nearly, but not quite, exactly
horizontal or vertical. Sometimes such lines are created by design, but often
they are indicative of a design error.
This check is disabled for italic styles, which often contain nearly-upright
lines.
  • WARN The following glyphs have semi-vertical/semi-horizontal lines:
  • Amacron.ss01: L<<798.0,603.0>--<969.0,604.0>>
  • Amacron.ss02: L<<811.0,746.0>--<982.0,747.0>>
  • Amacron: L<<521.0,605.0>--<692.0,606.0>>
  • Dcroat.ss01: L<<194.0,284.0>--<395.0,285.0>>
  • Dcroat.ss02: L<<253.0,318.0>--<454.0,319.0>>
  • Emacron.ss01: L<<476.0,600.0>--<647.0,601.0>>
  • Emacron.ss02: L<<495.0,728.0>--<666.0,729.0>>
  • Emacron: L<<343.0,606.0>--<514.0,607.0>>
  • Eth.ss01: L<<194.0,284.0>--<395.0,285.0>>
  • Eth.ss02: L<<253.0,318.0>--<454.0,319.0>> and 77 more. [code: found-semi-vertical]

Summary

💔 ERROR 🔥 FAIL ⚠ WARN 💤 SKIP ℹ INFO 🍞 PASS 🔎 DEBUG
0 3 9 49 9 143 0
0% 1% 4% 23% 4% 67% 0%

Note: The following loglevels were omitted in this report:

  • SKIP
  • INFO
  • PASS
  • DEBUG

@RosaWagner RosaWagner merged commit 8a905ba into main Aug 6, 2021
@RosaWagner RosaWagner deleted the gftools_packager_ofl_caramel branch August 6, 2021 14:37
@davelab6
Copy link
Member

davelab6 commented Aug 6, 2021

Repo is public

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
--- Live Font is visible on API I New Font
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add Caramel
4 participants