FS#50275 - [biber] broken and unusable with current texlive-bin and libsynctex packages.

Attached to Project: Community Packages
Opened by Noel Kuntze (thermi) - Friday, 05 August 2016, 22:16 GMT
Last edited by Rémy Oudompheng (remyoudompheng) - Sunday, 07 August 2016, 14:11 GMT
Task Type Bug Report
Category Packages: Testing
Status Closed
Assigned To Rémy Oudompheng (remyoudompheng)
Architecture All
Severity High
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:

The packaged biber version can't be used with the pdflatex version that is currently provided and it complains about initialized variables.
Finally, it doesn't actually include the bibliography in the pdf file.

My project completely broke after updating and trying to use the biber version from community-testing.
Therefore I think this version of biber is not usable.

Additional info:
* package versions:
biber 2.5-1
libsynctex 2016.41290-4
texlive-bin 2016.41290-4

Output of `biber bachelorarbeit`
biber bachelorarbeit
INFO - This is Biber 2.5
INFO - Logfile is 'bachelorarbeit.blg'
INFO - Reading 'bachelorarbeit.bcf'
Use of uninitialized value $bltxversion in concatenation (.) or string at /usr/share/perl5/vendor_perl/Biber.pm line 415.
ERROR - Error: Found biblatex control file version 2.8, expected version 3.1.
This means that your biber (2.5) and biblatex () versions are incompatible.
See compat matrix in biblatex or biber PDF documentation.
INFO - ERRORS: 1
make: *** [Makefile:13: build] Fehler 2

