tectonic-typesetting / tectonic

A modernized, complete, self-contained TeX/LaTeX engine, powered by XeTeX and TeXLive.
https://tectonic-typesetting.github.io/
Other
3.98k stars 161 forks source link

Deploy TeXLive 2020.0 bundle #669

Closed pkgw closed 3 years ago

pkgw commented 4 years ago

I have a prototype of the TeXLive 2020.0 bundle ready for testing. You can enable it with the following command-line argument:

tectonic -w https://ttassets.z13.web.core.windows.net/tlextras-2020.0r0.tar ...

I have bitten the bullet and started hosting the files off of a cloud storage that I am paying for; you should notice a significant speed increase when pulling down new files.

I recommend that you test this bundle using Tectonic version 0.3, which updates the engine implementations to TeXLive 2020.0 and is being released right now. The bundle files should work with older versions, but the LaTeX format generation depends on some of the new primitives introduced in TL2020.0, so the internals will have substantial differences depending on whether you process documents using 0.3 or an older version. (In particular, expl3 related pieces won't be enabled unless you upgrade.)

I have extracted the code to generate the bundle from the "staging" repository to tectonic-texlive-bundles, which should be a lot easier to understand because all of the reference-sources support is gone. I started a very primitive test suite in tests/ to test out compilations with new versions of the bundle.

CC @Mrmaxmeier @crlf0710 @ralismark @burrbull

pkgw commented 4 years ago

The 0.3.0 release is deployed: https://github.com/tectonic-typesetting/tectonic/releases/tag/tectonic%400.3.0

LiHRaM commented 3 years ago

First, thanks for all the great work you do! I've just tested on my report with 0.3.1, and I got an error, which I was able to reproduce with a minimal example:

\documentclass{article}
\usepackage{lipsum}
\begin{document}

\end{document}

Fails with ! LaTeX3 Error: File 'lipsum.ltd' not found.

pkgw commented 3 years ago

Looks like the file appears in the bundle under the name lipsum.ltd.tex. Will need to figure out if our file-finding needs to tack on the extension somewhere, or we should rename the file in the bundle, or what.

pkgw commented 3 years ago

Ah, our file-finding code does not try adding on an extension if the passed-in file name already has one:

https://github.com/tectonic-typesetting/tectonic/blob/5fbf5be3769ec843ae20353f3f05e0291dbf7c2b/src/engines/mod.rs#L169-L173

WtfJoke commented 3 years ago

Did you already hit the switch and deployed it? 😄 I was a bit confused, as I was building an alpine 🐳 image with tectonic (0.1.12 is the latest available) and it downloads the 2020 bundle.

note: this is a BETA release; ask questions and report bugs at https://tectonic.newton.cx/
note: connecting to https://archive.org/services/purl/net/pkgwpub/tectonic-default
note: resolved to https://ttassets.z13.web.core.windows.net/tlextras-2020.0r0.tar
pkgw commented 3 years ago

@WtfJoke Yes, the new 2020.0 bundle is now active by default. Older versions of the Tectonic software should still work with the new bundle, in the vast majority of cases. But if there is something that doesn't work, you'll have to find a way to update to Tectonic 0.3.0 or newer.

pkgw commented 3 years ago

@LiHRaM Your bug should be fixed by version 0.3.2 of the engine, which is being released now. I'm going to close this issue since it's about the bundle deployment — please file new ones if other issues turn up!

WtfJoke commented 3 years ago

Yeah no worries, I just thought this issue will be closed as soon as its released (as I was watching it, when I need to adjust the docker image). But now its closed so its fine. Thanks a lot for deploying it :)