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

Why does Roboto not display in Firefox Nightly? #738

Closed
sucrose opened this issue Apr 26, 2017 · 33 comments
Closed

Why does Roboto not display in Firefox Nightly? #738

sucrose opened this issue Apr 26, 2017 · 33 comments

Comments

@sucrose
Copy link

sucrose commented Apr 26, 2017

I receive these errors in the console on my Windows 7 system using Firefox 54.0a2 (2017-04-26) (64-bit):

downloadable font: Layout: DFLT script doesn't satisfy the spec. DefaultLangSys is NULL (font-family: "Roboto" style:normal weight:normal stretch:normal src index:2) source: http://fonts.gstatic.com/s/roboto/v16/CWB0XYA8bzo0kSThX0UTuA.woff2 css:50:12

downloadable font: Layout: Failed to parse script table 0 (font-family: "Roboto" style:normal weight:normal stretch:normal src index:2) source: http://fonts.gstatic.com/s/roboto/v16/CWB0XYA8bzo0kSThX0UTuA.woff2 css:50:12

downloadable font: GSUB: Failed to parse script list table (font-family: "Roboto" style:normal weight:normal stretch:normal src index:2) source: http://fonts.gstatic.com/s/roboto/v16/CWB0XYA8bzo0kSThX0UTuA.woff2 css:50:12

downloadable font: rejected by sanitizer (font-family: "Roboto" style:normal weight:normal stretch:normal src index:2) source: http://fonts.gstatic.com/s/roboto/v16/CWB0XYA8bzo0kSThX0UTuA.woff2

This happens when gfx.downloadable_fonts.otl_validation is set to true (the default for Nightly but not stable releases)

@scheinercc
Copy link

Here is a related comment from Firefox's bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=1331797#c19

@davelab6
Copy link
Member

davelab6 commented May 2, 2017

Thanks @sucrose and @scheinercc :) Will take a look at this!

@davelab6 davelab6 added this to the Questions about Google Fonts service (API) milestone May 2, 2017
@JosepBarrera
Copy link

I receive similar errors in console, win 10 Firefox 54.02a (2017-05-11) (32-bit)
downloadable font: Layout: DFLT script doesn't satisfy the spec. DefaultLangSys is NULL (font-family: "Roboto" style:normal weight:normal stretch:normal src index:2) source: https://fonts.gstatic.com/s/roboto/v16/CWB0XYA8bzo0kSThX0UTuA.woff2 css:106:12
downloadable font: Layout: Failed to parse script table 0 (font-family: "Roboto" style:normal weight:normal stretch:normal src index:2) source: https://fonts.gstatic.com/s/roboto/v16/CWB0XYA8bzo0kSThX0UTuA.woff2 css:106:12
downloadable font: GSUB: Failed to parse script list table (font-family: "Roboto" style:normal weight:normal stretch:normal src index:2) source: https://fonts.gstatic.com/s/roboto/v16/CWB0XYA8bzo0kSThX0UTuA.woff2 css:106:12
downloadable font: rejected by sanitizer (font-family: "Roboto" style:normal weight:normal stretch:normal src index:2) source: https://fonts.gstatic.com/s/roboto/v16/CWB0XYA8bzo0kSThX0UTuA.woff2 css:106:12
downloadable font: Layout: DFLT script doesn't satisfy the spec. DefaultLangSys is NULL (font-family: "Roboto" style:normal weight:500 stretch:normal src index:2) source: https://fonts.gstatic.com/s/roboto/v16/RxZJdnzeo3R5zSexge8UUVtXRa8TVwTICgirnJhmVJw.woff2 css:162:12
downloadable font: Layout: Failed to parse script table 0 (font-family: "Roboto" style:normal weight:500 stretch:normal src index:2) source: https://fonts.gstatic.com/s/roboto/v16/RxZJdnzeo3R5zSexge8UUVtXRa8TVwTICgirnJhmVJw.woff2 css:162:12
downloadable font: GSUB: Failed to parse script list table (font-family: "Roboto" style:normal weight:500 stretch:normal src index:2) source: https://fonts.gstatic.com/s/roboto/v16/RxZJdnzeo3R5zSexge8UUVtXRa8TVwTICgirnJhmVJw.woff2 css:162:12
downloadable font: rejected by sanitizer (font-family: "Roboto" style:normal weight:500 stretch:normal src index:2) source: https://fonts.gstatic.com/s/roboto/v16/RxZJdnzeo3R5zSexge8UUVtXRa8TVwTICgirnJhmVJw.woff2 css:162:12