With changed version number in the .bcf file:
```
Lots of these: Use of uninitialized value in lc at /usr/share/perl5/vendor_perl/Biber.pm line 430.
Then lots of those:
Use of uninitialized value in lc at /usr/share/perl5/vendor_perl/Biber.pm line 430.
Use of uninitialized value in lc at /usr/share/perl5/vendor_perl/Biber.pm line 425.

Then those:
Use of uninitialized value $lsnksn in concatenation (.) or string at /usr/share/perl5/vendor_perl/Biber.pm line 843.
Use of uninitialized value $lpn in concatenation (.) or string at /usr/share/perl5/vendor_perl/Biber.pm line 843.

Then some of those:

Use of uninitialized value in string eq at /usr/share/perl5/vendor_perl/Biber/DataModel.pm line 203.
Use of uninitialized value in string eq at /usr/share/perl5/vendor_perl/Biber/DataModel.pm line 206.

Then that:
Can't locate object method "get_useprefix" via package "Biber::Entry::Names" at /usr/share/perl5/vendor_perl/Biber/Internals.pm line 402.

Then

INFO - Found 8 citekeys in bib section 0
Use of uninitialized value $lsnksn in concatenation (.) or string at /usr/share/perl5/vendor_perl/Biber.pm line 843.
Use of uninitialized value $lpn in concatenation (.) or string at /usr/share/perl5/vendor_perl/Biber.pm line 843.
INFO - Processing section 0
INFO - Looking for bibtex format file 'bibliography.bib' for section 0
INFO - Decoding LaTeX character macros into UTF-8
INFO - Found BibTeX data source 'bibliography.bib'

Then some of those
Use of uninitialized value in string eq at /usr/share/perl5/vendor_perl/Biber/DataModel.pm line 203.
Use of uninitialized value in string eq at /usr/share/perl5/vendor_perl/Biber/DataModel.pm line 206.

and at the end:
Can't locate object method "get_useprefix" via package "Biber::Entry::Names" at /usr/share/perl5/vendor_perl/Biber/Internals.pm line 402.
INFO - This is Biber 2.5
INFO - Logfile is 'bachelorarbeit.blg'
INFO - Reading 'bachelorarbeit.bcf'
INFO - Found 8 citekeys in bib section 0
INFO - Processing section 0
INFO - Looking for bibtex format file 'bibliography.bib' for section 0
INFO - Decoding LaTeX character macros into UTF-8
INFO - Found BibTeX data source 'bibliography.bib'

Steps to reproduce:

pdflatex <file>
biber <file without extension>
This task depends upon

Closed by  Rémy Oudompheng (remyoudompheng)
Sunday, 07 August 2016, 14:11 GMT
Reason for closing:  Fixed
Additional comments about closing:  Caused by mixed TeXLive 2015 and 2016 packages.
Comment by Rémy Oudompheng (remyoudompheng) - Saturday, 06 August 2016, 17:40 GMT
The provided version of biblatex is 3.1, not 2.8.
Your installation is broken.

Please provide example files to demonstrate the issue.
Comment by Rémy Oudompheng (remyoudompheng) - Saturday, 06 August 2016, 18:21 GMT
It seems that texlive-bin 2016 was moved to extra without the other texlive 2016 packages.

It is now corrected today.
Comment by Noel Kuntze (thermi) - Saturday, 06 August 2016, 19:56 GMT
I just found out that I need to remove the two files
/var/lib/texmf/web2c/pdftex/pdflatex.fmt
/var/lib/texmf/web2c/pdftex/pdftex.fmt

to get it to work. It seems those two files are like caches and are used by biblatex and pdflatex
to generate the .bcf file of the .tex file. When I remove those two files, they are regenerated with correct contents
when I run pdflatex and then biber works, too. This was not obvious. I think the texlive-bin and libsynctex packages should remove
those files when upgrading. There are more .fmt files in the /var/lib/texmf/web2c/pdftex/ directory that are not owned by any package.
I think they could cause problems like that, as well. Maybe they should removed, as well, when the package is upgraded.

Comment by Rémy Oudompheng (remyoudompheng) - Saturday, 06 August 2016, 20:23 GMT
These files are already regenerated when you upgrade texlive-bin and texlive-core: they are caches (which is why they are in /var).

It is a bug if you need to remove them manually: please check your version of texlive-core, it was only updated today.
If the files are not recent it indicates that there was a problem in the regeneration and I need to know which problem in order to fix it.

Removing them from /var causes .fmt files to be regenerated in every $HOME directory, which is inefficient and very annoying for proper debugging.
Comment by Rémy Oudompheng (remyoudompheng) - Saturday, 06 August 2016, 20:24 GMT
To restore the original state, please re-run the script /usr/share/libalpm/scripts/texlive-updmap
and remove the .fmt files from $HOME/.texlive/texmf-var/web2c
Comment by Noel Kuntze (thermi) - Saturday, 06 August 2016, 20:42 GMT
LANG=C /usr/share/libalpm/scripts/texlive-updmap
>>> texlive: regenerating updmap.cfg (custom additions should go
into /etc/texmf/web2c/updmap-local.cfg
cp: cannot stat 'usr/share/texmf-dist/web2c/updmap-hdr.cfg': No such file or directory
/usr/share/libalpm/scripts/texlive-updmap: line 9: etc/texmf/web2c/updmap.cfg: No such file or directory
>>> texlive: updating the fontmap files with updmap...
done.


make
rm -f bachelorarbeit.aux
rm -f bachelorarbeit.bcf
rm -f bachelorarbeit.blg
rm -f bachelorarbeit.bbl
rm -f bachelorarbeit.pdf
rm -f bachelorarbeit.aux
rm -f bachelorarbeit.bcf
rm -f bachelorarbeit.blg
rm -f bachelorarbeit.bbl
pdflatex -8bit bachelorarbeit.tex
This is pdfTeX, Version 3.14159265-2.6-1.40.17 (TeX Live 2016/Arch Linux) (preloaded format=pdflatex)
restricted \write18 enabled.
---! /home/thermi/.texlive/texmf-var/web2c/pdftex/pdflatex.fmt doesn't match pdftex.pool
(Fatal format file error; I'm stymied)
make: *** [Makefile:12: build] Fehler 1
Comment by Rémy Oudompheng (remyoudompheng) - Sunday, 07 August 2016, 02:47 GMT
You have not removed the fmts from your $HOME/.texlive/texmf-var
After that reinstall texlive-bin and texlive-core using pacman (better than running scripts manually)
Comment by Noel Kuntze (thermi) - Sunday, 07 August 2016, 08:00 GMT
I did not know that one had to do this.

I just `rm -rf`'d $HOME/.texlive/texmf-var, and that error is gone now, but now I get the following error
when running biber:

biber bachelorarbeit
INFO - This is Biber 2.5
INFO - Logfile is 'bachelorarbeit.blg'
INFO - Reading 'bachelorarbeit.bcf'
Use of uninitialized value $bltxversion in concatenation (.) or string at /usr/share/perl5/vendor_perl/Biber.pm line 415.
ERROR - Error: Found biblatex control file version 2.8, expected version 3.1.
This means that your biber (2.5) and biblatex () versions are incompatible.
See compat matrix in biblatex or biber PDF documentation.
INFO - ERRORS: 1
make: *** [Makefile:13: build] Fehler 2

It looks like all the cache files from /var/lib/texmf/web2c/ are really old and not owned by anything.

┌─[thermi][thermi-pc][/var/lib/texmf/web2c]
└──╼ LANG=C ls -l
total 412
drwxr-xr-x 2 root root 4096 15. Sep 2015 eptex
drwxr-xr-x 2 root root 4096 15. Sep 2015 euptex
drwxr-xr-x 2 root root 4096 15. Sep 2015 luajittex
drwxr-xr-x 2 root root 4096 15. Sep 2015 luatex
drwxr-xr-x 2 root root 4096 15. Sep 2015 metafont
drwxr-xr-x 2 root root 4096 5. Aug 22:52 pdftex
drwxr-xr-x 2 root root 4096 15. Sep 2015 ptex
drwxr-xr-x 2 root root 4096 15. Sep 2015 tex
-rw-r--r-- 1 root root 378748 6. Aug 22:42 updmap.log
drwxr-xr-x 2 root root 4096 15. Sep 2015 uptex
drwxr-xr-x 2 root root 4096 15. Sep 2015 xetex

┌─[thermi][thermi-pc][/var/lib/texmf/web2c]
└──╼ LANG=C pacman -Qo *
error: No package owns eptex
error: No package owns euptex
error: No package owns luajittex
error: No package owns luatex
error: No package owns metafont
error: No package owns pdftex
error: No package owns ptex
error: No package owns tex
error: No package owns updmap.log
error: No package owns uptex
error: No package owns xetex


Even after removing the Cache in $HOME/.texlive/texmf-var and reinstalling texlive-bin and texlive-core, biber errors out with the message that is visible in the top of this comment.

Deleting the global cache in /var/lib/texmf/, the local cache in $HOME/.texlive/texmf-var and reinstalling texlive-bin and texlive-core doesn't fix it either.

Okay, a couple of package updates just rolled in and with those, `biber` actually works. Great!

extra/libsynctex 2016.41290-4 2016.41290-5 0,00 MiB 0,03 MiB
extra/texlive-bibtexextra 2015.38806-1 2016.41470-2 2,42 MiB 1,42 MiB
extra/texlive-bin 2016.41290-4 2016.41290-5 -0,07 MiB 9,33 MiB
extra/texlive-core 2015.38835-1 2016.41471-1 10,41 MiB 117,61 MiB
extra/texlive-fontsextra 2015.38746-1 2016.41439-2 57,76 MiB 246,53 MiB
extra/texlive-formatsextra 2015.36217-1 2016.41438-2 -0,01 MiB 0,24 MiB
extra/texlive-games 2015.38457-1 2016.39318-2 0,00 MiB 0,39 MiB
extra/texlive-genericextra 2015.38503-1 2016.41413-2 0,01 MiB 0,27 MiB
extra/texlive-htmlxml 2015.38712-1 2016.41440-2 0,00 MiB 1,09 MiB
extra/texlive-humanities 2015.38717-1 2016.41380-2 0,07 MiB 0,28 MiB
extra/texlive-langchinese 2015.37889-1 2016.41405-2 7,50 MiB 50,29 MiB
extra/texlive-langcyrillic 2015.38162-1 2016.41231-2 0,12 MiB 2,83 MiB
extra/texlive-langextra 2015.38429-1 2016.41397-2 0,16 MiB 21,51 MiB
extra/texlive-langgreek 2015.38707-1 2016.40850-2 0,17 MiB 65,32 MiB
extra/texlive-langjapanese 2015.38810-1 2016.41443-2 0,45 MiB 33,28 MiB
extra/texlive-langkorean 2015.38727-1 2016.40373-2 0,00 MiB 30,79 MiB
extra/texlive-latexextra 2015.38831-1 2016.41473-2 -12,93 MiB 10,39 MiB
extra/texlive-music 2015.38340-1 2016.41389-2 23,50 MiB 12,20 MiB
extra/texlive-pictures 2015.38755-1 2016.41299-2 2,29 MiB 3,08 MiB
extra/texlive-plainextra 2015.38696-1 2016.41437-2 -0,30 MiB 0,28 MiB
extra/texlive-pstricks 2015.38821-1 2016.41321-2 0,18 MiB 24,93 MiB
extra/texlive-publishers 2015.38832-1 2016.41474-2 10,49 MiB 10,46 MiB
extra/texlive-science 2015.38824-1 2016.41327-2 0,58 MiB 2,44 MiB
community/ttf-symbola 8.00-1 9.00-1 0,00 MiB 0,89 MiB

Comment by Rémy Oudompheng (remyoudompheng) - Sunday, 07 August 2016, 14:11 GMT
Indeed, it is not expected to work if you mix TeXLive 2015 and 2016 packages.

Loading...