Package: rubber Version: 1.5-1 Severity: normal Dear Maintainer,
Since the last update, rubber now fails with a UnicodeDecodeError when the .log is not in UTF-8, which is the encoding of my locale. Setting LANG=C makes it breaks somewhere else (much earlier). While my source file is in UTF-8, the .log file is not. Here is a little example I wrote. $ cat test.tex \documentclass{article} \usepackage[T1]{fontenc} \usepackage[utf8]{inputenc} \begin{document} ééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééé ééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééé \end{document} $ rubber -df test compiling test.tex... Traceback (most recent call last): File "/usr/bin/rubber", line 17, in <module> sys.exit (cmdline (args)) File "/usr/lib/python3/dist-packages/rubber/cmdline.py", line 432, in __call__ self.main (cmdline) File "/usr/lib/python3/dist-packages/rubber/cmdline.py", line 373, in main self.process_source (env) File "/usr/lib/python3/dist-packages/rubber/cmdline.py", line 460, in process_source self.build (env) File "/usr/lib/python3/dist-packages/rubber/cmdline.py", line 393, in build ret = env.main.make(True) File "/usr/lib/python3/dist-packages/rubber/depend.py", line 143, in make rv = self.real_make (force) File "/usr/lib/python3/dist-packages/rubber/depend.py", line 184, in real_make if not self.run (): File "/usr/lib/python3/dist-packages/rubber/converters/latex.py", line 1313, in run if not self.compile(): File "/usr/lib/python3/dist-packages/rubber/converters/latex.py", line 1232, in compile if not self.parse_log (): File "/usr/lib/python3/dist-packages/rubber/converters/latex.py", line 1246, in parse_log return self.log.readlog (logfile_name, logfile_limit) File "/usr/lib/python3/dist-packages/rubber/converters/latex.py", line 184, in readlog line = fp.readline () File "/usr/lib/python3.6/codecs.py", line 321, in decode (result, consumed) = self._buffer_decode(data, self.errors, final) UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe9 in position 2036: invalid continuation byte The trouble comes from the fact that the test.log contains an error (overfull) on the one paragraph, and that the "é" are output in a different encoding in the .log (latin1 I guess). It breaks at line 51 in the following: $ cat -n test.log 1 This is pdfTeX, Version 3.14159265-2.6-1.40.19 (TeX Live 2019/dev/Debian) (preloaded format=pdflatex 2018.9.3) 4 SEP 2018 10:46 2 entering extended mode 3 restricted \write18 enabled. 4 %&-line parsing enabled. 5 **\nonstopmode \input{test.tex} 6 (./test.tex (/usr/share/texlive/texmf-dist/tex/latex/base/article.cls 7 Document Class: article 2014/09/29 v1.4h Standard LaTeX document class 8 (/usr/share/texlive/texmf-dist/tex/latex/base/size10.clo 9 File: size10.clo 2014/09/29 v1.4h Standard LaTeX file (size option) 10 ) 11 \c@part=\count80 12 \c@section=\count81 13 \c@subsection=\count82 14 \c@subsubsection=\count83 15 \c@paragraph=\count84 16 \c@subparagraph=\count85 17 \c@figure=\count86 18 \c@table=\count87 19 \abovecaptionskip=\skip41 20 \belowcaptionskip=\skip42 21 \bibindent=\dimen102 22 ) 23 (/usr/share/texlive/texmf-dist/tex/latex/base/fontenc.sty 24 Package: fontenc 2017/04/05 v2.0i Standard LaTeX package 25 26 (/usr/share/texlive/texmf-dist/tex/latex/base/t1enc.def 27 File: t1enc.def 2017/04/05 v2.0i Standard LaTeX file 28 LaTeX Font Info: Redeclaring font encoding T1 on input line 48. 29 )) 30 (/usr/share/texlive/texmf-dist/tex/latex/base/inputenc.sty 31 Package: inputenc 2018/04/06 v1.3b Input encoding file 32 \inpenc@prehook=\toks14 33 \inpenc@posthook=\toks15 34 ) (./test.aux) 35 \openout1 = `test.aux'. 36 37 LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 4. 38 LaTeX Font Info: ... okay on input line 4. 39 LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 4. 40 LaTeX Font Info: ... okay on input line 4. 41 LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 4. 42 LaTeX Font Info: ... okay on input line 4. 43 LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 4. 44 LaTeX Font Info: ... okay on input line 4. 45 LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 4. 46 LaTeX Font Info: ... okay on input line 4. 47 LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 4. 48 LaTeX Font Info: ... okay on input line 4. 49 50 Overfull \hbox (249.8584pt too wide) in paragraph at lines 5--7 51 []\T1/cmr/m/n/10 éééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééé 52 ééé ééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééééé 53 [] 54 55 [1 56 57 {/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map}] (./test.aux) ) 58 Here is how much of TeX's memory you used: 59 431 strings out of 494484 60 4085 string characters out of 6174952 61 55258 words of memory out of 5000000 62 4160 multiletter control sequences out of 15000+600000 63 4403 words of font info for 15 fonts, out of 8000000 for 9000 64 59 hyphenation exceptions out of 8191 65 24i,4n,18p,172b,113s stack positions out of 5000i,500n,10000p,200000b,80000s 66 </home/hym/ 67 .texlive2018/texmf-var/fonts/pk/ljfour/jknappen/ec/ecrm1000.600pk> 68 Output written on test.pdf (1 page, 1755 bytes). 69 PDF statistics: 70 14 PDF objects out of 1000 (max. 8388607) 71 8 compressed objects within 1 object stream 72 0 named destinations out of 1000 (max. 500000) 73 1 words of extra memory for PDF output out of 10000 (max. 10000000) 74 Best regards, Samuel -- System Information: Debian Release: buster/sid APT prefers unstable APT policy: (500, 'unstable'), (500, 'testing'), (500, 'stable'), (1, 'experimental') Architecture: amd64 (x86_64) Kernel: Linux 4.17.0-3-amd64 (SMP w/2 CPU cores) Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8), LANGUAGE=fr_FR.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages rubber depends on: ii python3 3.6.6-1 ii texlive-latex-base 2018.20180824-1 rubber recommends no packages. Versions of packages rubber suggests: pn asymptote <none> ii biber 2.11-2 ii fig2dev [transfig] 1:3.2.7a-3 ii imagemagick 8:6.9.10.8+dfsg-1 ii imagemagick-6.q16 [imagemagick] 8:6.9.10.8+dfsg-1 pn python-prompt-toolkit <none> ii python-pygments 2.2.0+dfsg-1 ii python3-prompt-toolkit 1.0.15-1 ii python3-pygments 2.2.0+dfsg-1 pn r-cran-knitr <none> ii texlive-bibtex-extra 2018.20180824-1 ii texlive-binaries 2018.20180824.48463-1 ii texlive-extra-utils 2018.20180824-1 ii texlive-latex-extra 2018.20180824-1 ii texlive-latex-recommended 2018.20180824-1 pn texlive-metapost <none> pn texlive-omega <none> ii texlive-pictures 2018.20180824-1 -- no debconf information