@K900
Copy link

K900 commented May 11, 2017

Any update on this?

@jonthegiant
Copy link

jonthegiant commented May 12, 2017

Seeing the same issue.

Windows 8.1

Firefox Developer Edition (aurora update channel)
54.0a2 (2017-04-18) (32-bit)

Requested URL

https://material.io/components/web/catalog/buttons/

Console output

downloadable font: Layout: DFLT script doesn't satisfy the spec. DefaultLangSys is NULL (font-family: "Roboto" style:normal weight:normal stretch:normal src index:2) source: https://fonts.gstatic.com/s/roboto/v16/CWB0XYA8bzo0kSThX0UTuA.woff2  css:106:12
downloadable font: Layout: Failed to parse script table 0 (font-family: "Roboto" style:normal weight:normal stretch:normal src index:2) source: https://fonts.gstatic.com/s/roboto/v16/CWB0XYA8bzo0kSThX0UTuA.woff2  css:106:12
downloadable font: GSUB: Failed to parse script list table (font-family: "Roboto" style:normal weight:normal stretch:normal src index:2) source: https://fonts.gstatic.com/s/roboto/v16/CWB0XYA8bzo0kSThX0UTuA.woff2  css:106:12
downloadable font: rejected by sanitizer (font-family: "Roboto" style:normal weight:normal stretch:normal src index:2) source: https://fonts.gstatic.com/s/roboto/v16/CWB0XYA8bzo0kSThX0UTuA.woff2  css:106:12
downloadable font: Layout: DFLT script doesn't satisfy the spec. DefaultLangSys is NULL (font-family: "Roboto" style:normal weight:500 stretch:normal src index:2) source: https://fonts.gstatic.com/s/roboto/v16/RxZJdnzeo3R5zSexge8UUVtXRa8TVwTICgirnJhmVJw.woff2  css:162:12
downloadable font: Layout: Failed to parse script table 0 (font-family: "Roboto" style:normal weight:500 stretch:normal src index:2) source: https://fonts.gstatic.com/s/roboto/v16/RxZJdnzeo3R5zSexge8UUVtXRa8TVwTICgirnJhmVJw.woff2  css:162:12
downloadable font: GSUB: Failed to parse script list table (font-family: "Roboto" style:normal weight:500 stretch:normal src index:2) source: https://fonts.gstatic.com/s/roboto/v16/RxZJdnzeo3R5zSexge8UUVtXRa8TVwTICgirnJhmVJw.woff2  css:162:12
downloadable font: rejected by sanitizer (font-family: "Roboto" style:normal weight:500 stretch:normal src index:2) source: https://fonts.gstatic.com/s/roboto/v16/RxZJdnzeo3R5zSexge8UUVtXRa8TVwTICgirnJhmVJw.woff2  css:162:12

@Tigerino
Copy link

+1

@cesarbruno16
Copy link

there's soluction to this problem?

@m4rc1e
Copy link
Collaborator

m4rc1e commented Jun 19, 2017

I'm not able to replicate this with Firefox 55.0b2 (64 bit).

I'm guessing Mozilla changed the settings for OTS sanitizer in 54.0a2 and have now reverted them back.

@scheinercc
Copy link

It is fine in 55 (macOS; beta/dev) indeed, though the issue still there in current nightly (v56). Default setting for gfx.downloadable_fonts.otl_validation in v55 currently is 'false' while in v56 it is (still!?) 'true'.

@wisniewskit
Copy link

wisniewskit commented Jul 22, 2017

Only the nightly Firefox builds specifically should have gfx.downloadable_fonts.otl_validation set to true by default, whereas betas (including dev edition) and stable versions do not.

@scheinercc
Copy link

Maybe @sucrose can change the title to "Roboto not displaying in Firefox Nightly (gfx.downloadable_fonts.otl_validation set to true)" or similar?

@sucrose sucrose changed the title Roboto not displaying in Firefox 54.0a2 (2017-04-26) (64-bit) Roboto not displaying in Firefox Nightly (gfx.downloadable_fonts.otl_validation set to true) Jul 23, 2017
@davelab6
Copy link
Member

