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

Cactus Classical Serif: Version 1.000 added #7665

Merged
merged 6 commits into from
May 16, 2024

Conversation

aaronbell
Copy link
Collaborator

Taken from the upstream repo https://github.com/aaronbell/CactusSerif at commit aaronbell/CactusSerif@eb5a6ea.

PR Checklist:

  • Family categorization tags collected from the type design team with the Categories Form
  • Minisite_url definition in the METADATA.pb file for commissioned projects
  • Primary_script definition in the METADATA.pb file for all projects that have a primary non-Latin based language support target
  • Fontbakery checks are reviewed and failing checks are resolved in collaboration with the upstream font development team
  • Diffenator2 regression checks for revisions on all projects that are currently in production
  • Designers bio info have to be present in the designer catalog (at least an issue should be opened for tracking this, if they are not)
  • Check designers order in metadata.pb, since the first one of the list appears as “principal designer”
  • Social media formatted visual assets for all new commissioned projects in the Drive directory, communicate with the repository Maintainer so that they can push this content to the Social Media tracker spreadsheet
  • Social media content draft for all new commissioned projects in the Drive directory and Social Media tracker spreadsheet, communicate with the repository Maintainer so that they can push this content to the Social Media tracker spreadsheet

@aaronbell
Copy link
Collaborator Author

(btw, the description is translated from the upstream repro. Might be good to replace?)

This comment was marked as outdated.

@emmamarichal emmamarichal added the II CJK Chinese, Japanese, Korean scripts label May 15, 2024
@emmamarichal emmamarichal linked an issue May 15, 2024 that may be closed by this pull request
9 tasks
@emmamarichal emmamarichal self-requested a review May 15, 2024 08:54
@emmamarichal
Copy link
Collaborator

emmamarichal commented May 15, 2024

Review - Part I: Fontbakery

Please note that I don't know the context and agreements with this font, so I prefer to check everything, I just need some confirmation :)

🔥 FAIL DESCRIPTION.en_us.html must have more than 200 bytes.
🔥 FAIL Is this a proper HTML snippet?
-> I'll reach you about this

🔥 FAIL Shapes languages in all GF glyphsets.
vi_Latn (Vietnamese) Some mark glyphs were missing: ◌̃, ◌̉, ◌̛, ◌̣
-> This is the only marks missing, could we solve this to avoid the fail?

🔥 FAIL Ensure files are not too large.
-> I suppose that's inevitable for a CJK font

🔥 FAIL Check Google Fonts glyph coverage.
-> Can you confirm that it's ok and agreed the font doesn't cover the Latin Core glyphset?

WARN Does GPOS table have kerning information? This check skips monospaced fonts as defined by post.isFixedPitch value
-> There is no kerning at all, are we ok with that?

For the other WARN, I'm not an expert in CJK, I don't really know how important it

⚠️ WARN Check font contains no unreachable glyphs
  • ⚠️ WARN

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

- cjkradicalspiritonehani

- cjkradicalspirittwohani

- glyph56811

- glyph56899

- glyph57184

[code: unreachable-glyphs]

⚠️ WARN Glyph names are all valid?
  • ⚠️ WARN

    The following glyph names may be too long for some legacy systems which may expect a maximum 31-characters length limit:
    cjkcompatibilityideograph2f804hani, cjkcompatibilityideograph2f80fhani, cjkcompatibilityideograph2f815hani, cjkcompatibilityideograph2f81ahani, cjkcompatibilityideograph2f822hani, cjkcompatibilityideograph2f828hani, cjkcompatibilityideograph2f833hani, cjkcompatibilityideograph2f83fhani, cjkcompatibilityideograph2f846hani, cjkcompatibilityideograph2f852hani and 384 more.

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

[code: legacy-long-names]
⚠️ WARN Do outlines contain any jaggy segments?
  • ⚠️ WARN

    The following glyphs have jaggy segments:

* cjkcompatibilityideograph2f86dhani (U+2F86D): B<<635.0,456.0>-<615.0,443.0>-<577.0,438.0>>/L<<577.0,438.0>--<745.0,438.0>> = 7.495857639729838

* cjkcompatibilityideograph2f8d3hani (U+2F8D3): L<<766.0,555.0>--<386.0,555.0>>/L<<386.0,555.0>--<441.0,543.0>> = 12.308015817427924

* cjkcompatibilityideograph2f921hani (U+2F921): B<<332.0,634.0>-<328.0,610.0>-<307.0,607.0>>/L<<307.0,607.0>--<612.0,607.0>> = 8.13010235415596

* cjkcompatibilityideograph2f921hani (U+2F921): L<<200.0,607.0>--<299.0,607.0>>/B<<299.0,607.0>-<288.0,609.0>-<278.0,617.0>> = 10.304846468766044

* cjkcompatibilityideographf910hani (U+F910): L<<422.0,224.0>--<412.0,232.0>>/B<<412.0,232.0>-<435.0,204.0>-<434.0,176.0>> = 11.939531082430465

* cjkcompatibilityideographf91dhani (U+F91D): B<<232.0,461.0>-<333.0,410.0>-<349.0,344.0>>/L<<349.0,344.0>--<349.0,575.0>> = 13.62699485989153

* cjkcompatibilityideographf939hani (U+F939): L<<760.0,380.0>--<751.0,380.0>>/B<<751.0,380.0>-<832.0,365.0>-<883.0,332.0>> = 10.491477012331599

* cjkcompatibilityideographf93bhani (U+F93B): B<<780.0,132.0>-<724.0,223.0>-<697.0,362.0>>/L<<697.0,362.0>--<697.0,18.0>> = 10.992507580267716

* cjkcompatibilityideographf93chani (U+F93C): B<<781.0,130.0>-<727.0,220.0>-<703.0,361.0>>/L<<703.0,361.0>--<703.0,18.0>> = 9.65989307844234

* cjkcompatibilityideographf93dhani (U+F93D): B<<773.0,143.0>-<713.0,245.0>-<686.0,405.0>>/L<<686.0,405.0>--<686.0,20.0>> = 9.578422919460733

* 7018 more.

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

[code: found-jaggy-segments]
⚠️ WARN Do outlines contain any semi-vertical or semi-horizontal lines?
  • ⚠️ WARN

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

* M (U+004D): L<<142.0,48.0>--<143.0,682.0>>

* M (U+004D): L<<738.0,334.0>--<739.0,635.0>>

* Mugrek (U+039C): L<<142.0,48.0>--<143.0,682.0>>

* Mugrek (U+039C): L<<738.0,334.0>--<739.0,635.0>>

* N (U+004E): L<<137.0,48.0>--<138.0,672.0>>

* N (U+004E): L<<183.0,609.0>--<184.0,49.0>>

* N (U+004E): L<<617.0,150.0>--<616.0,680.0>>

* N (U+004E): L<<662.0,681.0>--<661.0,-8.0>>

* Nacute (U+0143): L<<137.0,48.0>--<138.0,672.0>>

* Nacute (U+0143): L<<183.0,609.0>--<184.0,49.0>>

* 1998 more.

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

