Bug 229297
Summary: | libnet seems to contain files that belong in libnet-devel | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Dave Jones <davej> |
Component: | libnet | Assignee: | Patrice Dumas <pertusus> |
Status: | CLOSED RAWHIDE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | 6 | CC: | pfrields |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | 1.0.2a-12 | Doc Type: | Bug Fix |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2007-03-20 22:01:32 UTC | Type: | --- |
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: | 213321 |
Description
Dave Jones
2007-02-20 00:20:13 UTC
Indeed, libnet-devel and libnet10 conflicts. This is already reported here: https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=180952 there is also some discussion in the libnet review that may be relevant: https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=165963 A first remark is that although both packages conflict, libnet-devel obsoletes libnet10. That's because of that obsoletion that there I didn't add an explicit Conflict:. When installing libnet, however, yum installs libnet10 because it is the shortest name, even though libnet-devel Provides a newer version of libnet. Anyway, I consider the conflict to be unfortunate, but useful, because there are codes on the net still using the libnet10 api (at least that was the case when I checked some time ago). With libnet10 devel files installed at the usual places a package may be built against libnet10 easily. Another related remark is that libnet 1.1.* seems dead upstream. There is something on alioth but it doesn't seem to be more active. The 1.1.3 discussed in the fedora submission was never released. As of today no established fork seems to be there. I'd be happy to have a better solution that remove the conflict and still allows to use libnet10 easily. My current view is that having libnet10 files installed at the regular place balances the cost of having a conflict, given that libnet-devel obsoletes libnet10. > libnet-devel obsoletes libnet10 It doesn't. The only mechanism that is in place is that libnet10 "Provides:" an old version of libnet and libnet-devel, so for ordinary yum/rpm updates, libnet10 is replaced by the newer libnet/libnet-devel package. $ rpm -qa 'libnet*' $ sudo rpm -i libnet10-1.0.2a-11.fc6.i386.rpm $ sudo rpm -U libnet-devel-1.1.2.1-9.fc6.i386.rpm $ rpm -qa 'libnet*' libnet-devel-1.1.2.1-9.fc6 See bug 111071 comment 3 for the background. Yum does its own thing, though, when choosing a package with the shortest name, which "Provides: libnet-devel = ..." to satisfy a request for "libnet-devel". And during yum update, it does not perform an upgrade to the newer libnet-devel. Conclusively, fixing this once and for all would be best: - removing the file conflicts - removing the virtual Provides in libnet10 (In reply to comment #2) > > libnet-devel obsoletes libnet10 > > It doesn't. Indeed. In fact I mistakenly believed libnet10 was updated by libnet-devel. But it is wrong and the current situation is much worse than what I though. I have verified the following (on devel): * When libnet10 is installed: yum update yum update libnet yum update libnet-devel yum install libnet Don't do anything, while yum install libnet installs libnet-devel and remove libnet10. * When nothing is installed, yum install libnet installs libnet10 yum install libnet-devel installs libnet-devel The current situation is completly broken. * I propose removing the Provides: libnet and Provides: libnet-devel in libnet10. * Add a Provides libnet10-devel to libnete10, * Add an explicit Conflict: libnet10 in libnet-devel. I would like to remove also, from libnet10: Obsoletes: libnet < 1.1.0 Obsoletes: libnet-devel < 1.1.0 Does this seems good? I will think about removing the Conflict later. Michael, do you approve what I propose in Comment #3? I'm going to do what I proposed, and I'll also rename libnet10 files, libnet.a -> libnet-1.0.a, put libnet.h and libnet/ in a libnet-1.0 directory and rename libnet-config -> libnet-config-1.0. libnet and libnet-devel Obsoletes and Provides dropped. Provides: libnet10-devel = %{version}-%{release} added. Patched to be parallel installable with libnet-devel. Currently building for devel. |