OpenType spec v1.8.2 released recently (http://typedrawers.com/discussion/2276/opentype-1-8-2-released#latest) which changes the spec to make this valid.

@davelab6
Copy link
Member

The solution is going to be for OTS to be updated by @khaledhosny to reflect the latest spec, and for that to trickle down to Firefox.

@davelab6
Copy link
Member

The solution is going to be for OTS to be updated by @khaledhosny to reflect the latest spec, and for that to trickle down to Firefox.

Per khaledhosny/ots#131 and https://bugzilla.mozilla.org/show_bug.cgi?id=1331797#c29 I was wrong about this; we now see Nightly has the latest OTS (https://github.com/khaledhosny/ots/) but the problem persists, and Khaled has confirmed that OTS should not be changed to allow the error. (Also, I found the overall rationale for using OTS is in https://bugzilla.mozilla.org/show_bug.cgi?id=964696#c5)

So, since the fonts imported into the Google Fonts API are valid, and OTS is valid in rejecting the fonts exported from the API, the issue lies with the https://github.com/fonttools/fonttools subsetter which the GF API uses. I hope someone at Mozilla can provide a patch.

@davelab6
Copy link
Member

@behdad has fixed the underlying problem in the fonttools subsetter -
fonttools/fonttools@6eb807b - so when the fonttools copy used by the GF API is updated, Nightly should stop barfing :)

Thank you Behdad!!!

unnamed

@davelab6 davelab6 self-assigned this Sep 21, 2017
@davelab6 davelab6 changed the title Roboto not displaying in Firefox Nightly (gfx.downloadable_fonts.otl_validation set to true) Why does Roboto not display in Firefox Nightly? Sep 22, 2017
@jfkthame
Copy link

We're still seeing invalid Roboto resources served by Google Fonts; e.g.

downloadable font: Layout: DFLT script doesn't satisfy the spec. DefaultLangSys is NULL (font-family: "Roboto" style:normal weight:100 stretch:normal src index:2) source: http://fonts.gstatic.com/s/roboto/v16/2tsd397wLxj96qwHyNIkxHYhjbSpvc47ee6xR_80Hnw.woff2

Any chance the fix could get deployed sometime soon?

@davelab6
Copy link
Member

Soon! :)

@scheinercc
Copy link

FYI, Roboto is working for me in Nightly 58.0a1 (2017-09-30)

When I load all fonts, I get the error "Native load test failed:" for these fonts:

  • Pangolin
  • Philosopher
  • Sedgwick Ave
  • Sedgwick Ave Display
  • Sedgwick Ave
  • Sedgwick Ave Display
  • Cabin Sketch
  • Kurale
  • Bellefair
  • Londrina Solid
  • Londrina Shadow
  • Londrina Sketch
  • Baloo Tammudu

@jfkthame
Copy link

jfkthame commented Oct 1, 2017

I didn't check all of these, but at least the first few seem to have a different problem than the missing defaultLangSys that was the problem in Roboto:

downloadable font: Layout: Lookup flags require GDEF table, but none was found: 8 (font-family: "Pangolin script=latin rev=1" style:normal weight:normal stretch:normal src index:0) source: https://fonts.gstatic.com/l/font?kit=Fs3vif300i0sWG_8cwtUgWadrG7xQ6Sn31MgoLunhwSlWBXZHJxtwUAuAQMHUQarESqeeMWmvUdEBTEQHmkQAw&skey=3db57adcfc639c2d&v=v2

downloadable font: Layout: Lookup flags require GDEF table, but none was found: 8 (font-family: "Philosopher script=latin rev=1" style:normal weight:normal stretch:normal src index:0) source: https://fonts.gstatic.com/l/font?kit=oZLTrB9jmJsyV0u_T0TKERMNIvgBSNmnIXwlL72ISo046TfR3Aq3eiTq1JszwU6rue2wV9aw1mLs183lDYuodg&skey=da0a2147adba7eff&v=v8

downloadable font: Layout: Lookup flags require GDEF table, but none was found: 8 (font-family: "Sedgwick Ave Display script=latin rev=1" style:normal weight:normal stretch:normal src index:0) source: https://fonts.gstatic.com/l/font?kit=_2bQpgd1Hl3UOD3yDrU-cM0XQamUJZ2addZRR_tQTxY1Ucq_GzRNXE4T8CP-2p4q5RA8htVOKoTC4wIMmGrJKqNRLSGfS6bMLReYoLlofcI&skey=bd380dabc39e09ab&v=v2

