Bug 1574858

Summary: Please update fribidi to 1.0.2 in Fedora 28 and rawhide
Product: [Fedora] Fedora Reporter: Peng Wu <pwu>
Component: fribidiAssignee: Caolan McNamara <caolanm>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 28CC: alexl, caolanm, egmont, john.j5live, mbarnes, mclasen, michel, ppisar, rhughes, rstrode, sandmann
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: fribidi-1.0.2-1.fc28 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-05-15 20:05:13 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1574861    

Description Peng Wu 2018-05-04 08:01:50 UTC
Please update fribidi to 1.0.2 in Fedora 28 and rawhide,
as we want to test the feature from fribidi and pango earlier.

URL: https://github.com/fribidi/fribidi/releases

Comment 1 Fedora Update System 2018-05-04 09:03:12 UTC
fribidi-1.0.2-1.fc28 has been submitted as an update to Fedora 28. https://bodhi.fedoraproject.org/updates/FEDORA-2018-ad70cebb51

Comment 2 Fedora Update System 2018-05-06 10:07:25 UTC
fribidi-1.0.2-1.fc28 has been pushed to the Fedora 28 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2018-ad70cebb51

Comment 3 Fedora Update System 2018-05-06 11:14:46 UTC
fribidi-1.0.2-1.fc28 pango-1.42.1-2.fc28 has been submitted as an update to Fedora 28. https://bodhi.fedoraproject.org/updates/FEDORA-2018-ad70cebb51

Comment 4 Peng Wu 2018-05-07 07:14:14 UTC
Thanks!

Comment 5 Fedora Update System 2018-05-07 10:47:03 UTC
fribidi-1.0.2-1.fc28, pango-1.42.1-2.fc28 has been pushed to the Fedora 28 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2018-ad70cebb51

Comment 6 Fedora Update System 2018-05-15 20:05:13 UTC
fribidi-1.0.2-1.fc28, pango-1.42.1-2.fc28 has been pushed to the Fedora 28 stable repository. If problems still persist, please make note of it in this bug report.

Comment 7 Petr Pisar 2018-06-05 10:21:45 UTC
You are blatantly breaking API in Fedora 28:

Overview of changes between 0.19.7 and 1.0
=============================================

* Full isolate and parenthesis support as per Unicode 6.3 to Unicode 10.0 .
* To get access to the new algorithm calls to the function
  `fribidi_get_par_embedding_levels()` must be replaced with calls to
  `fribidi_get_par_embedding_levels_ex()`. These function are not API
  compatible. Calling the older function will use default values for
  the new bracket properties and will sometimes yield non-complient
  results.

Comment 8 Egmont Koblinger 2018-08-22 22:18:38 UTC
(In reply to Petr Pisar from comment #7)
> You are blatantly breaking API in Fedora 28:

I don't think this is true.

> * To get access to the new algorithm calls to the function
>   `fribidi_get_par_embedding_levels()` must be replaced with calls to
>   `fribidi_get_par_embedding_levels_ex()`.

That is, if you're a software developer and want to access the new functionality (new features of Unicode 6.3), you need the new API.

> These function are not API compatible.

Read: The new function has a different API than the old one.

The old one is still available with the same signature.

https://github.com/fribidi/fribidi/releases says:

"Because of changes to the algorithm, the previous API have been deprecated in favor of a new API that introduces another couple of parameters. But the old API has been retained, and will return the same results as before these algorithmic changes."

Comment 9 Petr Pisar 2018-08-23 06:24:54 UTC
If it where compatible, it would not break existing code <https://rt.cpan.org/Public/Bug/Display.html?id=124618>.

Comment 10 Egmont Koblinger 2018-08-23 07:37:47 UTC
Well, I'm developing BiDi code right now using fribidi_get_par_embedding_levels(), and it works fine both with 0.19.7 and 1.0.5.

You're saying over here that it's "blatantly breaking API", quoting below its changelog stating it did not break it. In the CPAN bug you say "Text-Bidi tests fail [...] The reason is that fribidi-1.0 deprecated fribidi_get_par_embedding_levels()" as if the word "deprecate" meant "remove".

I understand that there's a problem with the large ecosystem, perhaps the Perl binding not scanning through all the header files or intentionally skipping the functions annotated as deprecated, but it's not fribidi itself to blame.

Comment 11 Peng Wu 2018-08-23 10:11:14 UTC
Please consider to include "fribidi-deprecated.h" in the perl code.

I think the fribidi_get_par_embedding_levels function has been moved to the fribidi-deprecated.h header file.