On Mon, Oct 26, 2015 at 09:16:03PM +0100, Georg Baum wrote:
> Uwe Stöhr wrote:
> 
> > Am 26.10.2015 um 06:31 schrieb Scott Kostyshak:
> > 
> >>> I think it is safe enough to support 2 years old features and would
> >>> therefore like to put it in.
> >>
> >> Do we have any policy on this? What have we done in the past?
> > 
> > No strict one, but the feature should be at least in the current and
> > previous TeXLive as far as I remember.
> > This is be the case here.
> 
> If everybody agrees with this policy then we should document it. I would 
> also add that we can be less strict if the only change is an added style, 
> but the layout file would still work with older versions of the package if 
> the style is not used. Then users who do not have the latest versions can 
> simply stick to the styles supported by the old version, but if the syntax 
> of an existing stely or some preamble code changes then the new layout file 
> would always require the new package.

It seems there are a few different ideas. Let me see if I can summarize
them:

1. A layout change can be made if it is supported by the current release
of TeX Live and the previous release. This rule can be less strict if
the only change is an added style (so that compilation will not be
broken for older documents). Should we further define "less strict" by
saying that in this case the layout change can be made if it is
supported by the current release of TeX Live ?

2. Pavel's idea that for key dependencies such as Qt or TeX we should
look where stable/future versions on major linux distros are. e.g.
stable debian. Another possibility is to look at the current Ubuntu LTS.
If we implement this, we should be specific (e.g. say explicitly Debian
Stable and Ubuntu LTS)

3. Richard's idea to rename the layout file:
  "It might be worth renaming the old layout to moderncv-14.layout or
  something, in case people don't have the new version."

  I don't myself see a reason, when we're dealing with class files like
  this one, not to index ALL the layout files to specific versions of
  the class file. So we'd have moderncv-14, moderncv-15, etc. The
  difficulty is that if we just update moderncv.layout, then people
  whose files used to compile just fine now don't compile at all,
  because LyX expects some version they don't have.  If we at least have
  these various versions, then people can switch between them as need
  be. We don't do it for them, which will be wrong in some cases.

It seems we could combine all 3 in some way. For example, we could
enforce both (1) and (2) (whichever is more binding). Then, instead of
just updating the file we create versions, thus implementing (3). In
other words, I think that even if we go with (3) there is still a
necessity to do (1) and/or (2) because we do not want the .lyx file of
users to suddenly not compile (even if all they need to do is to swich
the class).

Scott

Reply via email to