TeX Live はなぜ毎年のアップデートを「必要とする」のでしょうか?

TeX Live はなぜ毎年のアップデートを「必要とする」のでしょうか?

TeX Liveは毎年新しいバージョンを提供しています。私の記憶では、新しいバージョンがリリースされるとすぐに、古いバージョンはtlmgrパッケージの更新を取得しなくなります。アップグレード手順免責事項

この手順は絶対確実ではなく、特に推奨されるものではありません

Windowsにはアップグレードパスがありません。リリース履歴、リリース間で実際に何が変更され、完全な新規インストールが必要/推奨されるのかは私にはわかりません。私はいつも、TeX Liveは便利なバイナリ(、、、など)と、更新の便利な方法を提供するものだと思っていpdflatexましbibermakeindexCTANパッケージ。何が足りないのでしょうか? TeX Live はなぜ毎年新しくインストールする必要があるのでしょうか?

答え1

さて、tlmgr と TeX Live インフラストラクチャ全体のメイン開発者としての答えは次のとおりです。次の 2 つの点を決定する必要があります。

  • 新バージョンリリース前の凍結期間
  • リリースごとにアップグレード可能

前者の凍結期間について:通常、年間を通じてない実際のバイナリの更新はスクリプトとパッケージのみに行われます。つまり、新しいリリースの準備としてすべてのバイナリを再コンパイルする必要があり、これは膨大な作業であり、多くの時間と反復を要します。バグは修正され、すべてのプラットフォーム(多数あります!)でビルドできるようにコードが調整されます。この間に、ないライブラリ ファイルの更新を伴う必要がある場合があるため、一部のバイナリを部分的にアップグレードしたい。

もう 1 つのポイントは、フリーズ期間中に texlive インフラストラクチャと tlmgr に重要な新機能が追加されることがあり、通常どおりに世界にリリースするには危険すぎるということです。

そして最終的にはDVDにプレスできる状態にすることも目的です。

さて、リリース間のアップグレード性についてですが、最初の数年間は内部の変更があまり行われなかったため、許可するアップグレード(オプションの内部コーディングのフォーマットなど)。これは最初の数年(2008~2010年)に最もよく見られた理由です。通常のアップグレードでは、些細なことに可能です。もちろん、アップグレード スクリプトを書いて Windows 用の NSIS インストーラーを作成することもできますが、私たちにはその時間がありません。私たちはボランティアであり、重要なことに集中する必要があります。

過去数年間 (2010 年以降) はアップグレード手順が常にありましたが、通常は十分なテストを行っていませんでした。そのため、アップグレードはお勧めしません。現在ではディスク容量が十分にあり、2 つのインストールを並行して行うことはそれほど面倒ではありません。しかし、それでもアップグレードする方法は常にありました。

残念ながら、Windows では、アンインストーラーやレジストリなどがリリース年にリンクされているため、これはそれほど簡単ではありません。Windows では単純に面倒ですが、これは特殊なケースです。

最後に、もう1つの理由:昨年の多くのケースでは、アップデートや新規インストールによってダウンロードデータの量に大きな変化はなかった。全てパッケージは何らかの方法で更新されました (内部変更による)。つまり、アップグレードにはインストールと同様にすべてのパッケージのダウンロードが必要になります。

これらすべてによって私たちの意図が少し明確になったことを願っています。不明な点がある場合、または対処方法についてより良いアイデアをお持ちの方がいらっしゃいましたら、ぜひご提案ください。

答え2

TeX Live について特に語ることはできませんが、私は Linux ディストリビューションの初期から関わっており、そこでの私の観察は TeX Live にも当てはまると考えています (どちらも、選択、統合、および連携してうまく動作するように説得する必要がある、異なる部分の集合であり、各部分は独自のペースで進化します)。

理想的な世界では、このようなソフトウェア コレクションは永久に維持されますが、これは現実的ではありません。新しいパッケージが登場し、古いパッケージは全面的に見直され、一部のパッケージは新しい方法で作業を完了します。たとえば、TL-2011 を維持するということは、アップストリームがパッケージを放棄した (または、ドロップイン リプレースメントではなくなるほど大幅に変更した) 場合でも、「古い方法」で作業を続けることを意味します。つまり、バックポートと古いバグの修正が無限に続くということです。そのためのボランティアは、生粋のマゾヒストにしか見つかりません。

TeX Liveのメンテナンスには、かなり難解な分野に精通した人材が必要であり、とても供給不足。2011 を永久に維持するか (2012、2013 などはなし)、最新バージョンの構築と出荷に集中するかのどちらかです。さらに、新しくて輝かしいものに取り組むのは常に楽しいので、そこに新しい人材を引き付ける可能性が高くなります。

おそらく、2 つのバージョンを適度に最新の状態に保つには十分ですが、そうではないと思います (人材が不足しているため、毎年のアップグレードが必須であると判断したためです)。

答え3

@vonbrand の優れた回答に加えて、Tex Live を毎年アップグレードして「フリーズ」する重要な理由の 1 つは、主にさまざまなユーザー グループのメンバーの利益のためだけでなく、インターネットに簡単にアクセスできない Tex ユーザーのためにも、物理メディアに安定したスナップショットを提供することです。

この DVD (CD には収まりきらない) は、特にドイツでは、(LA)TEX 関連の書籍と一緒に物理的にパッケージ化されています。この (商用) パッケージ化が、制限的な (フリーではない) ライセンスを持つものをコレクションから除外しなければならない理由です。

答え4

@vonbrand と @barbara beeton の回答にさらに情報を追加します。

もう一つの理由は、インフラを変えることです。少し前にtlmgr (主に) Windows ユーザー向けにグラフィカル インターフェイスを備えた管理ツールが導入されました。また、パッケージ形式が LZO から XZ に変更されました (TL2008 から TL2009 だったと思います)。インフラストラクチャ全体が変更されたため、新しいインストールを要求しないと、これは不可能でした。

しかし、それでも、新しいフルインストールなしで、例えばTL2011からTL2012にアップデートすることは可能です。ただし、注意してください。ない開発者によってサポートされており、ない推奨! 機能するケースもあれば、機能しないケースもあります。

TeX Live のメーリング リストでこの話題が何度か取り上げられたので、Arch Linux や Gentoo のようなローリング リリース スキームのようなものが実現することを期待しています。

関連情報