https://bugzilla.redhat.com/show_bug.cgi?id=2334719
Bug ID: 2334719 Summary: NotoSansHebrew-Regular missing several glyphs Product: Fedora Version: rawhide Status: NEW Component: google-noto-fonts Assignee: tagoh@redhat.com Reporter: mattia.verga@proton.me QA Contact: extras-qa@fedoraproject.org CC: fonts-bugs@lists.fedoraproject.org, i18n-bugs@lists.fedoraproject.org, petersen@redhat.com, pwu@redhat.com, tagoh@redhat.com Target Milestone: --- Classification: Fedora
While packaging the update of libreoffice, I got a new test failure due to a "missing font". The font (Noto Sans Hebrew) is indeed installed, but upstream gave me the hint to check if any missing glyph were responsible for the failure.
From a quick comparison through fontforge, NotoSansHebrew-Regular provided by Fedora package is missing a lot of glyphs compared to upstream sources. Is there something I miss?
https://bugzilla.redhat.com/show_bug.cgi?id=2334719
Mattia Verga mattia.verga@proton.me changed:
What |Removed |Added ---------------------------------------------------------------------------- Doc Type|--- |If docs needed, set a value
--- Comment #1 from Mattia Verga mattia.verga@proton.me --- The same happens for Noto Sans Arabic
https://bugzilla.redhat.com/show_bug.cgi?id=2334719
--- Comment #2 from Parag Nemade pnemade@redhat.com --- Can you share here the relevant test name and its log to know more about this issue?
https://bugzilla.redhat.com/show_bug.cgi?id=2334719
--- Comment #3 from Mattia Verga mattia.verga@proton.me --- Sure, the test is CppunitTest_sw_layoutwriter4, especially in the part where it uses tdf157829-rtl.fodt template. The log output is https://mattia.fedorapeople.org/test.log
Note that tdf157829-ltr.fodt also uses Google Noto Sans Hebrew font (AFAIK) and it passes, so perhaps rtl requires some missing glyphs that ltr doesn't? I tried to exclude tdf157829-rtl.fodt from testing, but it then also fail tdf162314.fodt for "terminating test due to missing font: Noto Sans Arabic".
https://bugzilla.redhat.com/show_bug.cgi?id=2334719
Red Hat One Jira (issues.redhat.com) redhat-one-jira@bot.bugzilla.redhat.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Link ID| |Red Hat Issue Tracker | |FC-1393
https://bugzilla.redhat.com/show_bug.cgi?id=2334719
Akira TAGOH tagoh@redhat.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Flags| |needinfo?(mattia.verga@prot | |on.me)
--- Comment #4 from Akira TAGOH tagoh@redhat.com --- Did it work before? If so, when it was okay?
https://bugzilla.redhat.com/show_bug.cgi?id=2334719
--- Comment #5 from Akira TAGOH tagoh@redhat.com --- Noto ships several versions of fonts in an archive and we package it in the order of:
- hinted fonts if they have - unhinted otherwise
They also have "full" build fonts which means:
<quote> We also (based on a configuration file) use UFO merging to add subsets of Noto Sans, Noto Serif or Noto Sans Devanagari into the sources to produce a "full" build of the font. </quote>
Based on that, let's see: $ hb-info full/ttf/NotoSansHebrew-Regular.ttf | grep -E "Glyph|Version" Version: Version 3.001; ttfautohint (v1.8.4.7-5d5b) Glyph count: 470 $ hb-info hinted/ttf/NotoSansHebrew-Regular.ttf| grep -E "Glyph|Version" Version: Version 3.001; ttfautohint (v1.8.4.7-5d5b) Glyph count: 151 $ hb-info unhinted/ttf/NotoSansHebrew-Regular.ttf| grep -E "Glyph|Version" Version: Version 3.001 Glyph count: 151
For the downloaded fonts at https://fonts.google.com/noto/specimen/Noto+Sans+Hebrew $ hb-info ~/Downloads/Noto_Sans_Hebrew/static/NotoSansHebrew-Regular.ttf| grep -E "Glyph|Version" Version: Version 3.001 Glyph count: 470
It looks like the unhinted full build font. According to the explanation about the build, the full build fonts just contains duplicate glyphs and it can be covered by Noto Sans. Do we really need it in Noto Sans Hebrew?
https://bugzilla.redhat.com/show_bug.cgi?id=2334719
Mattia Verga mattia.verga@proton.me changed:
What |Removed |Added ---------------------------------------------------------------------------- Flags|needinfo?(mattia.verga@prot | |on.me) |
--- Comment #6 from Mattia Verga mattia.verga@proton.me --- Tha specific test was introduced in LO 25.2, so it wasn't there before. However, I did see other tests failing before 25.2 with similar output, some of them were related to Noto Sans Hebrew, some other to Noto Sans Arabic and, if I remember correctly, also happened with DejaVu Sans.
As for the "do we really need it" question, I don't know... I was wondering if there was some sort of inheritance between Noto Sans and Noto Sans Hebrew. I suppose the test using 'tdf157829-ltr.fodt' template is passing because for what I see the template uses the Hebrew font style embedded within a Noto Sans styled paragraph, while 'tdf157829-rtl.fodt' template just uses a plain Noto Sans Hebrew styled paragraph.
I never wrote anything using Hebrew or Arabic fonts, so I don't know what impact has on usability for the end user having to switch from variant to base for every missing glyph. Do we know what other major linux distributions do about these font variants? If it is common that the majority ship the trimmed set, I can try to persuade LO upstream to fix the tests for this case.
https://bugzilla.redhat.com/show_bug.cgi?id=2334719
--- Comment #7 from Akira TAGOH tagoh@redhat.com --- Alright. I tried to take a look at Ubuntu:
$ podman pull docker.io/library/ubuntu:latest $ podman run -ti --rmi ubuntu # apt update ... # apt install fonts-noto libharfbuzz-bin ... # dpkg -l fonts-noto* Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad) ||/ Name Version Architecture Description +++-======================-====================-============-========================================================================== ii fonts-noto 20201225-2 all metapackage to pull in all Noto fonts ii fonts-noto-cjk 1:20230817+repack1-3 all "No Tofu" font families with large Unicode coverage (CJK regular and bold) ii fonts-noto-cjk-extra 1:20230817+repack1-3 all "No Tofu" font families with large Unicode coverage (CJK all weight) ii fonts-noto-color-emoji 2.042-1 all color emoji font from Google ii fonts-noto-core 20201225-2 all "No Tofu" font families with large Unicode coverage (core) ii fonts-noto-extra 20201225-2 all "No Tofu" font families with large Unicode coverage (extra) un fonts-noto-hinted <none> <none> (no description available) ii fonts-noto-mono 20201225-2 all "No Tofu" monospaced font family with large Unicode coverage ii fonts-noto-ui-core 20201225-2 all "No Tofu" font families with large Unicode coverage (UI core) ii fonts-noto-ui-extra 20201225-2 all "No Tofu" font families with large Unicode coverage (UI extra) ii fonts-noto-unhinted 20201225-2 all "No Tofu" font families with large Unicode coverage (unhinted) # hb-info /usr/share/fonts/truetype/noto/NotoSansHebrew-Regular.ttf | grep -E "Glyph|Version" Version: Version 3.000; ttfautohint (v1.8.3) -l 8 -r 50 -G 200 -x 14 -D hebr -f none -a qsq -X "" Glyph count: 149
It is a bit old version (even in Debian) though, as you can see, they also use hinted fonts but not the full build fonts as well as we do.
https://bugzilla.redhat.com/show_bug.cgi?id=2334719
--- Comment #8 from Mattia Verga mattia.verga@proton.me --- Yeah, I also looked at debian package and I see they use the same approach (which indeed seems the most correct).
So, I think there's nothing to do on Fedora side. I already wrote on LO mailing list explaining the trouble caused by using the full build font for their tests, but I received no reply yet. I'll continue trying to fix the problematic tests myself (if I can) or continue excluding those from running in Fedora build.
Thanks!
i18n-bugs@lists.fedoraproject.org