Guenter Milde wrote: > On 2016-03-28, Georg Baum wrote: >> Guenter Milde wrote: >>> On 2016-03-25, Richard Heck wrote: > >>> As the package name on CTAN is still "aastex" >>> (http://www.ctan.org/pkg/aastex), the template could also keep the >>> package name (but call the new document class file). > >> I don't think we should look at the package name, since this does not >> work for packagews containing more than one class (e.g. >> http://www.ctan.org/pkg/koma-script). > > I tend to be more pragmatic here: the aastex package contains just one > document class: this used to be aastex.cls, now it is aastex6.cls. > IMO: > * the layout file for aastex6.cls *must* be aastex6.layout > * the template file (replacing the old templates/aastex.lyx) may be > called either aastex6.lyx or aastex.lyx. > >>> c) Users with the obsolete documentclass will realise that they need to >>> update before trying to commit their article to the paper. > >> How? There is no connection to the template anymore once the document is >> created. > > OK, I have to clarify the limitations: "if we update the template to use > the new document class version, >>> c) Users with the obsolete documentclass will realise that they need to >>> update before trying to commit their article to the paper. > > But if we keep the old template, these users will not realize > that they need to update the document class."
I assumed that we update the template, but I still don't understand how an updated template will remind a user that he needs to change the document class of existing documents. Where is the connection between the document the user created from the old template, and the updated template? >>>>> 3b. The .cls file has been updated but uses the same name. >>> ... >>>>> 3bii. It is not just that new styles have been added. > >>>>> Suppose that there is a class file with the same name and with two >>>>> incompatible versions, say foo.cls v1 and foo.cls v2. Suppose that LyX >>>>> supported v1 with a layout called foo.layout. In master we should add >>>>> support for v2, calling it foo.layout but still support the old one by >>>>> copying the old foo.layout file to foo1.layout. The file >>>>> templates/foo.lyx in master should be updated to use the new layout >>>>> (foo.layout). > >>> This becomes simpler, if we use the new name for the new layout: > >>> +1 no need for a file format change >>> +1 no need for lyx2lyx code >>> +1 users of stable/branch can manually install the new layout >>> -1 the "generic" layout name points to an obsolete version. > >>> A common naming of the layout files in branch and master simplifies >>> both, implementation and understanding of the scheme. This is IMO more >>> important than having the "short and generic" name for the current >>> layout. > >> I disagree. IMO, it is more important to have a consistency between >> current .layout and current .cls file. This does also reduce possible >> future namespace conflicts. The needed lyx2lyx changes are trivial, and >> could even be implemented in a generic helper function. > > However, the changes would require a file format change. > (Not a problem, if a new layout requires a file format change anyway but I > prefer it not to...) Yes, a file format change is needed, but this is not a problem even if we decide that new layouts do not require it anyway: The proposal was to rename the layout in master only, and in master a file format change is no problem, since the implementation in lyx2lyx would be trivial. Georg