bugtexinfo - GNU documentation system - Bugs: bug #43122, texi2dvi does not compile enough...

 
 

You are not allowed to post comments on this tracker with your current authentication level.

bug #43122: texi2dvi does not compile enough times to get toc

Submitted by:  Vincent Belaïche <vincentb1>
Submitted on:  Mon 01 Sep 2014 09:36:59 AM UTC  
 
Category: NoneRelease: 
Priority: 5 - NormalSeverity: 3 - Normal
Item Group: NonePrivacy: Public
Open/Closed: ClosedAssigned to: None
Status: Works For Me

(Jump to the original submission Jump to the original submission)

Mon 17 Aug 2015 05:41:07 PM UTC, comment #7:

After looking at what the generated_files_get function does, I am now understanding that it scans metafont-for-beginners.log for finding output files produced by etex. To do that, grep is using the '^\\openout[0-9]' regexp. But there are NOT any such match in the metafont-for-beginners.log file, and actually file openings are not traced at all.

So, the story seems to be that:

  • either MikTeX etex does not do tracing properly, or
  • latest texinfo.tex disables tracing at some point

Are you using the latest texinfo.tex to do the tests ?

FYI, latexmk uses the -recoder option in order to trace in a separate file what files are open, that is probably safer to do this way, this way you are robust to anything that the user is doing --- but maybe you rely on this that the Texinfo user will do less tricky things than the LaTeX user, :-/ :-P

Vincent Belaïche <vincentb1>
Mon 17 Aug 2015 05:19:43 PM UTC, comment #6:

Dear Gavin,

BTW, the crux of the bug is maybe in the two first lines of the verbose coming immediately after etex log:

The list of "new xref files" is empty, and therefore the compilation is supposed to be complete.

Supposing that, as Karl, you cannot reproduce the bug, please check whether the second line is not empty in that case.

Vincent Belaïche <vincentb1>
Mon 17 Aug 2015 02:38:17 PM UTC, comment #5:

Hello Gavin,

First of all, I don't know why Karl could not reproduce the problem and he got the toc complete in one texi2pdf run (equating two tex runs Under the hood).

In order to sort this bug out, what I suggest to you is the following:

Then there are only two possible cases:

  • Either you can reproduce the problem, and then:
    • the metafont-for-beginners.pdf from your compilation will have an empty toc
    • the two log files will be identical except for the compilation time on the first line
  • Or you cannot reproduce the probleù, and then:
    • the metafont-for-beginners.pdf from your compilation will have a complete toc
    • the two log files will be differ a lot and the log from compilation will show a second etex run

Please not that in my case the verbose outputs the following (vebatim parts are output to the standard error stream):
log file

Vincent Belaïche <vincentb1>
Sun 16 Aug 2015 09:06:30 PM UTC, comment #4:

Dear Karl et alii,

Sorry for the very-very long delay before doing any feedback. So, following Karl's request, I got the latest texi2dvi and texinfo.tex from the SVN repo and did the test again, and it still fails to make the toc complete after one run from scratch.

FYI, I had to do some small tricks in order to ensure that texi2pdf calls texi2dvi shell script in the same directory, because on my machine I had a texi2dvi.exe in MikTeX distribution, and MSYS was taking this one instead of the latest texi2dvi from the Texinfo project as I have MikTeX bin dir in the path...

Sorry also for the incorrect information in my very first post : actually the problem exists both with metafont-for-beginners.texi (the ASCII encoded English version) and metafont-for-beginners-fr.texi (the UTF-8 encoded French version). So it has nothing to do with accents or so contrary to my first guess. Probably, when I first made the test it had worked with the English version because the compilation was not really from scratch (I presume that some aux file was remaining from a previous compilation...)

Anyway, in order to compile from SCRATCH I now launch this command (please note that I also activated the verbose option in order to get a more complete log):

I attached the log file metafont-for-beginners.log, and by browsing it and looking at what the xref_files_changed from texi2dvi is doing I realized what the root cause of the issue is. You are grepping the log only for "Rerun to get" or for "biblatex.*(re)run" in order to trigger the etex re-run, but there aren't any such match in the log file, rather one can read in it:

So, I made some patch (attached as texi2dvi.diff) to grep the above also, and with it, it works fine: texi2dvi runs etex twice, and the toc is therefore complete.

BTW, maybe one single grep pass would be more efficient provided that the regexp would be an OR of the 3 regexps in use.