[code: found-semi-vertical]
⚠️ WARN Check the direction of the outermost contour in each glyph
  • ⚠️ WARN

    The following glyphs have a counter-clockwise outer contour:

* cjkcompatibilityideographf90fhani (U+F90F) has a counter-clockwise outer contour

* cjkcompatibilityideographf922hani (U+F922) has a counter-clockwise outer contour

* cjkcompatibilityideographf923hani (U+F923) has a counter-clockwise outer contour

* cjkcompatibilityideographf94ahani (U+F94A) has a counter-clockwise outer contour

* cjkcompatibilityideographfa5chani (U+FA5C) has a counter-clockwise outer contour

* glyph10550 (U+55AB) has a counter-clockwise outer contour

* glyph10585 (U+55CE) has a counter-clockwise outer contour

* glyph10592 (U+55D5) has a counter-clockwise outer contour

* glyph10606 (U+55E3) has a counter-clockwise outer contour

* glyph10606 (U+55E3) has a counter-clockwise outer contour

* 5551 more.

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

[code: ccw-outer-contour]
⚠️ WARN Ensure soft_dotted characters lose their dot when combined with marks that replace the dot.
  • ⚠️ WARN

    The dot of soft dotted characters used in orthographies must disappear in the following strings: i̋ i̍ j̀ j́ j̄ ɨ̀ ɨ́ ɨ̂ ɨ̄ ɨ̋ ɨ̌ ị̀ ị́ ị̂ ị̄

The dot of soft dotted characters should disappear in other cases, for example: i⃝̀ i⃝́ i⃝̂ i⃝̄ i⃝̆ i⃝̋ i⃝̌ i⃝̍ i⃞̀ i⃞́ i⃞̂ i⃞̄ i⃞̆ i⃞̋ i⃞̌ i⃞̍ ĵ j̆ j̋ ǰ

Your font fully covers the following languages that require the soft-dotted feature: Ekpeye (Latn, 226,000 speakers).

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

[code: soft-dotted]
⚠️ 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: canadian-aboriginal, tifinagh, yi
  • 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+02D9 DOT ABOVE: try adding one of: canadian-aboriginal, yi
  • U+02EA MODIFIER LETTER YIN DEPARTING TONE MARK: not included in any glyphset definition
  • U+02EB MODIFIER LETTER YANG DEPARTING TONE MARK: not included in any glyphset definition
  • U+0302 COMBINING CIRCUMFLEX ACCENT: try adding one of: tifinagh, coptic, math, cherokee
  • U+0306 COMBINING BREVE: try adding one of: old-permic, tifinagh
  • U+030B COMBINING DOUBLE ACUTE ACCENT: try adding one of: osage, cherokee 45683 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: chinese-hongkong, chinese-simplified, chinese-traditional, cyrillic, cyrillic-ext, greek-ext, japanese, latin, latin-ext, vietnamese

[code: unreachable-subsetting]
⚠️ WARN Combined length of family and style must not exceed 32 characters.
  • ⚠️ WARN

    Name ID 6 'CactusClassicalSerif-Regular' exceeds 27 characters. This has been found to cause problems with PostScript printers, especially on Mac platforms.


    [code: nameid6-too-long]

ofl/cactusclassicalserif/METADATA.pb Outdated Show resolved Hide resolved
ofl/cactusclassicalserif/OFL.txt Outdated Show resolved Hide resolved
ofl/cactusclassicalserif/OFL.txt Show resolved Hide resolved
@emmamarichal
Copy link
Collaborator

emmamarichal commented May 15, 2024

Review - Part II: Outlines / Spacing

  • There are some spacing issue in some Glyphs like in u26E48 / u26E4A / u26E4D / u2611D.
    I've made a script to find all the glyphs that have negative spacing, and this is the list I have:
    but you can ignore the most of them

J/f/j/v/w/y/yen/idieresis/yacute/ydieresis/itilde/fhook/Uhorn/uhorn/uni0251/gravecomb/acutecomb/uni0302/uni0304/uni0306/uni030B/uni030C/uni030D/uni0358/lamdagrek/chigrek/uni0423/uni0443/uni1EE8/uni1EE9/uni1EEA/uni1EEB/uni1EEC/uni1EED/uni1EEE/uni1EEF/uni1EF0/uni1EF1/ygrave/uni1EF5/uni1EF7/uni1EF9/uni20A9/uni20DD/uni2167/uni2177/uni302A/uni302B/uni302C/uni302D/uni3056/uni3069/uni3099/uni309A/uni30AC/uni30B0/uni30B2/uni30BE/uni30C0/uni30C5/uni30C7/uni30D6/uni30D7/uni30F4/uni30F7/uni30FA/uni3371/uni3372/uni3380/uni3383/uni3389/uni3391/uni339C/uni339E/uni339F/uni33A2/uni33A3/uni33A6/uni33A8/uni33AA/uni33AB/uni33AC/uni33B7/uni33BA/uni33BD/uni33BE/uni33CA/uni33DE/uni33DF/ff/uniFF37/uniFFA0/u20D34/u217F4/u24A39/u2611D/u263B0/u265D2/u26E48/u26E4A/u26E4D/u2767E/u27A83/u2930E/u2931D/u2931F/u29373/u293C3/u293D6/u29601/u2960D/u29643/u2964F/u2965D/u29776/u2997D/u29A86/u29E51/u2A048/u2A084/u2A35E/u2A37B/u2A37C/u2A3E9/u2A487/u2A488/u2A57D/u2A5D2/glyph56857

Screenshot 2024-05-15 at 12 54 14 Screenshot 2024-05-15 at 12 05 27 Screenshot 2024-05-15 at 12 19 30 Screenshot 2024-05-15 at 12 20 26
  • There might be an outline issue here, in the o:
Screenshot 2024-05-15 at 12 02 23

Copy link

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] CactusClassicalSerif-Regular.ttf
⚠️ WARN Validate location, size and resolution of article images.
  • ⚠️ WARN

    Family metadata at ofl/cactusclassicalserif 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

[26] CactusClassicalSerif-Regular.ttf
🔥 FAIL METADATA.pb: Check URL on copyright string is the same as in repository_url field.

But: font copyright string has 'https://github.com/MoonlitOwen/CactusSerif' and OFL text has 'https://github.com/MoonlitOwen/CactusSerif'

[code: mismatch]
🔥 FAIL Shapes languages in all GF glyphsets.
  • 🔥 FAIL

    GF_Latin_Vietnamese glyphset:

Language FAIL messages
vi_Latn (Vietnamese) Some mark glyphs were missing: ◌̃, ◌̉, ◌̛, ◌̣
[code: failed-language-shaping]
🔥 FAIL DESCRIPTION.en_us.html must have more than 200 bytes.
  • 🔥 FAIL

    DESCRIPTION.en_us.html must have size larger than 200 bytes.


    [code: too-short]
🔥 FAIL Is this a proper HTML snippet?
  • 🔥 FAIL

    ofl/cactusclassicalserif/DESCRIPTION.en_us.html does not include an HTML

    tag.


    [code: lacks-paragraph]
🔥 FAIL Ensure files are not too large.
  • 🔥 FAIL

    Font file is 26.8Mb, larger than limit 9.0Mb


    [code: massive-font]
