I'm trying to understand how the TeXLive release cycle works, but I'm unable to find exact information during my research. I hope someone here can point me in the right direction. Here's what I learned so far:

Last week I read somewhere that "TeXLive 2019 has been released", so did a full TeXLive 2019 install using the install-tl script. Today I ran tlmgr update --all and it installed 28 updates.

What this tells me (correct me if I'm wrong):

  • When a release is released, it is not finished, but its packages will still be updated. Bugs will (hopefully) be fixed, features might be added or removed.
  • A sentence like "I compiled it with TeXLive 2019 and got the following error: ..." is meaningless, because a TeXLive 2019 installation could have different package versions, bugs, and features, depending on the last time it was updated. (Note: this is not a hypothetical thing. A colleague got confused because our central TL 2017 install behaved different from his outdated Ubuntu TL 2017 install, which was still called TeXLive 2017).

So this leads to the following questions:

  • If a release does not constitute specific versions of specific packages, then what is the difference between the current TeXLive release and the last one?
  • Is a release considered 'finished' at one point, so that I can install it and be confident that it doesn't change anymore? In other words, is it possible to reason about the feature set of "TeXLive 2019-final" or similar, like in my example above? (cf. this mail)

TeX Live is finalised once per year, as David says in his answer this includes a more-or-less fixed set of binaries. (Binary updates almost never add features, only fix issues, during the year.) At the same time, this release version is made into an ISO for DVD production.

During the year, (macro) package updates happen from this point to the point at which TeX Live is 'frozen'. Thus a TeX Live release does not correspond to any particular macro package version. The 'frozen' version is predictable, and so many people will keep these as a 'reference' and say something like 'tested with TL'XX final'. (For example, I have every TeX Live version from TL'09 onward available on my development system: all are 'final frozen' versions.)

The historic archive contains the final version including all 'in place' updates for the year. If you want the DVD release, grabbing the ISO is the way to go: they are fixed at 'release'.

  • 2
    Just to add a comment why this is necessary: Building binaries for all architecture/OS combinations we support takes a lot of time - the frozen period. During this time we prefer not to do updates of macros because updates in the binaries often require non-backward compatible changes in the macros. Thus, for the compile and test time, all updates are frozen. During the year we hardly release new binaries, only in case of grave bugs new binaries are provided. – norbert Jun 4 '19 at 1:29
  • Thanks for the great answer! However, I don't quite understand the last paragraph. If the historic archive contains the final frozen versions, how can it contain TL 2019, which is not frozen yet (at least I still got upgrades today). Also, which ISO are you talking about at the end? There is an ISO in the historic archive for 2018, whose timestamp coincides with the date of the freeze commit (tug.org/pipermail/tex-live-commits/2018-April/006169.html), so that one appears to be 'fixed at freeze', not 'fixed at release' like you say. Or are there other ISOs? – Fritz Jun 4 '19 at 9:19
  • @Fritz The ISOs and such get added to the historic archive when they are released. The 'in place' updates don't get added until the release gets frozen. – Joseph Wright Jun 4 '19 at 9:25

essentially the binaries only get updated once a year (except for critical updates) but packages and other text files get updated on a rolling basis as they are uploaded to ctan.

  • 1
    Thanks, that answers my first question. But what about the second question about a release being "finished"? I know there are archives at tug.org/historic/systems/texlive, but what do they contain? The packages at some arbitrary point in time? Are they immutable? – Fritz Jun 3 '19 at 13:02
  • 2
    @Fritz they contain the final updates to tl2016 (etc) before they are frozen and the updates start for the following year. Once texlive 2019 is released you can not update texlive 2018 as they don't maintain the live server infrastructure to do tlmgr updates on old releases. – David Carlisle Jun 3 '19 at 13:14

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.