(file #34658, file #34659)

Vincent Belaïche <vincentb1>
Sun 19 Oct 2014 05:46:30 PM UTC, comment #3:

hi Vincent - sorry for the long-delayed reply. Unfortunately I cannot reproduce the problem. With both metafont-for-beginners.texi and -fr.texi (as in the latest zip attachment), simply running texi2pdf on them resulted in a pdf with a toc that looked fine to me. It ran pdftex twice, as needed and expected.

Be sure and get the latest texi2dvi and texinfo.tex from http://ftp.gnu.org/gnu/texinfo. If directly running texi2pdf still fails for you, let me know. (Not involving latexmk, of course ...)

Best,
Karl

Karl Berry <karl>
Project Administrator
Fri 05 Sep 2014 06:28:18 PM UTC, comment #2:

Nothing new about the problem itself, I just attached a finalized (well nothing is ever finalized) of my translation of metafont-for-beginner to French --- with porting from LaTeX2.09 to Texinfo format.

It is more of removing plenty of bad French spelling and clumsy translations than changing anything about what is causing the issue.

Please note that the issue is there both for the French and English texi files.

(file #32033)

Vincent Belaïche <vincentb1>
Mon 01 Sep 2014 10:35:11 PM UTC, comment #1:

thanks for the report, vincent. i'll look into it as soon as i have a chance. (FYI, texi2dvi uses cmp to determine whether the various generated files have changed, in the xref_files_changed fn. But there is a lot of fragility in the whole process, so I'm not surprised it fails sometimes.)

Karl Berry <karl>
Project Administrator
Mon 01 Sep 2014 09:36:59 AM UTC, original submission:

Introduction

Hello Karl, Gavin, Eli et ali,

Sorry to be again bothering --- I hope that you're not yet fed up with me.

Description of attachments

Please compare attached log0.txt and log1.txt

Both are compiling the same metafont-for-beginners-fr.texi document, but log0.txt is using latexmk, while log1.txt is using texi2pdf.

Command line is on the 3rd line of each log file and all the other files are in metafont-for-beginners-src-texinfo.zip., so you can try to reproduce the problem.

Description of problem

Now the problem is that tex2pdf does not get the table of content made.

I suspect that texi2pdf is scanning for the log to find some specific string whether or not trigger recompilation, and is bothered by the log being in UTF-8 in the case of French (because yes, we French, among many other people, need some accents on letters ;-P ).

I think so because issue is specific to metafont-for-beginners-fr.texi: with the original metafont-for-beginners.texi document in English there is no such problem.

VBR,
Vincent.

Vincent Belaïche <vincentb1>

 

Attached Files
file #34658:  metafont-for-beginners.log added by vincentb1 (6KiB - application/octet-stream)
file #34659:  texi2dvi.diff added by vincentb1 (745B - text/plain)
file #32007:  log0.txt added by vincentb1 (5KiB - text/plain)
file #32008:  log1.txt added by vincentb1 (14KiB - text/plain)

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -unavailable- added by gavin (Updated the item)
  • -unavailable- added by karl (Posted a comment)
  • -unavailable- added by vincentb1 (Submitted the item)
  •  

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.

     

    Please enter the title of George Orwell's famous dystopian book (it's a date):

     

     

    Follow 10 latest changes.

    Date Changed By Updated Field Previous Value => Replaced By
    Mon 17 Aug 2015 02:28:51 PM UTCvincentb1Attached File-=>Added metafont-for-beginners-macros.texi, #34667
    Mon 17 Aug 2015 02:21:58 PM UTCvincentb1Attached File-=>Added metafont-for-beginners.texi, #34666
    Sun 16 Aug 2015 09:06:30 PM UTCvincentb1Attached File-=>Added metafont-for-beginners.log, #34658
      Attached File-=>Added texi2dvi.diff, #34659
    Fri 19 Jun 2015 06:21:31 PM UTCgavinOpen/ClosedOpen=>Closed
      StatusNone=>Works For Me
    Fri 05 Sep 2014 06:28:18 PM UTCvincentb1Attached File-=>Added metafont-for-beginners-src-texinfo.zip, #32033
    Mon 01 Sep 2014 09:36:59 AM UTCvincentb1Attached File-=>Added metafont-for-beginners-src-texinfo.zip, #32006
      Attached File-=>Added log0.txt, #32007
      Attached File-=>Added log1.txt, #32008

    Back to the top


    Powered by Savane 3.1-cleanup1