⚠️ 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 Does the font contain chws and vchw features?
⚠️ WARN Check if each glyph has the recommended amount of contours.
  • ⚠️ 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: uni210A	Contours detected: 3	Expected: 2
  • Glyph name: uni21B9 Contours detected: 2 Expected: 4

  • Glyph name: uni2552 Contours detected: 1 Expected: 2

  • Glyph name: uni2553 Contours detected: 1 Expected: 2

  • Glyph name: uni2555 Contours detected: 1 Expected: 2

  • Glyph name: uni2556 Contours detected: 1 Expected: 2

  • Glyph name: uni2558 Contours detected: 1 Expected: 2

  • Glyph name: uni2559 Contours detected: 1 Expected: 2

  • Glyph name: uni255B Contours detected: 1 Expected: 2

  • Glyph name: uni255C Contours detected: 1 Expected: 2

  • 14 more.

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

[code: contour-count]
⚠️ WARN Check math signs have the same width.
  • ⚠️ WARN

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

Width = 576: equal, less, minus, greater, plus, logicalnot

Width = 840: uni3012

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

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

- cjkradicalspiritonehani

- cjkradicalspirittwohani

- glyph56811

- glyph56899

- glyph57184

[code: unreachable-glyphs]

⚠️ WARN Glyph names are all valid?
  • ⚠️ WARN

    The following glyph names may be too long for some legacy systems which may expect a maximum 31-characters length limit:
    cjkcompatibilityideograph2f804hani, cjkcompatibilityideograph2f80fhani, cjkcompatibilityideograph2f815hani, cjkcompatibilityideograph2f81ahani, cjkcompatibilityideograph2f822hani, cjkcompatibilityideograph2f828hani, cjkcompatibilityideograph2f833hani, cjkcompatibilityideograph2f83fhani, cjkcompatibilityideograph2f846hani, cjkcompatibilityideograph2f852hani and 384 more.

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

[code: legacy-long-names]
⚠️ WARN Do outlines contain any jaggy segments?
  • ⚠️ WARN

    The following glyphs have jaggy segments:

* cjkcompatibilityideograph2f86dhani (U+2F86D): B<<635.0,456.0>-<615.0,443.0>-<577.0,438.0>>/L<<577.0,438.0>--<745.0,438.0>> = 7.495857639729836

* cjkcompatibilityideograph2f8d3hani (U+2F8D3): L<<766.0,555.0>--<386.0,555.0>>/L<<386.0,555.0>--<441.0,543.0>> = 12.308015817427924

* cjkcompatibilityideograph2f921hani (U+2F921): B<<332.0,634.0>-<328.0,610.0>-<307.0,607.0>>/L<<307.0,607.0>--<612.0,607.0>> = 8.13010235415596

* cjkcompatibilityideograph2f921hani (U+2F921): L<<200.0,607.0>--<299.0,607.0>>/B<<299.0,607.0>-<288.0,609.0>-<278.0,617.0>> = 10.304846468766044

* cjkcompatibilityideographf910hani (U+F910): L<<422.0,224.0>--<412.0,232.0>>/B<<412.0,232.0>-<435.0,204.0>-<434.0,176.0>> = 11.939531082430465

* cjkcompatibilityideographf91dhani (U+F91D): B<<232.0,461.0>-<333.0,410.0>-<349.0,344.0>>/L<<349.0,344.0>--<349.0,575.0>> = 13.62699485989153

* cjkcompatibilityideographf939hani (U+F939): L<<760.0,380.0>--<751.0,380.0>>/B<<751.0,380.0>-<832.0,365.0>-<883.0,332.0>> = 10.491477012331599

* cjkcompatibilityideographf93bhani (U+F93B): B<<780.0,132.0>-<724.0,223.0>-<697.0,362.0>>/L<<697.0,362.0>--<697.0,18.0>> = 10.992507580267716

* cjkcompatibilityideographf93chani (U+F93C): B<<781.0,130.0>-<727.0,220.0>-<703.0,361.0>>/L<<703.0,361.0>--<703.0,18.0>> = 9.65989307844234

* cjkcompatibilityideographf93dhani (U+F93D): B<<773.0,143.0>-<713.0,245.0>-<686.0,405.0>>/L<<686.0,405.0>--<686.0,20.0>> = 9.578422919460733

* 7018 more.

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

[code: found-jaggy-segments]
⚠️ WARN Do outlines contain any semi-vertical or semi-horizontal lines?
  • ⚠️ WARN

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

* M (U+004D): L<<142.0,48.0>--<143.0,682.0>>

* M (U+004D): L<<738.0,334.0>--<739.0,635.0>>

* Mugrek (U+039C): L<<142.0,48.0>--<143.0,682.0>>

* Mugrek (U+039C): L<<738.0,334.0>--<739.0,635.0>>

* N (U+004E): L<<137.0,48.0>--<138.0,672.0>>

* N (U+004E): L<<183.0,609.0>--<184.0,49.0>>

* N (U+004E): L<<617.0,150.0>--<616.0,680.0>>

* N (U+004E): L<<662.0,681.0>--<661.0,-8.0>>

* Nacute (U+0143): L<<137.0,48.0>--<138.0,672.0>>

* Nacute (U+0143): L<<183.0,609.0>--<184.0,49.0>>

* 1998 more.

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

[code: found-semi-vertical]
⚠️ WARN Check the direction of the outermost contour in each glyph
  • ⚠️ WARN

    The following glyphs have a counter-clockwise outer contour:

* cjkcompatibilityideographf90fhani (U+F90F) has a counter-clockwise outer contour

* cjkcompatibilityideographf922hani (U+F922) has a counter-clockwise outer contour

* cjkcompatibilityideographf923hani (U+F923) has a counter-clockwise outer contour

* cjkcompatibilityideographf94ahani (U+F94A) has a counter-clockwise outer contour

* cjkcompatibilityideographfa5chani (U+FA5C) has a counter-clockwise outer contour

* glyph10550 (U+55AB) has a counter-clockwise outer contour

* glyph10585 (U+55CE) has a counter-clockwise outer contour

* glyph10592 (U+55D5) has a counter-clockwise outer contour

* glyph10606 (U+55E3) has a counter-clockwise outer contour

* glyph10606 (U+55E3) has a counter-clockwise outer contour

* 5551 more.

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

[code: ccw-outer-contour]
⚠️ WARN Ensure soft_dotted characters lose their dot when combined with marks that replace the dot.
  • ⚠️ WARN

    The dot of soft dotted characters used in orthographies must disappear in the following strings: i̋ i̍ j̀ j́ j̄ ɨ̀ ɨ́ ɨ̂ ɨ̄ ɨ̋ ɨ̌ ị̀ ị́ ị̂ ị̄

The dot of soft dotted characters should disappear in other cases, for example: i⃝̀ i⃝́ i⃝̂ i⃝̄ i⃝̆ i⃝̋ i⃝̌ i⃝̍ i⃞̀ i⃞́ i⃞̂ i⃞̄ i⃞̆ i⃞̋ i⃞̌ i⃞̍ ĵ j̆ j̋ ǰ

