[FriBidi] Version 0.19.2 should be considered as new both API and ABI
Artyom
artyomtnk at yahoo.com
Sun Oct 10 03:33:09 PDT 2010
Hello,
I've tried to convert by project BiDiTeX (http://biditex.sourceforge.net/)
to newer version of fribidi, I had issues with missing to_cp1255 from_cp1255
functions,
but I moved to correct public functions.
However I discovered much bigger ABI/API compatibility issue:
FriBiDi 0.10.9
--------------
fribidi_boolean
fribidi_log2vis_get_embedding_levels ( /* input */
FriBidiChar *str,
FriBidiStrIndex len,
FriBidiCharType *pbase_dir,
FriBidiLevel *embedding_level_list);
FriBiDi 0.19.2
---------------
FriBidiLevel
fribidi_log2vis_get_embedding_levels (
const FriBidiCharType *bidi_types, /* input list of bidi types as returned
by
fribidi_get_bidi_types() */
const FriBidiStrIndex len, /* input string length of the paragraph */
FriBidiParType *pbase_dir, /* requested and resolved paragraph
* base direction */
FriBidiLevel *embedding_levels /* output list of embedding levels */
) FRIBIDI_GNUC_DEPRECATED;
Now, 1st receives TEXT as input and outputs the levels, also it reveives
base_dir as
number and not a enum.
The second receives the categories of characters rather then characters
themselves and
base direct is quite different, same for return type.
Actually my program BiDiTeX is totally broken with 0.19.2 and can't be used at
all:
I think that both API and ABI versions should be updated as keeping same ABI/API
version
is just wrong.
Now, users complain that in upstream Ubuntu that comes with new fribidi they
can't use
the biditex, on the other hand they can't install older fribidi because it
conflicts with the new one
(as they have same so-version and can't be installed separately)
Artyom
More information about the fribidi
mailing list