LaTeXML icon indicating copy to clipboard operation
LaTeXML copied to clipboard

No output with multiple (SVG) images

Open molke-productions opened this issue 2 years ago • 11 comments
trafficstars

With the attached example temp.zip,

latexmlc --verbose --verbose --verbose temp.tex

just stops. I narrowed it down to the use of two \includegraphics (with SVG files). Since there is no output at all, I’m not really sure how to debug this any further.

molke-productions avatar Mar 24 '23 13:03 molke-productions

Hi @molke-productions ,

Apologies for the slow reply here. I assume you have a successful latexml installation with tests passing?

The ZIP file you've attached produces the following on my machine with the freshest latexml from this repository:

<?xml version="1.0" encoding="UTF-8"?>
<?latexml searchpaths="/tmp"?>
<?latexml class="article"?>
<?latexml package="graphicx"?>
<?latexml RelaxNGSchema="LaTeXML"?>
<document xmlns="http://dlmf.nist.gov/LaTeXML">
  <resource src="LaTeXML.css" type="text/css"/>
  <resource src="ltx-article.css" type="text/css"/>
  <figure xml:id="fig1">
    <graphics candidates="a.svg" class="ltx_flex_size_2" graphic="a" xml:id="g1"/>
    <graphics candidates="b.svg" class="ltx_flex_size_2" graphic="b" xml:id="g2"/>
  </figure>
</document>

dginev avatar Jul 25 '23 12:07 dginev

Thanks for checking. I have a LaTeXML installation, but only the latest release version latexmlc (LaTeXML version 0.8.7) which still gives no output with this example (in the console). The log file is temp.latexml.log.

I could try updating to the latest GitHub version, but since that usually involves tracking down new bugs, I’m a little reluctant to do so.

molke-productions avatar Jul 25 '23 14:07 molke-productions

Your attached log looks quite strange @molke-productions , it appears that even the usual LaTeX.pool does not succeed its load. Is your installation usable on simple examples?

I don't want to force you to update to a newer version of latexml, but we also can't provide fixes for problems that we can not fully diagnose.

dginev avatar Jul 25 '23 14:07 dginev

It works usually (even for quite complex examples). I’ll try updating to the GitHub version and report back.

molke-productions avatar Jul 25 '23 14:07 molke-productions

Unfortunately, this doesn’t change much. temp.latexml.log

As already said, I’m not sure how to (help you) debug this any further, but I also understand that you can’t do much about it if you can’t reproduce it.

For now, I just try to avoid multiple SVG images by just converting them to JPG. SVG is a constant problem anyway, as there always seems to be some option that throws ImageMagick off (depending on what I’m using to convert the original PDF images).

EDIT: For a simple test, if I comment one \includegraphics, I get

latexmlc (LaTeXML version 0.8.7; revision 817856ae)
processing started Tue Jul 25 17:11:02 2023
Conversion complete: No obvious problems
Status:conversion:0

<?xml version="1.0" encoding="UTF-8"?>
<?latexml searchpaths="/home/tobias/xml/test/latexmlc/two-svg"?>
<?latexml class="article"?>
<?latexml package="graphicx"?>
<?latexml RelaxNGSchema="LaTeXML"?>
<document xmlns="http://dlmf.nist.gov/LaTeXML">
  <resource src="LaTeXML.css" type="text/css"/>
  <resource src="ltx-article.css" type="text/css"/>
  <figure xml:id="fig1">
    <graphics candidates="a.svg" graphic="a" xml:id="g1"/>
  </figure>
<!--  %“includegraphics–b˝ --></document>

molke-productions avatar Jul 25 '23 15:07 molke-productions

@molke-productions so do I understand correctly that latexml just hangs in an infinite loop when you have two SVG inclusions?

One detail that would be helpful is for you to add the --timeout=5 option, then wait 6 seconds for a timeout that leads to latexml completely terminating. If you attach here the detailed log trace of that run, it would give us a hint to the exact code path that is being iterated into.

On the surface it looks like it has to be some detail about the flex figure sizing, but I would really love to reproduce it locally. Thank you for the report.

dginev avatar Jul 25 '23 15:07 dginev

There is no infinite loop, the command “just exits to the prompt” without any further notice.

$ time latexmlc --verbose --verbose --verbose temp.tex
latexmlc (LaTeXML version 0.8.7; revision 817856ae)
processing started Tue Jul 25 17:59:33 2023
 / Building
real	0m1.729s
user	0m1.589s
sys	0m0.113s

Until --timeout=1, I don’t get any change. I’m not sure how useful this is. temp.latexml.log

molke-productions avatar Jul 25 '23 15:07 molke-productions

For the record, I get the same result for the provided test tex as @molke-productions. To be precise, error code 10, so #2239 might be a duplicate after all.

latexmlc --verbose --verbose --verbose temp.tex
latexmlc (LaTeXML version 0.8.7)
processing started Wed Oct 18 22:01:56 2023
 /%                                                                                                                
echo $?
10

nschloe avatar Oct 18 '23 20:10 nschloe

I am having the same issue, Manjaro linux using the arch package for latexml. I tried to build a docker image to give you something reproducible, but... it worked in docker. (So, at least I can run it successfully now!)

GregDMeyer avatar Dec 05 '23 07:12 GregDMeyer

It is rather unnerving to me that we have had 3 separate reporters mention this problem, but we can't pinpoint when or how the early exits happen.

If anyone gets a clue how to reproduce the installation that has this problem, do let us know.

dginev avatar Dec 05 '23 15:12 dginev