Your font fully covers the following languages that require the soft-dotted feature: Ekpeye (Latn, 226,000 speakers).

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

[code: soft-dotted]
⚠️ WARN METADATA.pb: Designers are listed correctly on the Google Fonts catalog?
  • ⚠️ WARN

    It seems that Moonlit Owen 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 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: yi, tifinagh, canadian-aboriginal
  • 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+02D9 DOT ABOVE: try adding one of: yi, canadian-aboriginal
  • U+02EA MODIFIER LETTER YIN DEPARTING TONE MARK: not included in any glyphset definition
  • U+02EB MODIFIER LETTER YANG DEPARTING TONE MARK: not included in any glyphset definition
  • U+0302 COMBINING CIRCUMFLEX ACCENT: try adding one of: coptic, tifinagh, math, cherokee
  • U+0306 COMBINING BREVE: try adding one of: tifinagh, old-permic
  • U+030B COMBINING DOUBLE ACUTE ACCENT: try adding one of: osage, cherokee 45732 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: chinese-hongkong, chinese-simplified, chinese-traditional, cyrillic, japanese, latin, latin-ext, menu, vietnamese

[code: unreachable-subsetting]
⚠️ WARN Combined length of family and style must not exceed 32 characters.
  • ⚠️ WARN

    Name ID 6 'CactusClassicalSerif-Regular' exceeds 27 characters. This has been found to cause problems with PostScript printers, especially on Mac platforms.


    [code: nameid6-too-long]
⚠️ 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/cactusclassicalserif


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

    This font contains the following optional tables:

- loca

- prep

- GSUB

- 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 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/cactusclassicalserif/CactusClassicalSerif-Regular.ttf
Dehinted Size 26.8Mb
Hinted Size 26.8Mb
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 1.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 5 15 72 9 150 0
0% 0% 2% 6% 29% 4% 60% 0%

Note: The following loglevels were omitted in this report:

  • SKIP
  • PASS
  • DEBUG

@aaronbell
Copy link
Collaborator Author

🔥 FAIL DESCRIPTION.en_us.html must have more than 200 bytes. 🔥 FAIL Is this a proper HTML snippet? -> I'll reach you about this

OK!

🔥 FAIL Shapes languages in all GF glyphsets. vi_Latn (Vietnamese) Some mark glyphs were missing: ◌̃, ◌̉, ◌̛, ◌̣ -> This is the only marks missing, could we solve this to avoid the fail?

Added

🔥 FAIL Ensure files are not too large. -> I suppose that's inevitable for a CJK font

Yeah....

🔥 FAIL Check Google Fonts glyph coverage. -> Can you confirm that it's ok and agreed the font doesn't cover the Latin Core glyphset?

Yes. The font covers Latin Kernal, which has been confirmed as OK

WARN Does GPOS table have kerning information? This check skips monospaced fonts as defined by post.isFixedPitch value -> There is no kerning at all, are we ok with that?

Ideally there should be kerning data for the non-CJK components, but as the font's intended purpose is for TC, I think it is OK to let this one go.

For the other WARN, I'm not an expert in CJK, I don't really know how important it
⚠️ WARN Check font contains no unreachable glyphs
⚠️ WARN Glyph names are all valid?
⚠️ WARN Do outlines contain any jaggy segments?
⚠️ WARN Do outlines contain any semi-vertical or semi-horizontal lines?
⚠️ WARN Check the direction of the outermost contour in each glyph
⚠️ WARN Ensure soft_dotted characters lose their dot when combined with marks that replace the dot.
⚠️ WARN Check for codepoints not covered by METADATA subsets.
⚠️ WARN Combined length of family and style must not exceed 32 characters.

I'm not particularly concerned about these.

@aaronbell
Copy link
Collaborator Author

Review - Part II: Outlines / Spacing

* There are some spacing issue in some Glyphs like in u26E48 / u26E4A / u26E4D / u2611D.
  I've made a script to find all the glyphs that have negative spacing, and this is the list I have:
  but you can ignore the most of them

Fixed the glyphs with zero width where the glyph was set out to the right side.

@aaronbell
Copy link
Collaborator Author

Updated! BTW, I'm not seeing that o bug you mentioned

Copy link

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] CactusClassicalSerif-Regular.ttf
⚠️ WARN Validate location, size and resolution of article images.
  • ⚠️ WARN

    Family metadata at ofl/cactusclassicalserif 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

[24] CactusClassicalSerif-Regular.ttf
🔥 FAIL METADATA.pb: Check URL on copyright string is the same as in repository_url field.

But: font copyright string has 'https://github.com/MoonlitOwen/CactusSerif' and OFL text has 'https://github.com/MoonlitOwen/CactusSerif'

[code: mismatch]
🔥 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 Ensure files are not too large.
  • 🔥 FAIL

    Font file is 26.8Mb, larger than limit 9.0Mb


    [code: massive-font]
⚠️ 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 Does the font contain chws and vchw features?
⚠️ WARN Check if each glyph has the recommended amount of contours.
  • ⚠️ 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: uni210A	Contours detected: 3	Expected: 2
  • Glyph name: uni21B9 Contours detected: 2 Expected: 4

  • Glyph name: uni2552 Contours detected: 1 Expected: 2

  • Glyph name: uni2553 Contours detected: 1 Expected: 2

  • Glyph name: uni2555 Contours detected: 1 Expected: 2

  • Glyph name: uni2556 Contours detected: 1 Expected: 2

  • Glyph name: uni2558 Contours detected: 1 Expected: 2

  • Glyph name: uni2559 Contours detected: 1 Expected: 2

  • Glyph name: uni255B Contours detected: 1 Expected: 2

  • Glyph name: uni255C Contours detected: 1 Expected: 2

  • 14 more.

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

[code: contour-count]
⚠️ WARN Check math signs have the same width.
  • ⚠️ WARN

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

Width = 576: less, logicalnot, equal, greater, plus, minus

Width = 840: uni3012

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

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

- cjkradicalspiritonehani

- cjkradicalspirittwohani

- glyph56811

- glyph56899

- glyph57184

[code: unreachable-glyphs]

⚠️ WARN Glyph names are all valid?
  • ⚠️ WARN

    The following glyph names may be too long for some legacy systems which may expect a maximum 31-characters length limit:
    cjkcompatibilityideograph2f804hani, cjkcompatibilityideograph2f80fhani, cjkcompatibilityideograph2f815hani, cjkcompatibilityideograph2f81ahani, cjkcompatibilityideograph2f822hani, cjkcompatibilityideograph2f828hani, cjkcompatibilityideograph2f833hani, cjkcompatibilityideograph2f83fhani, cjkcompatibilityideograph2f846hani, cjkcompatibilityideograph2f852hani and 384 more.

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

[code: legacy-long-names]
⚠️ WARN Do outlines contain any jaggy segments?
  • ⚠️ WARN

    The following glyphs have jaggy segments:

* cjkcompatibilityideograph2f86dhani (U+2F86D): B<<635.0,456.0>-<615.0,443.0>-<577.0,438.0>>/L<<577.0,438.0>--<745.0,438.0>> = 7.495857639729836