@behdad
Copy link

behdad commented Oct 1, 2017

downloadable font: Layout: Lookup flags require GDEF table, but none was found: 8

That's BS. The spec is clear that GDEF glyph classes may be automatically synthesized.

I suggest we stop wasting Google's and Khaled's time and resources on fixing this crap of a code that is GSUB/GPOS/GDEF in OTS and let Firefox do whatever they want. They apparently have not been caring enough to fix the code themselves or just disable it as it should be.

@khaledhosny I suggest you remove that code from OTS. Jonathan can maintain a fork if he wants.

This is my last comment on this matter.

@jfkthame
Copy link

jfkthame commented Oct 1, 2017

downloadable font: Layout: Lookup flags require GDEF table, but none was found: 8

That's BS. The spec is clear that GDEF glyph classes may be automatically synthesized.

According to https://www.microsoft.com/typography/otspec/chapter2.htm, under LookupFlag bit enumeration: "IgnoreBaseGlyphs, IgnoreLigatures, or IgnoreMarks refer to base glyphs, ligatures and marks as defined in the Glyph Class Definition Table in the GDEF table. If any of these flags are set, a Glyph Class Definition Table must be present."

That's what OTS is implementing here, AFAICS. Is there another part of the spec that contradicts this? If so, please point it out, as we should ask for the inconsistency to be resolved in the spec.

@scheinercc
Copy link

scheinercc commented Oct 1, 2017

@davelab6 @jfkthame if someone else can confirm that Roboto is working in Nightly I guess we can close this bug and rather reopen new ones for the above accordingly!?

@wisniewskit
Copy link

wisniewskit commented Oct 1, 2017

@scheinercc, unfortunately, I just tried loading the Google Fonts Roboto page with a completely fresh profile with today's Firefox nightly, and it's still not showing any text (I get the same "Native load test failed:" messages on that page) :(

A CDN propagation issue, perhaps?

@scheinercc
Copy link

Ah, interesting. @wisniewskit thanks for checking!
I thought if it loads on the main page, it would generally load, but I can see the characters are missing (and the error appearing in the console), even though I can see the preview text - until I use a character like "è" or "ē", than even the preview fails with additional error messages.

image

@khaledhosny
Copy link
Contributor

This only affects Firefox Nightly, right? Beta and Stable already disable OTS sanitizing of OTL tables.

@jfkthame
Copy link

jfkthame commented Oct 2, 2017

Right.

@davelab6 davelab6 removed their assignment Oct 6, 2017
@englishextra
Copy link

FF 54.01 64bit

downloadable font: rejected by sanitizer (font-family: "Roboto" style:normal weight:normal stretch:normal src index:0) source: http://fonts.gstatic.com/stats/Roboto/normal/400

@fitojb
Copy link
Contributor

fitojb commented Oct 8, 2017

@englishextra Firefox 54 is obsolete and was superseded by 56; please always keep it current.

@englishextra
Copy link

@fitojb

Firefox 54 is obsolete

Are you serious? It's of Jun 29, 2017

please always keep it current.

What?

@wisniewskit
Copy link

wisniewskit commented Oct 8, 2017

@englishextra, I certainly won't stop you from running old versions if you'd prefer, but it is generally unsafe to run browser versions older than the latest one (even ones that are only a few months old). You can see the known vulnerabilities fixed in version 55 here and version 56 here.

Beyond that, let's please not hijack this thread anymore about this topic, folks.

@englishextra
Copy link

englishextra commented Oct 8, 2017

Hey, I'm doing webdev, and I know that regular users, that I'm writing sites for, use ancient browsers. I do have Nightly and the whole zoo of browsers. I gave an info as of FF 54 - which is in my case the benchmark version of FF. That's it and nothing alse more.

55 here and version 56 here.

That's what I came here for, to make sure the sanitize error is not on my side as a web dev.
Thanks

@davelab6
Copy link
Member

This should now be fixed

screen shot 2017-10-18 at 19 31 53

@wisniewskit
Copy link

Thanks a ton to all involved!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests