<div dir="ltr"><div><div><div><div><div>Hi Dov, others,<br><br></div>Thanks for writing this, and accepting to take over maintenance back!  As discussed, I've already moved my github tree to the fribidi org that you created:<br><br>  <a href="http://github.com/fribidi/fribidi">http://github.com/fribidi/fribidi</a><br></div><div><br></div><div>I also transferred my fribidi.old repo there:<br><br>  <a href="https://github.com/fribidi/fribidi.old">https://github.com/fribidi/fribidi.old</a><br><br></div><div>I can also move these two:<br><br>  <a href="https://github.com/behdad/pyarabicshaping">https://github.com/behdad/pyarabicshaping</a><br>  <a href="https://github.com/behdad/pybyedie">https://github.com/behdad/pybyedie</a><br><br></div>We can possibly gather Behnam's Python binding in that org as well.<br><br></div>I also want to apologize again for not fully reviewing and releasing your excellent Unicode 6.3..10 work for so long.<br><br></div>Re API, I highly recommend that you DON'T break the API, and DON'T rename the library.  Ie. your second option.<br><br></div><div>Please merge your work and move it to master.<br><br></div><div>The only other thing I like to figure out is Khaled's request to make reorder_runs public somehow, without exposing FriBidiRun (completely).  I'm fairly sure it's possible to expose just the first two members of FriBidiRun. Ie:<br><br>struct _FriBidiRunPublic<br>{ <br>  FriBidiRun *prev; <br>  FriBidiRun *next; <br>};<br><br></div><div>With that, I'm happy to re-expose the reorder_runs API that libraqm needs.  I'm sure glib had a structure or two that worked this way, but cannot find which one.  I can probably do this if you want me to.<br><br></div><div>Cheers, and thanks again.  One fewer library to maintain :-).<br><br></div><div>behdad<br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Nov 6, 2017 at 4:17 PM, Dov Grobgeld <span dir="ltr"><<a href="mailto:dov.grobgeld@gmail.com" target="_blank">dov.grobgeld@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">Hi all,</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">After long discussions with Behdad behind the scenes, he has asked me to take over the maintainer task of fribidi, which I have agreed to do. Let me first of all thank Behdad for bringing fribidi to what it is today! I started the fribidi project back in 1999 as a proof of concept and hoping it would help in proliferating BiDi support in free software. Soon  Behdad took over the maintenance and with his perseverance over the years as a maintainer have helped fulfilling this goal way beyond what I had hoped for. Thanks again!</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">As I have much less experience in GNU software engineering than Behdad, I must rely on the community more than he had to, which is part of the reason for this email.</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">The main task that lies ahead of us is to release fribidi with support for the isolating characters that were introduced into Unicode-6.3.</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">The code is more or less ready for this branch (though possibly not fully optimized) and it resides in:</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><a href="https://github.com/fribidi/fribidi/tree/unicode-10" target="_blank">https://github.com/fribidi/<wbr>fribidi/tree/unicode-10</a></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">But, and this is the problem, that I need advice about. This version breaks binary compatibility with earlier versions. This break of compatibility is due to the bidi algorithm having introduced  dependency of the bracket type of each character, so we have to supply this bracket type as a parameter.<br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">The main options are:<br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><ul><li>Just let the API break, and put some comments in the header files describing to users what needs to be done.<br></li><li>Create new functions, e.g. fribidi_get_par_embedding_<wbr>levels_ex() that receives the new parameter, and let the old fribidi_get_par_embedding_<wbr>levels() function call the new *_ex() function with a null ptr for the bracket type. <br></li><li>Rename this library fribidi10 (10 as in the Unicode version) and let it be a different projects from the previous fribidi. This way nothing is broken in the old api, and whoever wants to use the updated bidi algo is free to use this ne library.<br></li></ul><p>Or do you have any other idea? </p><p>I would also very much appreciate to get feedback and bug reports about this new branch.<br></p><p>Thanks in advance!</p><span class="HOEnZb"><font color="#888888"><p>Dov</p><p><br></p></font></span></div></div>
<br>______________________________<wbr>_________________<br>
fribidi mailing list<br>
<a href="mailto:fribidi@lists.freedesktop.org">fribidi@lists.freedesktop.org</a><br>
<a href="https://lists.freedesktop.org/mailman/listinfo/fribidi" rel="noreferrer" target="_blank">https://lists.freedesktop.org/<wbr>mailman/listinfo/fribidi</a><br>
<br></blockquote></div><br><br clear="all"><br>-- <br><div class="gmail_signature" data-smartmail="gmail_signature">behdad<br><a href="http://behdad.org/" target="_blank">http://behdad.org/</a></div>
</div>