* cjkcompatibilityideograph2f8d3hani (U+2F8D3): L<<766.0,555.0>--<386.0,555.0>>/L<<386.0,555.0>--<441.0,543.0>> = 12.308015817427924

* cjkcompatibilityideograph2f921hani (U+2F921): B<<332.0,634.0>-<328.0,610.0>-<307.0,607.0>>/L<<307.0,607.0>--<612.0,607.0>> = 8.13010235415596

* cjkcompatibilityideograph2f921hani (U+2F921): L<<200.0,607.0>--<299.0,607.0>>/B<<299.0,607.0>-<288.0,609.0>-<278.0,617.0>> = 10.304846468766044

* cjkcompatibilityideographf910hani (U+F910): L<<422.0,224.0>--<412.0,232.0>>/B<<412.0,232.0>-<435.0,204.0>-<434.0,176.0>> = 11.939531082430465

* cjkcompatibilityideographf91dhani (U+F91D): B<<232.0,461.0>-<333.0,410.0>-<349.0,344.0>>/L<<349.0,344.0>--<349.0,575.0>> = 13.62699485989153

* cjkcompatibilityideographf939hani (U+F939): L<<760.0,380.0>--<751.0,380.0>>/B<<751.0,380.0>-<832.0,365.0>-<883.0,332.0>> = 10.491477012331599

* cjkcompatibilityideographf93bhani (U+F93B): B<<780.0,132.0>-<724.0,223.0>-<697.0,362.0>>/L<<697.0,362.0>--<697.0,18.0>> = 10.992507580267716

* cjkcompatibilityideographf93chani (U+F93C): B<<781.0,130.0>-<727.0,220.0>-<703.0,361.0>>/L<<703.0,361.0>--<703.0,18.0>> = 9.65989307844234

* cjkcompatibilityideographf93dhani (U+F93D): B<<773.0,143.0>-<713.0,245.0>-<686.0,405.0>>/L<<686.0,405.0>--<686.0,20.0>> = 9.578422919460733

* 7018 more.

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

[code: found-jaggy-segments]
⚠️ WARN Do outlines contain any semi-vertical or semi-horizontal lines?
  • ⚠️ WARN

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

* M (U+004D): L<<142.0,48.0>--<143.0,682.0>>

* M (U+004D): L<<738.0,334.0>--<739.0,635.0>>

* Mugrek (U+039C): L<<142.0,48.0>--<143.0,682.0>>

* Mugrek (U+039C): L<<738.0,334.0>--<739.0,635.0>>

* N (U+004E): L<<137.0,48.0>--<138.0,672.0>>

* N (U+004E): L<<183.0,609.0>--<184.0,49.0>>

* N (U+004E): L<<617.0,150.0>--<616.0,680.0>>

* N (U+004E): L<<662.0,681.0>--<661.0,-8.0>>

* Nacute (U+0143): L<<137.0,48.0>--<138.0,672.0>>

* Nacute (U+0143): L<<183.0,609.0>--<184.0,49.0>>

* 1998 more.

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

[code: found-semi-vertical]
⚠️ WARN Check the direction of the outermost contour in each glyph
  • ⚠️ WARN

    The following glyphs have a counter-clockwise outer contour:

* cjkcompatibilityideographf90fhani (U+F90F) has a counter-clockwise outer contour

* cjkcompatibilityideographf922hani (U+F922) has a counter-clockwise outer contour

* cjkcompatibilityideographf923hani (U+F923) has a counter-clockwise outer contour

* cjkcompatibilityideographf94ahani (U+F94A) has a counter-clockwise outer contour

* cjkcompatibilityideographfa5chani (U+FA5C) has a counter-clockwise outer contour

* glyph10550 (U+55AB) has a counter-clockwise outer contour

* glyph10585 (U+55CE) has a counter-clockwise outer contour

* glyph10592 (U+55D5) has a counter-clockwise outer contour

* glyph10606 (U+55E3) has a counter-clockwise outer contour

* glyph10606 (U+55E3) has a counter-clockwise outer contour

* 5551 more.

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

[code: ccw-outer-contour]
⚠️ WARN Ensure soft_dotted characters lose their dot when combined with marks that replace the dot.
  • ⚠️ WARN

    The dot of soft dotted characters used in orthographies must disappear in the following strings: i̋ i̍ j̀ j́ j̃ j̄ ɨ̀ ɨ́ ɨ̂ ɨ̃ ɨ̄ ɨ̋ ɨ̌ ị̀ ị́ ị̂ ị̃ ị̄

The dot of soft dotted characters should disappear in other cases, for example: i̛̋ i̛̍ i⃝̀ i⃝́ i⃝̂ i⃝̃ i⃝̄ i⃝̆ i⃝̉ i⃝̋ i⃝̌ i⃝̍ i⃞̀ i⃞́ i⃞̂ i⃞̃ i⃞̄ i⃞̆ i⃞̉ i⃞̋

Your font fully covers the following languages that require the soft-dotted feature: Ebira (Latn, 2,200,000 speakers), Ekpeye (Latn, 226,000 speakers).

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

[code: soft-dotted]
⚠️ WARN METADATA.pb: Designers are listed correctly on the Google Fonts catalog?
  • ⚠️ WARN

    It seems that Moonlit Owen 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 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: canadian-aboriginal, yi, tifinagh
  • 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+02D9 DOT ABOVE: try adding one of: canadian-aboriginal, yi
  • U+02EA MODIFIER LETTER YIN DEPARTING TONE MARK: not included in any glyphset definition
  • U+02EB MODIFIER LETTER YANG DEPARTING TONE MARK: not included in any glyphset definition
  • U+0302 COMBINING CIRCUMFLEX ACCENT: try adding one of: math, cherokee, tifinagh, coptic
  • U+0306 COMBINING BREVE: try adding one of: old-permic, tifinagh
  • U+030B COMBINING DOUBLE ACUTE ACCENT: try adding one of: osage, cherokee 45733 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: chinese-hongkong, chinese-simplified, chinese-traditional, cyrillic, japanese, latin, latin-ext, menu, vietnamese

[code: unreachable-subsetting]
⚠️ WARN Combined length of family and style must not exceed 32 characters.
  • ⚠️ WARN

    Name ID 6 'CactusClassicalSerif-Regular' exceeds 27 characters. This has been found to cause problems with PostScript printers, especially on Mac platforms.


    [code: nameid6-too-long]
⚠️ 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/cactusclassicalserif


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

    This font contains the following optional tables:

- loca

- prep

- GSUB

- 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 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/cactusclassicalserif/CactusClassicalSerif-Regular.ttf
Dehinted Size 26.8Mb
Hinted Size 26.8Mb
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 1.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 15 69 9 155 0
0% 0% 1% 6% 27% 4% 62% 0%

Note: The following loglevels were omitted in this report:

  • SKIP
  • PASS
  • DEBUG

Co-authored-by: Henry Chan <hfhchan@users.noreply.github.com>
@emmamarichal
Copy link
Collaborator

@aaronbell ah sorry! the 'o' issue is in that glyphs: uni3375

