https://bugzilla.redhat.com/show_bug.cgi?id=1376476
Bug 1376476 depends on bug 1458840, which changed state.
Bug 1458840 Summary: Review Request: urw-base35-fonts - Level 2 Core Font Set for Ghostscript
https://bugzilla.redhat.com/show_bug.cgi?id=1458840
What |Removed |Added
----------------------------------------------------------------------------
Status|ON_QA |CLOSED
Resolution|--- |ERRATA
--
You are receiving this mail because:
You are on the CC list for the bug.
https://bugzilla.redhat.com/show_bug.cgi?id=1498063
Bug ID: 1498063
Summary: fonttools-3.16.0 is available
Product: Fedora
Version: rawhide
Component: fonttools
Keywords: FutureFeature, Triaged
Assignee: pnemade(a)redhat.com
Reporter: upstream-release-monitoring(a)fedoraproject.org
QA Contact: extras-qa(a)fedoraproject.org
CC: fonts-bugs(a)lists.fedoraproject.org,
pnemade(a)redhat.com, sshedmak(a)redhat.com
Latest upstream release: 3.16.0
Current version/release in rawhide: 3.15.1-1.fc28
URL: https://github.com/fonttools/fonttools/
Please consult the package updates policy before you issue an update to a
stable branch: https://fedoraproject.org/wiki/Updates_Policy
More information about the service that created this bug can be found at:
https://fedoraproject.org/wiki/Upstream_release_monitoring
Please keep in mind that with any upstream change, there may also be packaging
changes that need to be made. Specifically, please remember that it is your
responsibility to review the new version to ensure that the licensing is still
correct and that no non-free or legally problematic items have been added
upstream.
Based on the information from anitya:
https://release-monitoring.org/project/7388/
--
You are receiving this mail because:
You are on the CC list for the bug.
https://bugzilla.redhat.com/show_bug.cgi?id=1496466
--- Comment #17 from David Kaspar [Dee'Kej] <dkaspar(a)redhat.com> ---
Thanks for the explanation. That might help me to keep a little pressure on
Ghostscript for them to move to OTF at some point. :)
(In reply to Nicolas Mailhot from comment #16)
> All the usual suspects that concentrate "my text does not work" questions on
> Stack overflow…
Heh, yeah. :D You've summed it up perfectly. I guess I should create a new
tracking BZ in the future to track which of these apps now support OTF and
which not.
--
You are receiving this mail because:
You are on the CC list for the bug.
https://bugzilla.redhat.com/show_bug.cgi?id=1496466
--- Comment #16 from Nicolas Mailhot <nicolas.mailhot(a)laposte.net> ---
(In reply to David Kaspar [Dee'Kej] from comment #14)
> And as I mentioned in my previous comment, the ImageMagick also expects the
> Type1 /AFM fonts, and I expect there are some other applications might
> require it as well. Here's the list of packages requiring the old
> 'urw-fonts' package:
>
> ghostscript-core
> grace
> GraphicsMagick
> graphviz
> htmldoc
> ipe
> libwmf
> mscgen
> pdf-renderer
> pokerth
> root-core
> synfig
> xpdf
> ImageMagick
All the usual suspects that concentrate "my text does not work" questions on
Stack overflow…
--
You are receiving this mail because:
You are on the CC list for the bug.
https://bugzilla.redhat.com/show_bug.cgi?id=1496466
--- Comment #15 from Nicolas Mailhot <nicolas.mailhot(a)laposte.net> ---
(In reply to David Kaspar [Dee'Kej] from comment #13)
> Looking at the sizes of the OTF and TTF, the OTF seems to be "compressed",
> therefore in order to save users' space, I would again vote for using this
> format.
TTF uses quadratic splines whereas OTF uses cubic splines. Type1 uses cubic
splines. That's why you can get lossless glyph shape conversion between Type1
and OTF but not between Type1 and TTF, and why upstream wrote they absolutely
needed a CFF format to make sure there was no deviation in metrics from the
standard.
(One can approximate a cubic spline with a series of quadratic splines, that's
how font tools convert Type1/OTF to TTF, the result is good enough for the
human eye, but technically it's not lossless. In your case absolutely no
deviation is better than minimal deviations given the glyph sizes are
standardised).
That's why generally speaking it's better to use OTF when evolving a Type1
font, except for legacy windows-oriented apps that understand TTF but not OTF.
Linux systems do not care they have good support both for OTF and for TTF.
Hardware has passed the point where computing cubics was significantly more
expensive than computing quadratics a long time ago.
The spline part of OTF files is more compact than Type1. One is CFF2 the other
is CFF1 — they are mathematically equivalent but the state of the art had
improved between both specs (both written essentially by Adobe).
--
You are receiving this mail because:
You are on the CC list for the bug.
https://bugzilla.redhat.com/show_bug.cgi?id=1496466
--- Comment #14 from David Kaspar [Dee'Kej] <dkaspar(a)redhat.com> ---
(In reply to Nicolas Mailhot from comment #12)
> BTW OTF *is* the OpenType (SFNT) format used to ship CFF outlines nowadays
> so unless upstream did something really weird with its OTF files they
> satisfy :
>
> # According to upstream, Ghostscript needs only Type 1 fonts to work
> properly.
> # It can use TTF or OTF fonts as substitutions as well in case the Type 1
> # fonts are missing, but the substitution is not (and can't be)
> guaranteed to
> # be absolutely flawless, unless the fonts use the CFF outlines:
> # > https://en.wikipedia.org/wiki/PostScript_fonts#Compact_Font_Format
>
> https://blog.typekit.com/2010/12/02/the-benefits-of-opentypecff-over-
> truetype/
Yeah, I realize that. That's why there's that additional note in specfile, that
even though most of the Ghostscript should work with OTF now, the 'pdfwrite'
device is still not able to do so... :-/
And as I mentioned in my previous comment, the ImageMagick also expects the
Type1 /AFM fonts, and I expect there are some other applications might require
it as well. Here's the list of packages requiring the old 'urw-fonts' package:
ghostscript-core
grace
GraphicsMagick
graphviz
htmldoc
ipe
libwmf
mscgen
pdf-renderer
pokerth
root-core
synfig
xpdf
ImageMagick
--
You are receiving this mail because:
You are on the CC list for the bug.
https://bugzilla.redhat.com/show_bug.cgi?id=1496466
--- Comment #13 from David Kaspar [Dee'Kej] <dkaspar(a)redhat.com> ---
(In reply to Nicolas Mailhot from comment #10)
> That's a poor situation to be in, but yes the minimum would be to ship the
> OpenType¹ versions as required by Fedora packaging guidelines, and maybe
> hide somewhere the Type1/AFM versions for GS private use (after asking
> Fesco). The first priority would be to avoid Ghostscript blocking progress
> in other apps that want to use those fonts. If that can help you in any way,
> you have my blessing, for the little it is worth.
I'm OK to ship it all together (i.e. *.t1 living next to *.otf), in order for
the fonts to have the same file path (I would like to avoid creating a symlinks
in that folder). The reason why we now need the Type1 to be living in that
exact folder name is that ImageMagick has just added support for
'urw-base35-fonts' and it is expecting the Type1 fonts in that specific
location:
https://github.com/ImageMagick/ImageMagick/commit/fbca0d09324006b66b01e
(I forgot to mention that there are other packages still depending on the Type1
format - ImageMagick is the one of them, and AFAICT there are others.)
> As an aside I understand the reluctance of Ghostscript upstream to switch
> from "proven" Type1 fonts but let's be honest, Ghostscript is fed all kinds
> of stuff by third-party apps, the Type1 support of those apps is going away,
> they *will* preferentially use OpenType files, so long term there will be
> all sorts of subtle discrepancies between a Ghostscript that understands URW
> as "Type1", and the rest of the world that thinks "Opentype". But that's
> typically a "choose your poison" situation for the Ghostscript maintainer,
> it need not impact the rest of the distro the way it does now.
You're getting to the core of the problem here actually. As I mentioned before,
Ghostscript upstream does not want to switch to OTF/TTF, because one of their
"devices" (inside of Ghostscript called 'pdfwrite', used for conversions, etc.)
would not work in quite few scenarios (I had some bug reports about it before
IIRC), thus making the PS->PDF and PDF->PS conversions not working.
So as the rest of the World is slowly starting to use the OTF/TTF, the
Ghostscript is using Type1 fonts (converted from the OTF files actually), and
they most likely will be doing it for a long time to come. That's because they
are bundling the Type1 fonts with the Ghostscript vanilla sources, so they do
not need to care about the rest of the World going with OTF.
And that's because of the FPG that we actually ship a separate package for
these fonts (because FPG forbids bundling of software, unless there is an
exception from FESco). And that's why many other distros IMHO do not face these
problems, because they do not care so much about bundling the software - they
built it from vanilla sources (with a lots of other bundled libraries, etc.)
and just ship it. When this happens, they can have both OTF fonts and Type1
fonts living next to each other. (Type1 is being shipped as part of
Ghostscript's resources.)
Looking at the sizes of the OTF and TTF, the OTF seems to be "compressed",
therefore in order to save users' space, I would again vote for using this
format.
So to conclude, I will take this to a FESco, but I need to find out how to do
this officially first. And I'm currently being under time pressure both from my
primary job responsibilities and F27 release schedule - because the process of
putting this package into F27 is already underway, and I can't stop it anymore
- other packages are currently depending on it as well.
In this case, I will probably take the way of "EAFP" instead of "LBYL", make
the changes ASAP, and then inform FESco about this and "ask for forgiveness"...
:D
--
You are receiving this mail because:
You are on the CC list for the bug.
https://bugzilla.redhat.com/show_bug.cgi?id=1496466
--- Comment #12 from Nicolas Mailhot <nicolas.mailhot(a)laposte.net> ---
BTW OTF *is* the OpenType (SFNT) format used to ship CFF outlines nowadays so
unless upstream did something really weird with its OTF files they satisfy :
# According to upstream, Ghostscript needs only Type 1 fonts to work
properly.
# It can use TTF or OTF fonts as substitutions as well in case the Type 1
# fonts are missing, but the substitution is not (and can't be) guaranteed
to
# be absolutely flawless, unless the fonts use the CFF outlines:
# > https://en.wikipedia.org/wiki/PostScript_fonts#Compact_Font_Formathttps://blog.typekit.com/2010/12/02/the-benefits-of-opentypecff-over-truety…
--
You are receiving this mail because:
You are on the CC list for the bug.
https://bugzilla.redhat.com/show_bug.cgi?id=1496466
--- Comment #11 from David Kaspar [Dee'Kej] <dkaspar(a)redhat.com> ---
(In reply to Nicolas Mailhot from comment #9)
> Note however that Appstream for fonts was heavily influenced by Debian, and
> Debian didn't rebase its font packaging around fontconfig as Fedora did a
> few years ago, so a lot of the "Need to do foo in appstream because
> fontconfig is insufficient or fonts are broken" do not really apply for
> Fedora.
>
> If the font metadata is bad for example Fedora would prefer the packager to
> fix the font and patch the metadata rather than hide the brokenness under an
> Appstream overlay (which won't exist for apps that use the fonts anyway).
I see. :) Well, I hope the AppStream and fontconfig metadata are mostly OK for
the moment - at least for the urw-base35-fonts. I've spent a lot of time to get
it right.
(Currently, there was a small issue with typo in AppStream metadata that has a
pull-request waiting for acceptance, and small issue with Standard Symbols PS
being to big when used for LGC fonts.)
--
You are receiving this mail because:
You are on the CC list for the bug.
https://bugzilla.redhat.com/show_bug.cgi?id=1496466
--- Comment #10 from Nicolas Mailhot <nicolas.mailhot(a)laposte.net> ---
(In reply to David Kaspar [Dee'Kej] from comment #7)
> Do you have any suggestion on how to proceed from here? Should I take this
> to FESco and ask for official exception/permission to ship both Type1/AFM
> and OTF formats?
That's a poor situation to be in, but yes the minimum would be to ship the
OpenType¹ versions as required by Fedora packaging guidelines, and maybe hide
somewhere the Type1/AFM versions for GS private use (after asking Fesco). The
first priority would be to avoid Ghostscript blocking progress in other apps
that want to use those fonts. If that can help you in any way, you have my
blessing, for the little it is worth.
As an aside I understand the reluctance of Ghostscript upstream to switch from
"proven" Type1 fonts but let's be honest, Ghostscript is fed all kinds of stuff
by third-party apps, the Type1 support of those apps is going away, they *will*
preferentially use OpenType files, so long term there will be all sorts of
subtle discrepancies between a Ghostscript that understands URW as "Type1", and
the rest of the world that thinks "Opentype". But that's typically a "choose
your poison" situation for the Ghostscript maintainer, it need not impact the
rest of the distro the way it does now.
¹ Probably OTF not TTF given the Type1 history of those fonts
--
You are receiving this mail because:
You are on the CC list for the bug.