Skip to content

Manufacturing Consent: Version 3.000; ttfautohint (v1.8.4.7-5d5b) added #9496

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

Merged
merged 1 commit into from
May 30, 2025

Conversation

yanone
Copy link
Collaborator

@yanone yanone commented May 23, 2025

Taken from the upstream repo https://github.com/googlefonts/manufacturing-consent-font at commit googlefonts/manufacturing-consent-font@80c3d82.

Resolves #2071

PR Checklist:

PR

  • The PR is in the Traffic Jam Board (Project > Traffic Jam Board)
  • It has the correct labels (upgrade, new font, specific language)
  • The PR is linked to the corresponding issue

QA

  • 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
  • The article has no typos, images are properly linked and correctly sized
  • OFL.txt contains the correct license URL (https://openfontlicense.org)

Specifics

  • primary_script definition in the METADATA.pb file for all projects that have a primary non-Latin based language support target
  • subsets definitions in the METADATA.pb reflect the actual subsets and languages present in the font files (in alphabetic order). For CJK fonts, only include one of the following subsets chinese-hongkong, chinese-simplified, chinese-traditional, korean, japanese.

Release

  • 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
  • minisite_url definition in the METADATA.pb file for commissioned projects
  • tags are added for NEW FONTS

@yanone yanone added I New Font II Accepted Non-commissioned projects that are accepted for onboarding labels May 23, 2025
@yanone
Copy link
Collaborator Author

yanone commented May 23, 2025

Dave asked for a swift processing of the font for a client, so the character support will remain insufficient. I'm assuming this particular author wouldn't care for a bio, so ignoring it.

Copy link

FontSpector report

fontspector version: 1.0.2

Checks with FATAL results

These must be addressed first.

[2] ofl/manufacturingconsent/ManufacturingConsent-Regular.ttf
💥 ERROR Version number has increased since previous release on Google Fonts? (googlefonts/version_bump)
  • 💥 ERROR Error: Failed to find fileRefs in manifest: Object {"error": String("Unable to find family: Manufacturing Consent")}
💥 ERROR Check if the vertical metrics of a family are similar to the same family hosted on Google Fonts. (googlefonts/vertical_metrics_regressions)
  • 💥 ERROR Error: Could not get remote style: Failed to find fileRefs in manifest: Object {"error": String("Unable to find family: Manufacturing Consent")}

All other checks

[20] ofl/manufacturingconsent/ManufacturingConsent-Regular.ttf
🔥 FAIL Ensure the font supports case swapping for all its glyphs. (case_mapping)
  • 🔥 FAIL The following glyphs are missing case-swapping counterparts:
Glyph present in the font Missing case-swapping counterpart
U+A75B: LATIN SMALL LETTER R ROTUNDA U+A75A: LATIN CAPITAL LETTER R ROTUNDA
[code: missing-case-counterparts]
🔥 FAIL Shapes languages in all GF glyphsets. (googlefonts/glyphsets/shape_languages)
  • 🔥 FAIL Failed language shaping:
Mandatory orthography codepoints: The following base characters are missing from the font: ẞ* de_Latn (German)
Mandatory orthography codepoints: The following mark characters are missing from the font: ̦* tr_Latn (Turkish)
Mandatory orthography codepoints: The following base characters are missing from the font: GĦ, ħ, Ħ, għ* mt_Latn (Maltese)
Mandatory orthography codepoints: The following base characters are missing from the font: ț, Ț, Ș, ș The following mark characters are missing from the font: ̦* ro_Latn (Romanian)
[code: failed-language-shaping]
  • ⚠️ WARN Warning language shaping:
Auxiliary orthography codepoints: The following auxiliary characters are missing from the font: ẞ* fr_Latn (French) * it_Latn (Italian) * pl_Latn (Polish) * tr_Latn (Turkish)
Auxiliary orthography codepoints: The following auxiliary characters are missing from the font: Ǥ The following auxiliary characters are missing from the font: Ħ The following auxiliary characters are missing from the font: Ŋ The following auxiliary characters are missing from the font: Ș The following auxiliary characters are missing from the font: ẞ The following auxiliary characters are missing from the font: Ț The following auxiliary characters are missing from the font: Ŧ The following auxiliary characters are missing from the font: Ʒ The following auxiliary characters are missing from the font: Ǯ The following auxiliary characters are missing from the font: ǥ The following auxiliary characters are missing from the font: ħ The following auxiliary characters are missing from the font: ŋ The following auxiliary characters are missing from the font: ș The following auxiliary characters are missing from the font: ț The following auxiliary characters are missing from the font: ŧ The following auxiliary characters are missing from the font: ʒ The following auxiliary characters are missing from the font: ǯ* fi_Latn (Finnish)
Auxiliary orthography codepoints: The following auxiliary characters are missing from the font: ʻ* en_Latn (English)
Auxiliary orthography codepoints: Shaper didn't attach tildecomb to M when shaping the text 'M̃' Shaper didn't attach acutecomb to iogonek when shaping the text 'į́' Shaper didn't attach uni0307 to iogonek when shaping the text 'į̇́' Shaper didn't attach acutecomb to uni0307 when shaping the text 'į̇́' Shaper didn't attach tildecomb to iogonek when shaping the text 'į̃' Shaper didn't attach uni0307 to iogonek when shaping the text 'į̇̃' Shaper didn't attach tildecomb to uni0307 when shaping the text 'į̇̃'* lt_Latn (Lithuanian)
Auxiliary orthography codepoints: The following auxiliary characters are missing from the font: Ŋ The following auxiliary characters are missing from the font: Ŧ The following auxiliary characters are missing from the font: ŋ The following auxiliary characters are missing from the font: ŧ* nb_Latn (Norwegian Bokmål)
[code: warning-language-shaping]
⚠️ WARN Check mark characters are in GDEF mark glyph class. (opentype/GDEF_mark_chars)
  • ⚠️ WARN The following mark characters should be in the GDEF mark glyph class:
  • U+20DD (uni20DD) [code: mark-chars]
⚠️ WARN Checking unitsPerEm value is reasonable. (opentype/unitsperem)
  • ⚠️ WARN In order to optimize performance on some legacy renderers, the value of unitsPerEm at the head table should ideally be a power of 2 between 16 to 16384. And values of 1000 and 2000 are also common and may be just fine as well. But we got 1200 instead. [code: suboptimal]
⚠️ WARN Check if each glyph has the recommended amount of contours. (contour_count)
  • ⚠️ 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:

  • Aogonek (U+0104): found 5, expected one of: {4, 3, 2}
  • Aring (U+00C5): found 6, expected one of: {5, 4, 3}
  • B (U+0042): found 7, expected one of: {3, 1, 4, 2}
  • Ccircumflex (U+0108): found 4, expected one of: {2, 3}
  • D (U+0044): found 5, expected one of: {2, 3, 4, 1}
  • Dcaron (U+010E): found 6, expected one of: {3, 4, 2}
  • Dcroat (U+0110): found 6, expected one of: {2, 1, 3, 4}
  • Eth (U+00D0): found 6, expected one of: {1, 2, 4, 3}
  • uni018F (U+018F): found 8, expected one of: {2, 1}
    ... and 49 others [code: contour-count]
⚠️ WARN Check math signs have the same width. (math_signs_width)
  • ⚠️ WARN The most common width is 574 among a set of 8 math glyphs.
    The following math glyphs have a different width, though:
    width=494: logicalnot
    width=697: equal
    width=425: less, greater
    width=699: divide [code: width-outliers]
⚠️ WARN Combined length of family and style must not exceed 32 characters. (name/family_and_style_max_length)
  • ⚠️ WARN Name ID 6 'PostScript Name' exceeds 27 characters. This has been found to cause problems with PostScript printers, especially on Mac platforms. [code: nameid6-too-long]
⚠️ WARN Ensure indic fonts have the Indian Rupee Sign glyph. (rupee)
  • ⚠️ WARN Font is missing the Indian Rupee Sign glyph. Please add a glyph for Indian Rupee Sign (₹) at codepoint U+20B9. [code: missing-rupee]
⚠️ WARN Does the font contain a soft hyphen? (soft_hyphen)
  • ⚠️ WARN This font has a 'Soft Hyphen' character. [code: softhyphen]
⚠️ WARN Font has correct separator glyphs? (googlefonts/separator_glyphs)
  • ⚠️ WARN The following separator glyphs are missing:
  • U+2028
  • U+2029 [code: missing-separator-glyphs]
⚠️ WARN Ensure dotted circle glyph is present and can attach marks. (dotted_circle)
  • ⚠️ WARN No dotted circle glyph present [code: missing-dotted-circle]
⚠️ WARN Do outlines contain any jaggy segments? (outline_jaggy_segments)
  • ⚠️ WARN The following glyphs have jaggy segments:
  • A (U+0041): Line(Line { p0: (280.0, 261.0), p1: (286.0, 272.0) })/Line(Line { p0: (286.0, 272.0), p1: (219.0, 160.0) }) = 2.2780067918182434
  • Aacute (U+00C1): Line(Line { p0: (280.0, 261.0), p1: (286.0, 272.0) })/Line(Line { p0: (286.0, 272.0), p1: (219.0, 160.0) }) = 2.2780067918182434
  • Abreve (U+0102): Line(Line { p0: (280.0, 261.0), p1: (286.0, 272.0) })/Line(Line { p0: (286.0, 272.0), p1: (219.0, 160.0) }) = 2.2780067918182434
  • Acircumflex (U+00C2): Line(Line { p0: (280.0, 261.0), p1: (286.0, 272.0) })/Line(Line { p0: (286.0, 272.0), p1: (219.0, 160.0) }) = 2.2780067918182434
  • Adieresis (U+00C4): Line(Line { p0: (280.0, 261.0), p1: (286.0, 272.0) })/Line(Line { p0: (286.0, 272.0), p1: (219.0, 160.0) }) = 2.2780067918182434
  • Agrave (U+00C0): Line(Line { p0: (280.0, 261.0), p1: (286.0, 272.0) })/Line(Line { p0: (286.0, 272.0), p1: (219.0, 160.0) }) = 2.2780067918182434
  • Amacron (U+0100): Line(Line { p0: (280.0, 261.0), p1: (286.0, 272.0) })/Line(Line { p0: (286.0, 272.0), p1: (219.0, 160.0) }) = 2.2780067918182434
  • Aogonek (U+0104): Line(Line { p0: (280.0, 261.0), p1: (286.0, 272.0) })/Line(Line { p0: (286.0, 272.0), p1: (219.0, 160.0) }) = 2.2780067918182434
  • Aring (U+00C5): Line(Line { p0: (280.0, 261.0), p1: (286.0, 272.0) })/Line(Line { p0: (286.0, 272.0), p1: (219.0, 160.0) }) = 2.2780067918182434
    ... and 20 others [code: found-jaggy-segments]
⚠️ WARN Check there are no overlapping path segments (overlapping_path_segments)
  • ⚠️ WARN The following glyphs have overlapping path segments:
  • AE (U+00C6): Line(Line { p0: (942.0, 769.0), p1: (942.0, 769.0) }) has the same coordinates as a previous segment.
  • C (U+0043): Line(Line { p0: (532.0, 769.0), p1: (532.0, 769.0) }) has the same coordinates as a previous segment.
  • Cacute (U+0106): Line(Line { p0: (532.0, 769.0), p1: (532.0, 769.0) }) has the same coordinates as a previous segment.
  • Ccaron (U+010C): Line(Line { p0: (532.0, 769.0), p1: (532.0, 769.0) }) has the same coordinates as a previous segment.
  • Ccedilla (U+00C7): Line(Line { p0: (532.0, 769.0), p1: (532.0, 769.0) }) has the same coordinates as a previous segment.
  • Ccircumflex (U+0108): Line(Line { p0: (532.0, 769.0), p1: (532.0, 769.0) }) has the same coordinates as a previous segment.
  • Cdotaccent (U+010A): Line(Line { p0: (532.0, 769.0), p1: (532.0, 769.0) }) has the same coordinates as a previous segment.
  • E (U+0045): Line(Line { p0: (532.0, 769.0), p1: (532.0, 769.0) }) has the same coordinates as a previous segment.
  • Eacute (U+00C9): Line(Line { p0: (532.0, 769.0), p1: (532.0, 769.0) }) has the same coordinates as a previous segment.
    ... and 27 others [code: overlapping-path-segments]
⚠️ WARN Do outlines contain any semi-vertical or semi-horizontal lines? (outline_semi_vertical)
  • ⚠️ WARN The following glyphs have semi-vertical/semi-horizontal lines:
  • Amacron (U+0100): Line(Line { p0: (652.0, 867.0), p1: (379.0, 868.0) })
  • Amacron (U+0100): Line(Line { p0: (379.0, 975.0), p1: (652.0, 974.0) })
  • Emacron (U+0112): Line(Line { p0: (633.0, 843.0), p1: (360.0, 844.0) })
  • Emacron (U+0112): Line(Line { p0: (360.0, 951.0), p1: (633.0, 950.0) })
  • uni018F (U+018F): Line(Line { p0: (398.0, 410.0), p1: (669.0, 411.0) })
  • G (U+0047): Line(Line { p0: (414.0, 698.0), p1: (413.0, 481.0) })
  • Gbreve (U+011E): Line(Line { p0: (414.0, 698.0), p1: (413.0, 481.0) })
  • Gcircumflex (U+011C): Line(Line { p0: (414.0, 698.0), p1: (413.0, 481.0) })
  • uni0122 (U+0122): Line(Line { p0: (414.0, 698.0), p1: (413.0, 481.0) })
    ... and 41 others [code: found-semi-vertical]
⚠️ WARN Ensure fonts have ScriptLangTags declared on the 'meta' table. (googlefonts/meta/script_lang_tags)
  • ⚠️ WARN This font file does not have a 'meta' table. [code: lacks-meta-table]
⚠️ WARN Checking OS/2 achVendID. (googlefonts/vendor_id)
  • ⚠️ WARN OS/2 VendorID value 'NONE' is not yet recognized.
    If you registered it recently, then it's safe to ignore this warning message. Otherwise, you should set it to your own unique 4 character code, and register it with Microsoft at https://www.microsoft.com/typography/links/vendorlist.aspx
    [code: unknown]
ℹ️ INFO Show hinting filesize impact. (hinting_impact)
  • ℹ️ INFO Hinting filesize impact:
ManufacturingConsent-Regular.ttf
Dehinted Size 57668
Hinted Size 61796
Increase 4128
Change 7.2 %
ℹ️ INFO Font contains all required tables? (required_tables)
  • ℹ️ INFO This font contains the following optional tables:

    cvt
    fpgm
    loca
    prep
    GPOS
    GSUB
    gasp [code: optional-tables]

ℹ️ INFO Is the Grid-fitting and Scan-conversion Procedure ('gasp') table set to optimize rendering? (googlefonts/gasp)
  • ℹ️ INFO These are the ppm ranges declared on the gasp table:
PPM <= 65535- Use grid-fitting - Use grayscale rendering - Use gridfitting with ClearType symmetric smoothing - Use smoothing along multiple axes with ClearType®
[code: ranges]
ℹ️ INFO Font has old ttfautohint applied? (googlefonts/old_ttfautohint)
  • ℹ️ 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 3.000; ttfautohint (v1.8.4.7-5d5b) [code: version-not-detected]
[5] ofl/manufacturingconsent
🔥 FAIL Check for presence of an ARTICLE.en_us.html file (googlefonts/description/has_article)
  • 🔥 FAIL This font doesn't have an ARTICLE.en_us.html file. [code: missing-article]
🔥 FAIL Check font has a license. (googlefonts/family/has_license)
  • 🔥 FAIL No license file was found. Please add an OFL.txt or a LICENSE.txt file. [code: no-license]
🔥 FAIL Check Google Fonts glyph coverage. (googlefonts/glyph_coverage)
  • 🔥 FAIL ofl/manufacturingconsent/ManufacturingConsent-Regular.ttf missing required codepoints:
  • 0x201E
  • 0x0219
  • 0x1E80
  • 0x02C6
  • 0x1E83
  • 0x02C7
  • 0x1E82
  • 0x0326
  • 0x002A
    ... and 25 others [code: missing-codepoints]
⚠️ WARN Check for codepoints not covered by METADATA subsets. (googlefonts/metadata/unreachable_subsetting)
  • ⚠️ WARN ofl/manufacturingconsent/ManufacturingConsent-Regular.ttf: 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+0302 COMBINING CIRCUMFLEX ACCENT: try adding one of: math, coptic, cherokee, tifinagh
  • U+0305 COMBINING OVERLINE: try adding one of: coptic, elbasan, glagolitic, gothic, math
  • U+0306 COMBINING BREVE: try adding one of: old-permic, tifinagh
  • U+0307 COMBINING DOT ABOVE: try adding one of: syriac, malayalam, todhri, old-permic, canadian-aboriginal, coptic, tai-le, math, duployan, tifinagh, hebrew
  • U+030A COMBINING RING ABOVE: try adding one of: syriac, duployan
  • U+030B COMBINING DOUBLE ACUTE ACCENT: try adding one of: osage, cherokee
  • U+030C COMBINING CARON: try adding one of: cherokee, tai-le
  • U+0315 COMBINING COMMA ABOVE RIGHT: try adding math
  • U+0327 COMBINING CEDILLA: try adding math
    ... and 3 others

Or you can add the above codepoints to one of the subsets supported by the font: latin-ext, latin [code: unreachable-subsetting]

ℹ️ INFO Check axis ordering on the STAT table. (googlefonts/STAT/axis_order)
  • ℹ️ INFO All of the fonts lack a STAT table. [code: summary]

Summary

⏩ SKIP 💥 ERROR ✅ PASS 🔥 FAIL ℹ️ INFO ⚠️ WARN
64 2 89 5 5 16
36% 1% 50% 3% 3% 9%

@m4rc1e m4rc1e merged commit 6f219c3 into main May 30, 2025
10 of 11 checks passed
@m4rc1e m4rc1e deleted the gftools_packager_ofl_manufacturingconsent branch May 30, 2025 12:27
@github-project-automation github-project-automation bot moved this from PR GF to In Dev / PR Merged in Fonts Traffic Jam May 30, 2025
@emmamarichal emmamarichal moved this from In Dev / PR Merged to In Sandbox in Fonts Traffic Jam Jun 12, 2025
@m4rc1e m4rc1e moved this from In Sandbox to Live in Fonts Traffic Jam Jun 27, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
I New Font II Accepted Non-commissioned projects that are accepted for onboarding
Projects
Status: Live
Development

Successfully merging this pull request may close these issues.

Add Chomsky
2 participants