[Pulp-dev] Issue with how rel-eng built the libsolv dependency for el7

Patrick Creech pcreech at redhat.com
Thu Oct 25 13:00:18 UTC 2018


I wish I didn't have to write this, but we are where we are
unfortunately.

Back when we hit the 'need a new libsolv' issue, we ran into a little
problem with how libsolv's python bindings were generated between
fedora and el7.  This boiled down to differences in how swig2 and swig3
generated the bindings (swig2 for el7, swig3 for fedora), and it
provided different method signatures for the two platforms.

A younger, less wiser me decided to build swig3, and build a libsolv
against that for el7.  While this worked for pulp's use case at the
time, it turns out that the decision was not a correct one.  To
compound the matter, I didn't pay enough respect to how libsolv is
versioned, and how they use the release portion of the package, meaning
the package in pulp now has a high chance of superceeding the packages
in the el7 repos for quite some time.

What this means for Pulp:

I will be downgrading libsolv-0.6.34-4 to a different libsolv based on
0.6.34-3 for 2.17.2, utilizing a version scheme that will be properly
superceeded by an el7 0.6.34-3 if/when it arrives.  

This version to downgrade to will be provided when 2.17.2 is ready for
the release process.

There will also be a code solution in place to handle the method
signature issue.

As a result of all this, I have re-opened 
https://pulp.plan.io/issues/3876 and 
https://github.com/pulp/pulp_rpm/pull/1150 

For anyone on pulp 2.17.0 or 2.17.1, an additional upgrade step will be
needed, explicitly downgrading the libsolv package from our incorrect
version, to the new version we provide.

I apologize in advance for any difficulties or frustrations this may
cause people using pulp.  This one is on me.

Thanks,
Patrick




More information about the Pulp-dev mailing list