webcompat / web-bugs

A place to report bugs on websites.
https://webcompat.com
Mozilla Public License 2.0
732 stars 63 forks source link

misskey.io - Console log has "Downloadable fonts:" errors #118081

Open saschanaz opened 1 year ago

saschanaz commented 1 year ago

URL: https://misskey.io/notes/9az6qxacys

Browser / Version: Firefox 111.0 Operating System: Windows 10 Tested Another Browser: Yes Chrome

Problem type: Design is broken Description: Images not loaded Steps to Reproduce:

  1. Open https://misskey.io/notes/9az6qxacys
  2. Allow/deny cookie access if prompted
  3. See if there's any font rendering failure icons
  4. See the console log has "Downloadable fonts:" errors

The font used here is @tabler/icons, and it can also be reproduced with the font alone:

  1. Open https://github.com/tabler/tabler-icons/releases/tag/v2.3.0
  2. Download tabler-icons-2.3.0.zip
  3. Unzip it and open webfont/tabler-icons.html
  4. See if the icons are rendered
  5. See the console log has "Downloadable fonts:" errors

Weirdly this does not happen on Firefox stable channel but I couldn't find a regression range, since it always happens on any nightly/autoland builds. Perhaps some pref?

View the screenshot Screenshot
Browser Configuration
  • gfx.webrender.all: true
  • gfx.webrender.blob-images: true
  • gfx.webrender.enabled: true
  • image.mem.shared: true
  • buildID: 20230208214144
  • channel: nightly
  • hasTouchScreen: true
  • mixed active content blocked: false
  • mixed passive content blocked: false
  • tracking content blocked: false

View console log messages

From webcompat.com with ❤️

saschanaz commented 1 year ago

Seems it's https://github.com/tabler/tabler-icons/issues/476 ?

softvision-raul-bucata commented 1 year ago

We appreciate your report. I was able to reproduce the issue:

Screenshot_20

Tested with:

Browser / Version: Firefox Release 109.0.1 (64-bit)/ Firefox Nightly 111.0a1 (2023-02-12) (64-bit) /Chrome Version 110.0.5481.78 (Official Build) (64-bit) Operating System: Windows 10 PRO x64

Notes:

  1. Reproducible regardless of the status of ETP.
  2. Reproducible on the latest build of Firefox Nightly .
  3. Works as expected using Chrome and Firefox Release.

Moving this to NeedsDiagnosis for further investigations.

[qa_07/2023]

denschub commented 1 year ago

That's gfx.downloadable_fonts.otl_validation, but let's check if there's a newer font available.

sv-calin commented 1 year ago

It seems like its only reproducible only on Firefox Nightly on Mobile (not reproducible on Release and Beta):

https://github.com/webcompat/web-bugs/assets/107036654/2e498d69-59ae-4e62-bb40-9aeb9d75da17

Tested on: • Browser / Version: Firefox Nightly 117.0a1-20230730210800 / Firefox Beta 116.0-20230720200012 / Firefox Release 115.0.2-20230710165010 / Chrome 115.0.5790.136 • Operating System: Google Pixel 5 (Android 13) - 1080 x 2340 pixels, 19.5:9 ratio (~432 ppi density)

[inv_31/2023]

KirbyJoe commented 10 months ago

It seems like its only reproducible only on Firefox Nightly on Mobile (not reproducible on Release and Beta):

It can also be reproduced in Firefox Nightly on Windows. The issue is also present on other Misskey instances. https://github.com/misskey-dev/misskey/issues/12017

denschub commented 10 months ago

This is nothing Firefox can or will fix. The font used here has spec-validating issues, and Firefox Nightly has a pref set that enforces strict font validation. An issue with the font has been filed in January, see https://github.com/tabler/tabler-icons/issues/476, and they need to fix that.

saschanaz commented 10 months ago

But do we know why Firefox care the font strictness when no other engines seemingly do? Can this be opt-in?

Probably a rare issue that just didn't bother anyone so far I guess, though.

denschub commented 10 months ago

Probably a rare issue that just didn't bother anyone so far I guess, though.

We actually had a bunch of issues with fonts initially, including some Google Fonts. But we managed to convince all of them into fixing their font files, which they did relatively quickly. Of course, there'll always be fonts that aren't well maintained, or like in this case, well-maintained fonts that just don't seem to care about this specific issue (which I can't fault them too much for). :/

But do we know why Firefox care the font strictness when no other engines seemingly do?

Looks like it's one of those "it's complicated" instances. We don't really care, but an upstream library does. Blink is actually using the same library, but it seems like they're letting parts of the font bypass the validation entirely.

This is technically kinda-opt-in, as it's only enabled in Firefox Nightly, and will not ship to Release (or Beta).

But somehow, my sense of time fooled me, and I didn't realize that the update to the OTS library was 8 years ago. I don't think we have any motivation to enable this outside of Nightly, so it might be possible to just discard the validation and make the pref default to false everywhere, including Nightly.

At the same time, I'm lacking a lot of background and knowledge here. I'll have a chat with Jonathan about this to learn more. I'll make the case for dropping the validation entirely for WebCompat reasons, but I'm not sure this is actually going to happen. I'll set a ni? flag on me here, and I'll update this bug accordingly. (Note that next week is a three-day-work-week for me, so it might not happen next week.)

denschub commented 10 months ago

(oh, and thanks for the nudge, @saschanaz. That's always appreciated. <3)