On 2016-03-28, Georg Baum wrote:
> Guenter Milde wrote:
>> On 2016-03-25, Richard Heck wrote:
>>> On 03/25/2016 02:34 AM, Scott Kostyshak wrote:

>>>> In the example (#10027), the new layout name would be aastex6.layout
>>>> and the new template name would be aastex6.lyx.

>> 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. 

>> a) There is no reason to provide a template for an obsoleted document
>> class.

>> b) Updating the existing template will not break any existing documents.

> Agreed to a) and b).

>> 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."



>>>> Once we have a new template, the old template (but not layout file)
>>>> should be removed in master, but not in branch.

>> If the old *.cls file is clearly stated as obsoleted, we should update the
>> template also in branch:

> Yes, if we decide that a new layout file is not a file format change we 
> should do that. If a new layout file is a file format change then we can't 
> do that.

>>>> 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...)

Günter

Reply via email to