Bug 1247335 - silent ABI break in c5145b6816b1a771daa8c0282c34bd303a360f56
Summary: silent ABI break in c5145b6816b1a771daa8c0282c34bd303a360f56
Alias: None
Product: Fedora
Classification: Fedora
Component: hawkey
Version: rawhide
Hardware: Unspecified
OS: Unspecified
Target Milestone: ---
Assignee: Packaging Maintenance Team
QA Contact: Fedora Extras Quality Assurance
Depends On:
TreeView+ depends on / blocked
Reported: 2015-07-27 19:07 UTC by Colin Walters
Modified: 2015-08-11 02:08 UTC (History)
9 users (show)

Fixed In Version: dnf-1.0.2-3.fc22
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2015-08-11 02:08:54 UTC
Type: Bug

Attachments (Terms of Use)

Description Colin Walters 2015-07-27 19:07:41 UTC
https://github.com/rpm-software-management/hawkey/commit/c5145b6816b1a771daa8c0282c34bd303a360f56 is a silent ABI break - new values were added into the middle of an enumeration.

This broke libhif, which in turn broke rpm-ostree, which in turn broke Fedora updates-testing composes.

In the end, it's not a big deal, we'll just rebuild libhif.

However, this cost quite a bit of debugging time from multiple people.

Comment 1 Fedora Update System 2015-07-27 19:23:48 UTC
dnf-1.0.2-2.fc22, hawkey-0.5.9-2.fc22, libhif-0.2.0-6.fc22 has been submitted as an update for Fedora 22.

Comment 2 Radek Holy 2015-07-28 08:38:09 UTC
OMG, I cannot believe that we did it again...

Comment 3 Kalev Lember 2015-07-28 12:20:32 UTC
The enum ABI change seems to affect PackageKit as well, not just libhif. I wonder if it would make sense to fix the ABI break in hawkey instead of rebuilding all the consumers?

PackageKit links directly to hawkey as well as using it through libhif and uses the affected enum where the ABI changed.

Avoiding the ABI changes seems a bit safer since it allows using newer hawkey together with older consumers -- a broken dep or whatever could possibly result in a partial system upgrade where a consumer is kept back and only hawkey is updated.

Comment 4 Richard Hughes 2015-07-28 12:48:58 UTC
(In reply to Radek Holy from comment #2)
> OMG, I cannot believe that we did it again...

I thought I was supposed to be given the heads up on new librepo + hawkey releases? There was no "We're about to release..." or release announcement on rpm-ecosystem@lists.rpm.org and I had no idea about the new release until Kalev pointed me at this bug.

Comment 6 Honza Silhan 2015-07-30 12:57:02 UTC
Sorry for that break and thanks for fixing it.

(In reply to Richard Hughes from comment #4)
> I thought I was supposed to be given the heads up on new librepo + hawkey
> releases? There was no "We're about to release..." or release announcement
> on rpm-ecosystem@lists.rpm.or yum devel.

Next time we will announce it. We do the new release of hawkey usually with the new release of DNF (announced on fedora-devel and yum-devel). Or you can add yourself to watchers for hawkey [1].

[1] https://admin.fedoraproject.org/pkgdb/package/hawkey/

Comment 7 Fedora Update System 2015-08-01 02:28:51 UTC
Package dnf-1.0.2-3.fc22, hawkey-0.5.9-3.fc22:
* should fix your issue,
* was pushed to the Fedora 22 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing dnf-1.0.2-3.fc22 hawkey-0.5.9-3.fc22'
as soon as you are able to.
Please go to the following url:
then log in and leave karma (feedback).

Comment 8 Fedora Update System 2015-08-11 02:08:54 UTC
dnf-1.0.2-3.fc22, hawkey-0.5.9-3.fc22 has been pushed to the Fedora 22 stable repository.  If problems still persist, please make note of it in this bug report.

Note You need to log in before you can comment on or make changes to this bug.