Screenshot 2024-05-16 at 10 39 33

@emmamarichal
Copy link
Collaborator

@aaronbell Mmh, then I would advice to let Moonlit repo everywhere, to avoid fails like this:

🔥 FAIL METADATA.pb: Check URL on copyright string is the same as in repository_url field.
Repository URL is https://github.com/aaronbell/CactusSerif

But: font copyright string has 'https://github.com/MoonlitOwen/CactusSerif' and OFL text has 'https://github.com/MoonlitOwen/CactusSerif'

This comment was marked as outdated.

@emmamarichal emmamarichal added the -- Needs Meta/Desc/License changes Corrections in METADATA.pb or html snippet or License file required label May 16, 2024
@emmamarichal emmamarichal removed the -- Needs Meta/Desc/License changes Corrections in METADATA.pb or html snippet or License file required label May 16, 2024
Copy link

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] CactusClassicalSerif-Regular.ttf
⚠️ WARN Validate location, size and resolution of article images.
  • ⚠️ WARN

    Family metadata at ofl/cactusclassicalserif 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

[24] CactusClassicalSerif-Regular.ttf
🔥 FAIL METADATA.pb: Check URL on copyright string is the same as in repository_url field.

But: font copyright string has 'https://github.com/MoonlitOwen/CactusSerif', OFL text has 'https://github.com/MoonlitOwen/CactusSerif' and HTML description has 'github.com/MoonlitOwen/CactusSerif'

[code: mismatch]
🔥 FAIL Ensure files are not too large.
  • 🔥 FAIL

    Font file is 26.8Mb, larger than limit 9.0Mb


    [code: massive-font]
⚠️ 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 Does the font contain chws and vchw features?
⚠️ WARN Check if each glyph has the recommended amount of contours.
  • ⚠️ 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: uni210A	Contours detected: 3	Expected: 2
  • Glyph name: uni21B9 Contours detected: 2 Expected: 4

  • Glyph name: uni2552 Contours detected: 1 Expected: 2

  • Glyph name: uni2553 Contours detected: 1 Expected: 2

  • Glyph name: uni2555 Contours detected: 1 Expected: 2

  • Glyph name: uni2556 Contours detected: 1 Expected: 2

  • Glyph name: uni2558 Contours detected: 1 Expected: 2

  • Glyph name: uni2559 Contours detected: 1 Expected: 2

  • Glyph name: uni255B Contours detected: 1 Expected: 2

  • Glyph name: uni255C Contours detected: 1 Expected: 2

  • 14 more.

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

[code: contour-count]
⚠️ WARN Check math signs have the same width.
  • ⚠️ WARN

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

Width = 576: logicalnot, greater, minus, plus, equal, less

Width = 840: uni3012

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

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

- cjkradicalspiritonehani

- cjkradicalspirittwohani

- glyph56811

- glyph56899

- glyph57184

[code: unreachable-glyphs]

⚠️ WARN Glyph names are all valid?
  • ⚠️ WARN

    The following glyph names may be too long for some legacy systems which may expect a maximum 31-characters length limit:
    cjkcompatibilityideograph2f804hani, cjkcompatibilityideograph2f80fhani, cjkcompatibilityideograph2f815hani, cjkcompatibilityideograph2f81ahani, cjkcompatibilityideograph2f822hani, cjkcompatibilityideograph2f828hani, cjkcompatibilityideograph2f833hani, cjkcompatibilityideograph2f83fhani, cjkcompatibilityideograph2f846hani, cjkcompatibilityideograph2f852hani and 384 more.

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

[code: legacy-long-names]
⚠️ WARN Do outlines contain any jaggy segments?
  • ⚠️ WARN

    The following glyphs have jaggy segments:

* cjkcompatibilityideograph2f86dhani (U+2F86D): B<<635.0,456.0>-<615.0,443.0>-<577.0,438.0>>/L<<577.0,438.0>--<745.0,438.0>> = 7.495857639729836

* cjkcompatibilityideograph2f8d3hani (U+2F8D3): L<<766.0,555.0>--<386.0,555.0>>/L<<386.0,555.0>--<441.0,543.0>> = 12.308015817427924

* cjkcompatibilityideograph2f921hani (U+2F921): B<<332.0,634.0>-<328.0,610.0>-<307.0,607.0>>/L<<307.0,607.0>--<612.0,607.0>> = 8.13010235415596

* cjkcompatibilityideograph2f921hani (U+2F921): L<<200.0,607.0>--<299.0,607.0>>/B<<299.0,607.0>-<288.0,609.0>-<278.0,617.0>> = 10.304846468766044

* cjkcompatibilityideographf910hani (U+F910): L<<422.0,224.0>--<412.0,232.0>>/B<<412.0,232.0>-<435.0,204.0>-<434.0,176.0>> = 11.939531082430465

* cjkcompatibilityideographf91dhani (U+F91D): B<<232.0,461.0>-<333.0,410.0>-<349.0,344.0>>/L<<349.0,344.0>--<349.0,575.0>> = 13.62699485989153

* cjkcompatibilityideographf939hani (U+F939): L<<760.0,380.0>--<751.0,380.0>>/B<<751.0,380.0>-<832.0,365.0>-<883.0,332.0>> = 10.491477012331599

* cjkcompatibilityideographf93bhani (U+F93B): B<<780.0,132.0>-<724.0,223.0>-<697.0,362.0>>/L<<697.0,362.0>--<697.0,18.0>> = 10.992507580267716

* cjkcompatibilityideographf93chani (U+F93C): B<<781.0,130.0>-<727.0,220.0>-<703.0,361.0>>/L<<703.0,361.0>--<703.0,18.0>> = 9.65989307844234

* cjkcompatibilityideographf93dhani (U+F93D): B<<773.0,143.0>-<713.0,245.0>-<686.0,405.0>>/L<<686.0,405.0>--<686.0,20.0>> = 9.578422919460733

* 7018 more.

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

[code: found-jaggy-segments]
⚠️ WARN Do outlines contain any semi-vertical or semi-horizontal lines?
  • ⚠️ WARN

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

* M (U+004D): L<<142.0,48.0>--<143.0,682.0>>

* M (U+004D): L<<738.0,334.0>--<739.0,635.0>>

* Mugrek (U+039C): L<<142.0,48.0>--<143.0,682.0>>

* Mugrek (U+039C): L<<738.0,334.0>--<739.0,635.0>>

* N (U+004E): L<<137.0,48.0>--<138.0,672.0>>

* N (U+004E): L<<183.0,609.0>--<184.0,49.0>>

* N (U+004E): L<<617.0,150.0>--<616.0,680.0>>

* N (U+004E): L<<662.0,681.0>--<661.0,-8.0>>

* Nacute (U+0143): L<<137.0,48.0>--<138.0,672.0>>

* Nacute (U+0143): L<<183.0,609.0>--<184.0,49.0>>

* 1998 more.

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

[code: found-semi-vertical]
⚠️ WARN Check the direction of the outermost contour in each glyph
  • ⚠️ WARN

    The following glyphs have a counter-clockwise outer contour:

