New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Arxiv compatibility #663

Open
Lukas2345 opened this Issue Nov 27, 2017 · 9 comments

Comments

Projects
None yet
6 participants
@Lukas2345

Lukas2345 commented Nov 27, 2017

Hi,
it is currently rather cumbersome to use put documents using BibLatex on the ArXiv. Since I believe that a number of BibLatex users also frequently needs to upload documents on the ArXiv, I suggest to add a feature to simplify this.

Current situation:

  1. One cannot upload PDF-Files which are generated via TeX to the ArXiv, instead one is asked to provide the source, and it is compiled on their server.
  2. One cannot upload .bib-Files, instead one is asked to upload the .bbl-File
  3. .bbl-Files created with different versions of BibLatex are (mostly) incompatible.

The TexLive currently used by the Arxiv requires a bbl-File in the format version 2.8, which is BibLatex 3.5, 3.6 and 3.7. Otherwise the user gets an error message "File 'blah.bbl' is wrong format version - expected 2.8". (I did not find the information to which package version this corresponds in the documentation, so I looked at the biblatex.sty for various versions.)

The ArXiv updates its TexLive rather infrequently (the current one is 2016, before it was 2011), and the included packages are not updated in the meantime. So this 2.8 is most likely to stay for a few years.

Suggestion:
Add a package option to Biblatex which causes it to create a .bbl file in the format 2.8.

Optional:
Ideally, this option should be ignored by the version of Biblatex used by the ArXiv. I do not know if that is possible, but this way the same tex code would compile both locally and on the ArXiv.

@plk

This comment has been minimized.

Owner

plk commented Nov 27, 2017

This is basically impossible - the .bbl for biblatex contains custom macros defined in biblatex.sty and not generic TeX. So, the coupling is very tight and ignoring the version would make things simply not work. The version is in there to make sure the the right version of biber is used (which is what writes the .bbl). The only real solution is seeing if Arxiv can update its biblatex version or making sure you use the same biblatex version as Arxiv. If Arxiv uses TL, perhaps they can just update biblatex?

@moewew moewew added the enhancement label Nov 27, 2017

@moewew

This comment has been minimized.

Collaborator

moewew commented Nov 27, 2017

I don't think that the arXiv people are keen on updating their systems more often.

If an option like this were implemented the only safe way I can think of at the moment would essentially amount to including a copy of an older version of biblatex in the current version. That does not seem like a good idea.

@Lukas2345 I know of people that basically froze their TeX live at (more or less) the exact version that arXiv are running. (They copied their texmf files over to a new directory.) Since you can have several TeX lives installed at the same time, that might be a viable option. Of course it is hard to do that retroactively. But you can at least get older versions of biblatex and Biber from sourceforge.

@lenis2000

This comment has been minimized.

lenis2000 commented Dec 22, 2017

One needs a texlive 2016 with the 3.5 version of biblatex. What worked for me, is

  • I download mactex basic 2016,
  • switched to that version,
  • updated the tlmgr (sudo tlmgr update --self),
  • installed all the needed packages (without which pdflatex chokes),
  • removed the system biblatex.

Then downloaded the zipped release of biblatex-3.5 and install it into local texmf tree using obuild
(for some reason cloning the whole repo and using obuild to get the appropriate version does not work!)

This produces a basic tex 2016 with a few extra packages, and a desired version of biblatex.


PS. If someone reproduces the issue that obuild from the current version does not install biblatex 3.5 properly, maybe we can file this as an issue

@moewew

This comment has been minimized.

Collaborator

moewew commented Dec 22, 2017

@lenis2000 Thanks for the comment. A few remarks:

  • If you want to use all of biblatex's features, you should use the Biber backend. Then you would have to install the corresponding version of Biber as well (you can get them from sourceforge: https://sourceforge.net/projects/biblatex-biber/files/biblatex-biber/, biblatex 3.5 needs Biber 2.6).
  • obuild only installs the files it can find and gives them the version number you specify, it does not actually install the release version of the version you supply it with. So if you clone the repo now and run the install script with 3.5 as version argument it will install what is essentially biblatex 3.10, but it will modify the version strings in a way that the installation identifies itself as 3.5. This is definitely not what you want. So you will need to download the 3.5 release either here using tags or from sourceforge (https://sourceforge.net/projects/biblatex/files/)
  • You might have to install other packages so you can compile more complicated documents as well. Ideally you'd install the same version that is present on arXiv as well. (For many packages that is probably not crucial, either because they are stable now and not updated that frequently, or because they don't rely on external binaries.)
@beatngu13

This comment has been minimized.

beatngu13 commented Feb 11, 2018

A little workaround: 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 or downgrade to the version used by arXiv.)

@moewew

This comment has been minimized.

Collaborator

moewew commented Sep 17, 2018

For people coming here looking for help with the dreaded

Package biblatex Warning: File '<file>.bbl' is wrong format version - expected 2.8.

version on arXiv submissions, please refer to https://github.com/plk/biblatex/wiki/biblatex-and-the-arXiv in the Wiki.

@dougalsutherland

This comment has been minimized.

dougalsutherland commented Oct 11, 2018

I've also had success uploading both the locally-produced .bbl and the local version of biblatex to arXiv, with this script. I guess that might break on some weird cases, but it works for what I've needed it for.

(Edit: I just added that to the wiki page linked above.)

@moewew

This comment has been minimized.

Collaborator

moewew commented Oct 12, 2018

@dougalsutherland Thank you for the addition. Is there any place where people can report issues with your Python script? I don't know a lot about Python and I really don't want to have to tell people that we don't maintain the script, but that I have no idea where to report issues.

@moewew

This comment has been minimized.

Collaborator

moewew commented Oct 19, 2018

@dougalsutherland I clarified that we do not maintain the script in the Wiki (https://github.com/plk/biblatex/wiki/biblatex-and-the-arXiv/_compare/629b4424f501768e37d6f1bfba893664bd1fc688), hope you are OK with that. If you have an official bugtracker/support address for that script, we could add that to the Wiki as well.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment