[libvoikko] Schedule for libvoikko 3.0 + applications
Harri Pitkänen
hatapitk at iki.fi
Mon Feb 8 20:20:44 EET 2010
Libvoikko 3.0 will be released by the end of June this year. It could be
released earlier but not later unless something really unexpected happens.
The reason for this fixed schedule is that a major limitation in our current
design (only one open dictionary at a time) is starting to become a real
problem now that people have started to use Voikko in more exotic applications
that just OOo, Firefox and Thunderbird. Removing this limitation is going to
be the most important goal of our next release.
Fixing this requires changes to our API. Now that we are changing the API (for
the first time after version 0.4 which was released almost four years ago) a
few other issues will be fixed as well. At least hyphenator will be changed,
maybe grammar checker too.
I intend to make the changes in such way that existing symbol names will not
be reused for something different. This will allow the library to remain
compatible with the old API and ABI. You should be able to replace older
libraries with libvoikko 3.0 without breaking anything or recompiling the
applications. Additionally there will be no changes to our dictionary format
in this release. Ideally the transition plan to libvoikko 3.0 could look
something like this for the Linux distributors:
- Upload libvoikko 3.0 as soon as it is released. No additional conflicts or
package name changes are needed.
- Upload new versions of mozvoikko, openoffice.org-voikko, tmispell and
Enchant when they are released. If the versions use the new APIs from
libvoikko 3.0 they should depend on the appropriate version of the library,
nothing else needs to be changed.
- In some future version of libvoikko (maybe 3.1 but it could be later,
perhaps never?) the compatibility APIs will be removed. At that point you need
to rename the binary packages and -dev packages and change the depending
packages to build against the new version. Since the depending packages were
already changed to use the new APIs you do not need to modify the actual
source, just rebuild.
In practice there will be a few changes to the behaviour of the old API in
libvoikko 3.0:
- Option VOIKKO_INTERSECT_COMPOUND_LEVEL will no longer have any effect. We
discussed this in December and nobody supported maintaining this option
anymore. I still do not know of any application that needs it. Programs using
this option can be built and run but they will behave as if the option was not
set.
- Option VOIKKO_OPT_ENCODING will no longer have any effect. This option has
been deprecated since libvoikko 2.0 and the documentation has never specified
what the allowed values for the option are (they were platform dependent). It
would have technically been correct to always reject other values than the
default (UTF-8). As far as I know, our test programs "voikkospell" and
"voikkohyphenate" were the only applications that ever used this option with
non-default values.
The new API should have some support for languages other than Finnish. This
support will be experimental so that we can avoid introducing new dictionary
format version in this release. Depending on when the issues with HFST will be
resolved we will release with an actual implementation for some language
(maybe English) or just the API.
Harri
More information about the Libvoikko
mailing list