* cjkcompatibilityideographf90fhani (U+F90F) has a counter-clockwise outer contour

* cjkcompatibilityideographf922hani (U+F922) has a counter-clockwise outer contour

* cjkcompatibilityideographf923hani (U+F923) has a counter-clockwise outer contour

* cjkcompatibilityideographf94ahani (U+F94A) has a counter-clockwise outer contour

* cjkcompatibilityideographfa5chani (U+FA5C) has a counter-clockwise outer contour

* glyph10550 (U+55AB) has a counter-clockwise outer contour

* glyph10585 (U+55CE) has a counter-clockwise outer contour

* glyph10592 (U+55D5) has a counter-clockwise outer contour

* glyph10606 (U+55E3) has a counter-clockwise outer contour

* glyph10606 (U+55E3) has a counter-clockwise outer contour

* 5551 more.

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

[code: ccw-outer-contour]
⚠️ WARN Ensure soft_dotted characters lose their dot when combined with marks that replace the dot.
  • ⚠️ WARN

    The dot of soft dotted characters used in orthographies must disappear in the following strings: i̋ i̍ j̀ j́ j̃ j̄ ɨ̀ ɨ́ ɨ̂ ɨ̃ ɨ̄ ɨ̋ ɨ̌ ị̀ ị́ ị̂ ị̃ ị̄

The dot of soft dotted characters should disappear in other cases, for example: i̛̋ i̛̍ i⃝̀ i⃝́ i⃝̂ i⃝̃ i⃝̄ i⃝̆ i⃝̉ i⃝̋ i⃝̌ i⃝̍ i⃞̀ i⃞́ i⃞̂ i⃞̃ i⃞̄ i⃞̆ i⃞̉ i⃞̋

Your font fully covers the following languages that require the soft-dotted feature: Ekpeye (Latn, 226,000 speakers), Ebira (Latn, 2,200,000 speakers).

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

[code: soft-dotted]
⚠️ WARN METADATA.pb: Designers are listed correctly on the Google Fonts catalog?
  • ⚠️ WARN

    It seems that Moonlit Owen 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 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+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+02D9 DOT ABOVE: try adding one of: yi, canadian-aboriginal
  • U+02EA MODIFIER LETTER YIN DEPARTING TONE MARK: not included in any glyphset definition
  • U+02EB MODIFIER LETTER YANG DEPARTING TONE MARK: not included in any glyphset definition
  • U+0302 COMBINING CIRCUMFLEX ACCENT: try adding one of: tifinagh, coptic, math, cherokee
  • U+0306 COMBINING BREVE: try adding one of: old-permic, tifinagh
  • U+030B COMBINING DOUBLE ACUTE ACCENT: try adding one of: osage, cherokee 45733 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: chinese-hongkong, chinese-simplified, chinese-traditional, cyrillic, japanese, latin, latin-ext, menu, vietnamese

[code: unreachable-subsetting]
⚠️ WARN Combined length of family and style must not exceed 32 characters.
  • ⚠️ WARN

    Name ID 6 'CactusClassicalSerif-Regular' exceeds 27 characters. This has been found to cause problems with PostScript printers, especially on Mac platforms.


    [code: nameid6-too-long]
⚠️ 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/cactusclassicalserif


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

    This font contains the following optional tables:

- loca

- prep

- GSUB

- gasp

[code: optional-tables]

ℹ️ INFO Does DESCRIPTION file contain a upstream Git repo URL?
ℹ️ 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 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/cactusclassicalserif/CactusClassicalSerif-Regular.ttf
Dehinted Size 26.8Mb
Hinted Size 26.8Mb
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 1.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 2 15 69 10 155 0
0% 0% 1% 6% 27% 4% 62% 0%

Note: The following loglevels were omitted in this report:

  • SKIP
  • PASS
  • DEBUG

Copy link

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] CactusClassicalSerif-Regular.ttf
⚠️ WARN Validate location, size and resolution of article images.
  • ⚠️ WARN

    Family metadata at ofl/cactusclassicalserif 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

[24] CactusClassicalSerif-Regular.ttf
🔥 FAIL METADATA.pb: Check URL on copyright string is the same as in repository_url field.

But: font copyright string has 'https://github.com/MoonlitOwen/CactusSerif', OFL text has 'https://github.com/MoonlitOwen/CactusSerif' and HTML description has 'github.com/MoonlitOwen/CactusSerif'

[code: mismatch]
🔥 FAIL Ensure files are not too large.
  • 🔥 FAIL

    Font file is 26.8Mb, larger than limit 9.0Mb


    [code: massive-font]
⚠️ 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 Does the font contain chws and vchw features?
⚠️ WARN Check if each glyph has the recommended amount of contours.
  • ⚠️ 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: uni210A	Contours detected: 3	Expected: 2
  • Glyph name: uni21B9 Contours detected: 2 Expected: 4

  • Glyph name: uni2552 Contours detected: 1 Expected: 2

  • Glyph name: uni2553 Contours detected: 1 Expected: 2

  • Glyph name: uni2555 Contours detected: 1 Expected: 2

  • Glyph name: uni2556 Contours detected: 1 Expected: 2

  • Glyph name: uni2558 Contours detected: 1 Expected: 2

  • Glyph name: uni2559 Contours detected: 1 Expected: 2

  • Glyph name: uni255B Contours detected: 1 Expected: 2

  • Glyph name: uni255C Contours detected: 1 Expected: 2

  • 14 more.

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

[code: contour-count]
⚠️ WARN Check math signs have the same width.
  • ⚠️ WARN

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

Width = 576: less, logicalnot, greater, minus, plus, equal

Width = 840: uni3012

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

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

- cjkradicalspiritonehani

- cjkradicalspirittwohani

- glyph56811

- glyph56899

- glyph57184

[code: unreachable-glyphs]

⚠️ WARN Glyph names are all valid?
  • ⚠️ WARN

    The following glyph names may be too long for some legacy systems which may expect a maximum 31-characters length limit:
    cjkcompatibilityideograph2f804hani, cjkcompatibilityideograph2f80fhani, cjkcompatibilityideograph2f815hani, cjkcompatibilityideograph2f81ahani, cjkcompatibilityideograph2f822hani, cjkcompatibilityideograph2f828hani, cjkcompatibilityideograph2f833hani, cjkcompatibilityideograph2f83fhani, cjkcompatibilityideograph2f846hani, cjkcompatibilityideograph2f852hani and 384 more.

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

[code: legacy-long-names]
⚠️ WARN Do outlines contain any jaggy segments?
  • ⚠️ WARN

    The following glyphs have jaggy segments:

* cjkcompatibilityideograph2f86dhani (U+2F86D): B<<635.0,456.0>-<615.0,443.0>-<577.0,438.0>>/L<<577.0,438.0>--<745.0,438.0>> = 7.495857639729836

* cjkcompatibilityideograph2f8d3hani (U+2F8D3): L<<766.0,555.0>--<386.0,555.0>>/L<<386.0,555.0>--<441.0,543.0>> = 12.308015817427924

* cjkcompatibilityideograph2f921hani (U+2F921): B<<332.0,634.0>-<328.0,610.0>-<307.0,607.0>>/L<<307.0,607.0>--<612.0,607.0>> = 8.13010235415596

