Bug 1418805

Summary: zeromq not conforming to EPEL ABI compatibility changing library so version
Product: [Fedora] Fedora EPEL Reporter: Steven Seed <Steven.Seed>
Component: zeromqAssignee: Denis Arnaud <denis.arnaud_fedora>
Status: NEW --- QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: epel7CC: andrewniemants, denis.arnaud_fedora, tomspur
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 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:

Description Steven Seed 2017-02-02 18:41:30 UTC
Description of problem:

Currently, zeromq is compiled such that the libzmq library version is 5 but previously was version 4 in epel7. This is causing dynamic linking issues for code compiled against version 4. According to the EPEL policies within a given major release or RHEL, the packages should maintain ABI compatibility otherwise a compat lib should be provided. 

https://fedoraproject.org/wiki/EPEL/GuidelinesAndPolicies#A_little_bit_bigger_minor_version_updates


Version-Release number of selected component (if applicable):
zeromq-4.1.4-5.el7.x86_64

How reproducible:
Always

Steps to Reproduce:

See the SONAME for older version 4 packages in epel7 like zeromq-4.0.5-4.el7.x86_64 :

$ objdump -p /usr/lib64/libzmq.so.4 | grep SONAME
  SONAME               libzmq.so.4

And from the latest package zeromq-4.1.4-5.el7.x86_64:

$ objdump -p /usr/lib64/libzmq.so.5 | grep SONAME
  SONAME               libzmq.so.5

Both of these packages are minor versions of zeromq 4 so it doesn't make sense to bump the libzmq.so to version 5 unless there were ABI changes.

Actual results:

error: Failed dependencies:
	libzmq.so.4()(64bit) is needed by (installed) lts-libs-3.3.0-1.wdas.el7.x86_64

Expected results:
The library should continue to be the same version libzmq.so.4 as prior zeromq releases unless there are incompatibilities in which case a compat-zeromq package should be released.

Additional info:

Comment 1 Denis Arnaud 2019-01-13 15:49:56 UTC
Dear Sven, do you still have an issue?

You are fully right, the SONAME bump should not have occurred during the lifetime of the package on EPEL. Nevertheless, it is too late now... then, you are right again, a compatibility package should be provided. But that consumes time (do not hesitate to contribute!), and I guess that the official maintainers of the ZeroMQ don't have much time these days to dedicate to such tasks.

A new version has been released (https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2019-cea8576f94), as there was another SONAME bump on libsodium, breaking some packages on EPEL 7 linking to both libsodium and zeromq (https://bugzilla.redhat.com/show_bug.cgi?id=1665630). With the new 4.1.4-6 release of the zeromq package, libsodium and zeromq are now aligned on EPEL 7, and the few packages depending on ZeroMQ will have to be rebuilt nevertheless.