10

Edit: Upgrade of Mac TeX solved the following problem:

Package biblatex Warning: File 'testbib.bbl' is wrong format version - expected 2.8. 

But now I instead get:

! Package xkeyval Error: `family_i' undefined in families `blx@opt@namepart'.

when I try to submit to arXiv. Anyone how knows who I can solve this? I don't know what to do. Thank you all very much! I think I've collected the essentials:

%testbib.bbl
\documentclass[10pt, a4paper, centertags, openright, mathscr]{amsart}
\usepackage[left]{lineno}

\usepackage{etex}

\usepackage{amsmath, amsfonts, amsthm, amssymb, amsxtra, bbm, enumerate, stmaryrd}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage[dvipsnames]{xcolor}

\usepackage[style=alphabetic,
        backend=biber,
        isbn=false,
        doi=false,
        url=false,
        hyperref=true, 
        firstinits=true,
        maxbibnames=99,
        maxalphanames=99,
        maxnames=99,
        block=none]{biblatex}
\addbibresource{\string~/Documents/Latex/bibFile.bib}
\renewcommand*{\newunitpunct}{\addcomma\space}

\renewbibmacro*{journal+issuetitle}{%
\usebibmacro{journal}%
\setunit*{\addspace}%
\iffieldundef{series}
{}  
{\newunit
 \printfield{series}%
 \setunit{\addspace}}%
\printfield{volume}%
\setunit{\addspace}%
\usebibmacro{issue+date}%
\setunit{\addcolon\space}%
\usebibmacro{issue}%
\setunit{\addcomma\space}%
\printfield{number}%
\newunit}

\renewbibmacro*{volume+number+eid}{%
\printfield{volume}
\printfield{number}
}