* cjkcompatibilityideograph2f921hani (U+2F921): L<<200.0,607.0>--<299.0,607.0>>/B<<299.0,607.0>-<288.0,609.0>-<278.0,617.0>> = 10.304846468766044

* cjkcompatibilityideographf910hani (U+F910): L<<422.0,224.0>--<412.0,232.0>>/B<<412.0,232.0>-<435.0,204.0>-<434.0,176.0>> = 11.939531082430465

* cjkcompatibilityideographf91dhani (U+F91D): B<<232.0,461.0>-<333.0,410.0>-<349.0,344.0>>/L<<349.0,344.0>--<349.0,575.0>> = 13.62699485989153

* cjkcompatibilityideographf939hani (U+F939): L<<760.0,380.0>--<751.0,380.0>>/B<<751.0,380.0>-<832.0,365.0>-<883.0,332.0>> = 10.491477012331599

* cjkcompatibilityideographf93bhani (U+F93B): B<<780.0,132.0>-<724.0,223.0>-<697.0,362.0>>/L<<697.0,362.0>--<697.0,18.0>> = 10.992507580267716

* cjkcompatibilityideographf93chani (U+F93C): B<<781.0,130.0>-<727.0,220.0>-<703.0,361.0>>/L<<703.0,361.0>--<703.0,18.0>> = 9.65989307844234

* cjkcompatibilityideographf93dhani (U+F93D): B<<773.0,143.0>-<713.0,245.0>-<686.0,405.0>>/L<<686.0,405.0>--<686.0,20.0>> = 9.578422919460733

* 7018 more.

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

[code: found-jaggy-segments]
⚠️ WARN Do outlines contain any semi-vertical or semi-horizontal lines?
  • ⚠️ WARN

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

* M (U+004D): L<<142.0,48.0>--<143.0,682.0>>

* M (U+004D): L<<738.0,334.0>--<739.0,635.0>>

* Mugrek (U+039C): L<<142.0,48.0>--<143.0,682.0>>

* Mugrek (U+039C): L<<738.0,334.0>--<739.0,635.0>>

* N (U+004E): L<<137.0,48.0>--<138.0,672.0>>

* N (U+004E): L<<183.0,609.0>--<184.0,49.0>>

* N (U+004E): L<<617.0,150.0>--<616.0,680.0>>

* N (U+004E): L<<662.0,681.0>--<661.0,-8.0>>

* Nacute (U+0143): L<<137.0,48.0>--<138.0,672.0>>

* Nacute (U+0143): L<<183.0,609.0>--<184.0,49.0>>

* 1998 more.

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

[code: found-semi-vertical]
⚠️ WARN Check the direction of the outermost contour in each glyph
  • ⚠️ WARN

    The following glyphs have a counter-clockwise outer contour:

* cjkcompatibilityideographf90fhani (U+F90F) has a counter-clockwise outer contour

* cjkcompatibilityideographf922hani (U+F922) has a counter-clockwise outer contour

* cjkcompatibilityideographf923hani (U+F923) has a counter-clockwise outer contour

* cjkcompatibilityideographf94ahani (U+F94A) has a counter-clockwise outer contour

* cjkcompatibilityideographfa5chani (U+FA5C) has a counter-clockwise outer contour

* glyph10550 (U+55AB) has a counter-clockwise outer contour

* glyph10585 (U+55CE) has a counter-clockwise outer contour

* glyph10592 (U+55D5) has a counter-clockwise outer contour

* glyph10606 (U+55E3) has a counter-clockwise outer contour

* glyph10606 (U+55E3) has a counter-clockwise outer contour

* 5551 more.

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

[code: ccw-outer-contour]
⚠️ WARN Ensure soft_dotted characters lose their dot when combined with marks that replace the dot.
  • ⚠️ WARN

    The dot of soft dotted characters used in orthographies must disappear in the following strings: i̋ i̍ j̀ j́ j̃ j̄ ɨ̀ ɨ́ ɨ̂ ɨ̃ ɨ̄ ɨ̋ ɨ̌ ị̀ ị́ ị̂ ị̃ ị̄

The dot of soft dotted characters should disappear in other cases, for example: i̛̋ i̛̍ i⃝̀ i⃝́ i⃝̂ i⃝̃ i⃝̄ i⃝̆ i⃝̉ i⃝̋ i⃝̌ i⃝̍ i⃞̀ i⃞́ i⃞̂ i⃞̃ i⃞̄ i⃞̆ i⃞̉ i⃞̋

Your font fully covers the following languages that require the soft-dotted feature: Ekpeye (Latn, 226,000 speakers), Ebira (Latn, 2,200,000 speakers).

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

[code: soft-dotted]
⚠️ WARN METADATA.pb: Designers are listed correctly on the Google Fonts catalog?
  • ⚠️ WARN

    It seems that Moonlit Owen 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 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: yi, canadian-aboriginal, tifinagh
  • 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+02D9 DOT ABOVE: try adding one of: yi, canadian-aboriginal
  • U+02EA MODIFIER LETTER YIN DEPARTING TONE MARK: not included in any glyphset definition
  • U+02EB MODIFIER LETTER YANG DEPARTING TONE MARK: not included in any glyphset definition
  • U+0302 COMBINING CIRCUMFLEX ACCENT: try adding one of: cherokee, tifinagh, coptic, math
  • U+0306 COMBINING BREVE: try adding one of: tifinagh, old-permic
  • U+030B COMBINING DOUBLE ACUTE ACCENT: try adding one of: cherokee, osage 45733 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: chinese-hongkong, chinese-simplified, chinese-traditional, cyrillic, japanese, latin, latin-ext, menu, vietnamese

[code: unreachable-subsetting]
⚠️ WARN Combined length of family and style must not exceed 32 characters.
  • ⚠️ WARN

    Name ID 6 'CactusClassicalSerif-Regular' exceeds 27 characters. This has been found to cause problems with PostScript printers, especially on Mac platforms.


    [code: nameid6-too-long]
⚠️ 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/cactusclassicalserif


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

    This font contains the following optional tables:

- loca

- prep

- GSUB

- gasp

[code: optional-tables]

ℹ️ INFO Does DESCRIPTION file contain a upstream Git repo URL?
ℹ️ 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 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/cactusclassicalserif/CactusClassicalSerif-Regular.ttf
Dehinted Size 26.8Mb
Hinted Size 26.8Mb
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 1.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 2 15 69 10 155 0
0% 0% 1% 6% 27% 4% 62% 0%

Note: The following loglevels were omitted in this report:

  • SKIP
  • PASS
  • DEBUG

@emmamarichal emmamarichal merged commit 2920d46 into main May 16, 2024
6 of 7 checks passed
@emmamarichal emmamarichal deleted the gftools_packager_ofl_cactusclassicalserif branch May 16, 2024 15:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
I New Font II CJK Chinese, Japanese, Korean scripts
Projects
Status: Live
Development

Successfully merging this pull request may close these issues.

Add 仙人掌明體 Cactus Classical Serif
3 participants