texjporg / platex

pLaTeX community edition
BSD 3-Clause "New" or "Revised" License
49 stars 8 forks source link

パッケージやクラスの互換性 #70

Open aminophen opened 6 years ago

aminophen commented 6 years ago

ltnews28.tex に書かれているように,LaTeX2e 2018-04-01 では

A general rollback concept for packages and classes

なるものが導入されています。カーネルの「互換性のための巻き戻し」が従来から latexrelease で提供されていましたが,これをパッケージやクラスにも適用するための新機能です。

pLaTeX の場合,platexrelease がカーネルの互換性を担っていますが,パッケージやクラスについては出来ていません。この機能が有用なのであれば,pLaTeX にも同様の機能を実装すべきなのでしょうか。

個人的には労力に見合うとはあまり思えないので,要求があるまでは実装しないつもりでいます。

munepi commented 6 years ago

個人的には労力に見合うとはあまり思えないので,要求があるまでは実装しないつもりでいます。

+1 労力に見合うと思えないです。

過去に製作したLaTeX文章の同一出力を得るためには、過去に利用したTeX Live環境そのものを固定して、保守運用すべきであると思います。

もし出力に影響するようなバイナリ側の変更があったら、latexreleaseのroallbackで、完全な同一出力を得られると思えないので、やはりこのrollbackは限定的に使う、過信すべきでないと考えます。

zr-tex8r commented 6 years ago

詳細はこれですね。

どうやら、ここで述べられている「クラス・パッケージのロールバックの仕組」は、「仕様[要定義]の非互換を伴う改版」に限定したもので、「挙動/出力が全く変わらない」レベルの互換性を想定したものでないようです。少なくともplatexのプロジェクトではそういう「大きな非互換」は発生しないのではないでしょうか。

aminophen commented 6 years ago

現時点で,LaTeX 本家の「クラス・パッケージのロールバックの仕組」に則っているのは,

があるのだと思っています。(ソースは裏情報。)まだ自分はその真偽や,中身について確認できていませんが,pLaTeX がそういう機能を必要とするかどうかはそれらを見て判断したほうが良いのでしょうね。

kmaed commented 6 years ago

doc.sty についてはわかりませんが,multicol.sty については multicol-2017-04-11.sty というファイルが存在しますね.\usepackage{multicol}[=2017-04-11] とするとこちらが読み込まれるようです.