[Qgis-developer] Project file backward compatibility

Radim Blazek radim.blazek at gmail.com
Mon Apr 16 12:30:01 EDT 2012


On Mon, Apr 16, 2012 at 3:04 PM, Marco Hugentobler
<marco.hugentobler at sourcepole.ch> wrote:
> Maybe I'll try to access the project file conversion methods from the qml loading methods.

This is another question, where should be isolated the conversion
code? I would prefer to keep it in one place, OTOH it may be often
related to providers so it should go to providers. BTW, there are
providers specific blocks of code in QgsRasterLayer and even in
QgsMapLayer  read/writeXml methods.

> Afaik there is no official policy yet (can be added to the coding standards
> document if there are no objections).

I have started http://hub.qgis.org/wiki/quantum-gis/Backward_Compatibility

On Mon, Apr 16, 2012 at 3:08 PM, Paolo Cavallini <cavallini at faunalia.it> wrote:
>>> PF written by a lower major release must be supported? Example:  QGIS
>>> 2.0 must support 1.7 PF?
>> Is not required but would be nice.
> I think every version should be able to open projects from at least the
> previous one, otherwise users will have to recreate all their projects.

I wrote to the doc, that it must support previous major version, but
that is probably too much. OTOH, previous minor version is not enough
IMO. What compromise would be the best and how to specify it, by a
number of minor releases or by a maximum period between releases?

Is it required that a development version (from master) understands
projects written by older version of the same major.minor? Probably
yes, because many people are using devel versions. The problem is,
that in that case, it would not be possible to use the version written
in a project to decide if it has already new format (the version is
for example 1.9.90-Alpha) and guessing the format from a string value
may be complicated.

Should we use a separate versions for project files? It would be also
possible to add version attribute directly to XML tags if necessary,
because in readXml() methods we don't have access to project file
version.

Radim


More information about the Qgis-developer mailing list