\renewbibmacro*{date}{\setunit{\addspace}\printdate}
\DeclareFieldFormat*{title}{\mkbibemph{#1}}%\addperiod % italic title with period
\DeclareFieldFormat*{journaltitle}{#1} % title of journal article is printed as normal text
\DeclareFieldFormat[incollection]{booktitle}{\rm #1} % title of journal article is printed as normal text
\DeclareFieldFormat*{volume}{vol. \bf #1} 
\DeclareFieldFormat[article]{date}{#1}
\DeclareFieldFormat[book,inbook,incollection,thesis,unpublished]{date}{(#1)}
\DeclareFieldFormat*{number}{no. #1} 
\DeclareFieldFormat*{pages}{#1}
\renewbibmacro{in:}{}

\begin{document}

\title{Test Biblatex}
\author{Myself {\ae}{\o}{\aa}}
\maketitle

In \cite{lur-09} and \cite{mac-98}. 

\printbibliography

\end{document}

when

% $ biblatex auxiliary file $
% $ biblatex bbl format version 2.7 $
% Do not modify the above lines!
%
% This is an auxiliary file used by the 'biblatex' package.
% This file may safely be deleted. It will be recreated by
% biber as required.
%
\begingroup
\makeatletter
\@ifundefined{ver@biblatex.sty}
  {\@latex@error
     {Missing 'biblatex' package}
     {The bibliography requires the 'biblatex' package.}
      \aftergroup\endinput}
  {}
\endgroup


\refsection{0}
  \sortlist[entry]{anyt/global/}
    \entry{lur-09}{book}{}
      \name{author}{1}{}{%
        {{hash=760ea879284b1a6eeaad87a82be8d1d7}{%
           family={Lurie},
           family_i={L\bibinitperiod},
           given={Jacob},
           given_i={J\bibinitperiod}}}%
      }
      \list{location}{1}{%
        {Princeton, NJ}%
      }
      \list{publisher}{1}{%
        {Princeton University Press}%
      }
      \strng{namehash}{760ea879284b1a6eeaad87a82be8d1d7}
      \strng{fullhash}{760ea879284b1a6eeaad87a82be8d1d7}
      \field{labelalpha}{Lur09}
      \field{sortinit}{L}
      \field{sortinithash}{872351f18d0f736066eda0bf18bfa4f7}
      \field{labelnamesource}{author}
      \field{labeltitlesource}{title}
      \field{isbn}{978-0-691-14049-0; 0-691-14049-9}
      \field{series}{Annals of Mathematics Studies}
      \field{title}{Higher topos theory}
      \field{volume}{170}
      \field{year}{2009}
      \field{pages}{xviii+925}
      \range{pages}{-1}
    \endentry
    \entry{mac-98}{book}{}
      \name{author}{1}{}{%
        {{hash=412e255483e0d09fd0b0895d355a28a8}{%
           family={Mac\bibnamedelima Lane},
           family_i={M\bibinitperiod\bibinitdelim L\bibinitperiod},
           given={Saunders},
           given_i={S\bibinitperiod}}}%
      }
      \list{location}{1}{%
        {New York}%
      }
      \list{publisher}{1}{%
        {Springer-Verlag}%
      }
      \strng{namehash}{412e255483e0d09fd0b0895d355a28a8}
      \strng{fullhash}{412e255483e0d09fd0b0895d355a28a8}
      \field{labelalpha}{Mac98}
      \field{sortinit}{M}
      \field{sortinithash}{2684bec41e9697b92699b46491061da2}
      \field{labelnamesource}{author}
      \field{labeltitlesource}{title}
      \field{edition}{Second Edition}
      \field{isbn}{0-387-98403-8}
      \field{series}{Graduate Texts in Mathematics}
      \field{title}{Categories for the working mathematician}
      \field{volume}{5}
      \field{year}{1998}
      \field{pages}{xii+314}
      \range{pages}{-1}
    \endentry
  \endsortlist
\endrefsection
\endinput

When running 'biber' on my computer I get:

INFO - This is Biber 2.5 

I tried to change to

backend=bibtex 

but it gives the same error.

  • Are you aware exactly which version arxiv uses? They do not tend to be using g bleeding edge versions. – daleif Mar 16 '17 at 21:04
  • TeXLive 2016, but it seems that I have version 2013? – nunatak Mar 16 '17 at 21:12
  • 1
    It is not worth your time to try to manually update biblatex and biber, trust me. It also depends on a lot of other packages. – daleif Mar 16 '17 at 21:27
  • 1
    Indeed, it worked after a while. Thank you very much! – nunatak Mar 17 '17 at 7:30
  • 1
    Indeed, it got upgraded after a while. Thank you very much! – nunatak Mar 17 '17 at 7:46
12

If you are looking for help with biblatex and Biber for arXiv uploads, have a look at https://github.com/plk/biblatex/wiki/biblatex-and-the-arXiv

Note that the answer below was written when the current version of biblatex and Biber (3.7 and 2.7 respectively) at that time were the same as the version on the arXiv system. This is not the case any more. If you want to upload to the arXiv now you must compile your file with older versions of biblatex and Biber. Follow the link above to learn more.

Since February 2017, arXiv is running TeX live 2016 (https://confluence.cornell.edu/display/arxivpub/2016+arXiv+Roadmap, https://arxiv.org/help/faq/texlive) with - if I understand 'arXiv is now running under TeXLive 2016, with a new, updated and enhanced tree of local addons and support for newer font sets, and everything else contained within the standard distribution' correctly - packages updated a bit after the initial release of TeX live 2016.

It is, however, nowhere indicated that arXiv would get continuous updates from CTAN. And indeed that would most likely be unfeasible and is thus very, very unlikely.

Due to the way biblatex works, version mismatches are fatal errors. (And even if they are not detected - as was the case in older versions - they can still wreak havoc on your documents.) So you can submit documents using biblatex since they are able to run it, but only if your biblatex and Biber version matches the version that arXiv is running. At this moment I believe they are running biblatex 3.7/Biber 2.7, which is the current version on CTAN as well. But as soon as there is an update to CTAN the up-to-date versions and arXiv will be out of sync.

Since biblatex is still being developed and sometimes huge internal changes are made from one version to another, biblatex is not exactly best friends with the publishing world, who values stability and in some cases moves very slowly through LaTeX versions. See also Biblatex: submitting to a journal.

See also Biblatex: submitting to the arXiv and Publishing to Arxiv using Biblatex-Biber

There is precedence of people just uploading all necessary biblatex files in their submissions, see https://arxiv.org/abs/1610.02077 and https://arxiv.org/abs/1608.06539 amongst others. This works if biblatex does not depend on recently added functionality in another package. In the near future that is going to be a viable option. In a 2017 paper by one of the authors, they could get away with only providing the non-standard styles since the local version of bibliatex and arXiv's version matched: https://arxiv.org/abs/1703.01152.


The arXiv people even have put up a bit of advice on biblatex on their help site: https://arxiv.org/help/faq/texlive.html

An incomplete list of common symptoms, errors, and fixes follows:

Wrong biblatex format version. If you have been developing with an older biblatex you will need to regenerate your .bbl file.

Package biblatex Warning: File 'Constraints.bbl' is wrong format version - expected 2.7.

fix: the author needs to regenerate their .bbl file.

Note that this advice only works if you have the same version of biblatex that arXiv is running on your local machine. As soon as the two versions are out of sync, things cannot be fixed by simply regenerating the .bbl.

  • Thanks! Any tricks how I can upgrade to biblatex 3.7/Biber 2.7 on Mac? Tried newest version of MacTex, but they gave the versions listed above. – nunatak Mar 17 '17 at 10:16
  • @nunatak You should get the current versions of biblatex and Biber if you update your MacTeX via tlmgr, see also tex.stackexchange.com/q/55437/35864 But as I hopefully explained well enough that is not future-proof. As soon as there is a new update to biblatex on CTAN you won't be able to upload to arXiv with that version any more. – moewe Mar 17 '17 at 10:21
  • Which is why the first I did after learning about the update is to go to my texlive folder and do cp -R 2016 arxiv... – Christian Clason Mar 17 '17 at 11:06
  • @moewe Awesome, I wasn't aware of this. Thank you! – nunatak Mar 17 '17 at 11:29
  • @moewe As a MacTex user, it's quite easy to handle multiple TeX Live versions: Tex Live Utility > Configure > Change Default TeX Live version… (which allows you to upgrade and downgrade.) – beatngu13 Feb 11 '18 at 11:08
4

For me, the solution is to upload my own versions of biblatex.sty [1] and blx-compat.def [2] to arXiv.

[1] /usr/share/texlive/texmf-dist/tex/latex/biblatex/biblatex.sty
[2] /usr/share/texlive/texmf-dist/tex/latex/biblatex/blx-compat.def

Note that the problem is the API version, not the file format version (the BBL file is regular TeX)

  • 2
    Depending on how different your version of biblatex and that on arXiv are, you may have to upload more files, though. (For example the .lbx file of the languages you use, the .bbx and .cbx file of your style, biblatex.def, blx-dm.def, ...). See also my recent answer to tex.stackexchange.com/q/438449/35864 – moewe Jul 2 '18 at 10:02
2

I know that the question has been updated but I was still getting the version error but that was because mine was a newer version. Getting an older version seemed tedious.

I tried compiling my code on overleaf and then I copied from the output generated, the .bbl file which had the right version.

Uploading this version with everything else unchanged worked for me; might help you as well.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.