[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-core-devel
Subject: Re: Ksycoca backwards compatibility & freeze
From: David Faure <david () mandrakesoft ! com>
Date: 2000-04-03 21:08:41
[Download RAW message or body]
On Mon, Apr 03, 2000 at 01:33:04PM -0700, Waldo Bastian wrote:
> Hiya,
>
> There will be a (small) problem by the time we get to KDE 3.0 (or any other
> version which is binary incompatible with 2.0) and before that when people
> upgrade KDE versions after 2.0 on a running system.
>
> The problem arises when two different versions of KDE are running which require
> different versions of KSycoca. Currently the version of KSycoca on disk must
> match exactly in version with the one supported by kdelibs.
>
> I would like to change this so that an older version of kdelibs can use a newer
> KSycoca version (on disk). For this to work some (small) changes are needed to
> the way how KSycoca stores some information in the database.
>
> The API will not be changed by this.
>
> Boring Details:
> The function allMimeTypes (and other "all" functions) read mimetypes
> sequentially from the database. This will break if newer versions of the
> database store more information per mimetype, the old kdelibs will then only
> read the old mimetype-info and assume that the extra mimetype info is the start
> of the next mimetype. To solve this problem we need to store a list with
> the starting position of each mimetype. Then newer version can store more
> information per miemtype which will just get ignored by the older version.
Sounds good.
Slows down a little bit the all* methods, but those aren't supposed to
be used too often anyway (in theory only kcmfiletypes - but that's theory).
--
David FAURE, david@mandrakesoft.com, faure@kde.org
http://home.clara.net/faure/
KDE, Making The Future of Computing Available Today
See http://www.kde.org/kde1-and-kde2.html for how to set up KDE 2
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic