Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 1867927 - texlive-cm-super should be required by texlive-collection-latex
Summary: texlive-cm-super should be required by texlive-collection-latex
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: texlive
Version: 33
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Tom "spot" Callaway
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: 1864004
TreeView+ depends on / blocked
 
Reported: 2020-08-11 08:19 UTC by Susi Lehtola
Modified: 2020-08-13 19:50 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2020-08-13 19:50:43 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Susi Lehtola 2020-08-11 08:19:13 UTC
The build of libint-1.2.1 has stopped working in rawhide due to a change in the texlive packaging. The build crashes in the compilation of the programmer's manual, which is a straightforward

\documentclass[12pt]{article}
\usepackage{amsmath}

document.

The package BuildRequires: texlive-collection-latex, which has been sufficient to build the package for a long time. But now, the build 

https://koji.fedoraproject.org/koji/taskinfo?taskID=48336981

crashes with

!pdfTeX error: pdflatex (file cm-super-ts1.enc): cannot open encoding file for 
reading
 ==> Fatal error occurred, no output PDF file produced!

The problem appears to be caused by the lack of texlive-cm-super in the build root. texlive-cm is installed, however.

Please restore texlive-cm-super to texlive-collection-latex, as it appears to be necessary to compile simple LaTeX documents.

Comment 1 Ben Cotton 2020-08-11 15:19:03 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 33 development cycle.
Changing version to 33.

Comment 2 Tom "spot" Callaway 2020-08-13 17:26:55 UTC
I'm going to ramble on here a bit, because I figure that someone else may eventually run into this issue (or a similar one). I'm going to make texlive-latex depend on texlive-cm-super.

First, your suggestion of adding the cm-super dependency to collection-latex is probably something upstream should consider, but since they pretty clearly and explicitly set the requires there, it would not be appropriate for Fedora to diverge. The texlive collection sources are pretty simple, they just contain a .tlpobj which lists all the dependencies for the collection. collection-latex.tlpobj does not contain cm-super. It doesn't contain cm either, but that is pulled in by the dependency on collection-basic, which depends on cm (but only cm). cm doesn't depend on cm-super either.
cm-super is a Requires for collection-fontsrecommended, which in turn is required by collection-latexrecommended (which requires collection-latex).

I think your best bet would be to adjust your Requires to texlive-collection-latexrecommended to future-proof yourself.

However, there is a legitimate regression here. cm-super is clearly required now where it was not before. I wanted to know why this worked before and doesn't now, because I didn't remove/change cm-super anywhere. I dug into this at length and it looks like the tex function "itemize" is what triggers this. "enumerate", which seems to have almost identical logic, does not.

Here's my test code:

*****

\documentclass[12pt]{article}

\begin{document}
\begin{itemize}
%\begin{enumerate}

\item Hello World.

%\end{enumerate}
\end{itemize}
\end{document}


*****

The key difference between itemize and enumerate is this: itemize uses a "bullet" in front of items, where enumerate makes a numbered list. On a hunch, I overrode the default "bullet" like this:

\item[--] Hello World.

And sure enough, cm-super isn't needed anymore.

The "bullet" is defined by \DeclareTextSymbol{\textbullet}{TS1}{136}, and this lead me to changes in textcomp (part of texlive-latex). It used to handle \textbullet differently, and now it expects a TS1 font to provide it. The default TS1 font is... cm-super.

Since having "itemize" work properly seems like something that most people would expect to have happen (even with just collection-latex), I'm adding an explicit Requires: texlive-cm-super to texlive-latex in Fedora 33+.

Comment 3 Susi Lehtola 2020-08-13 17:46:50 UTC
Whoa, you dug deep. Thanks!

Comment 4 Tom "spot" Callaway 2020-08-13 19:50:43 UTC
Requires added in texlive-base-20200327-15.fc33 (and .fc34).


Note You need to log in before you can comment on or make changes to this bug.