Bug 848805

Summary: e2fsprogs RPM doesn't track shared library dependency requirements
Product: [Fedora] Fedora Reporter: Brian J. Murrell <brian>
Component: e2fsprogsAssignee: Eric Sandeen <esandeen>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 17CC: bugs.michael, esandeen, josef, kzak, oliver
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-12-20 15:49:04 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:

Description Brian J. Murrell 2012-08-16 12:50:01 UTC
Description of problem:

The packaging of e2fsprogs is not tracking updated dependency requirements in it's required shared libraries.  Let's use libcom_err and the update that occurred between 1.41 and 1.42 as an example.

In e2fsprogs commit 4259052093da329907e255b11bf3e799872828c7 set_com_err_gettext() was added to libcom_err.  The tools in the 1.42 release of e2fsprogs now require this symbol.  However since there is no "Requires: libcom_err >= 1.42" in the FC17 e2fsprogs if one were to simply use rpm -U to upgrade from e2fsprogs-1.41.14-2.fc15.x86_64.rpm (which is in FC16, despite the fc15 tag in it's name) to e2fsprogs-1.42-4.fc17.x86_64.rpm one would get the new e2fsprogs, and e2fsprogs-libs but would not get the newly required libcomm_err and would end up with tools from e2fsck that would fail as they can't find a set_com_err_gettext().

Comment 1 Eric Sandeen 2012-08-16 16:42:33 UTC
Ok, I'll add the explicit depends to keep all subpackages together.  I can't do anything about Gnome3 though ;)

Comment 2 Eric Sandeen 2012-08-16 16:46:54 UTC
I'll add libss as well.  So now e2fsprogs will require:

Requires: e2fsprogs-libs = %{version}-%{release}
Requires: libcom_err = %{version}-%{release}
Requires: libss = %{version}-%{release}

which would keep it all in lockstep.

Sound right to you?

Comment 3 Brian J. Murrell 2012-08-16 16:50:16 UTC
(In reply to comment #1)
> Ok, I'll add the explicit depends to keep all subpackages together.

Cool!

What's interesting is that this seems to be done already for EL6, looking at some recent spec files for it.

> I can't
> do anything about Gnome3 though ;)

I'm not sure anyone can at this point.  :-(  I suppose with enough time and effort nothing is impossible though.

Comment 4 Brian J. Murrell 2012-08-16 16:52:14 UTC
(In reply to comment #2)
> I'll add libss as well.  So now e2fsprogs will require:
> 
> Requires: e2fsprogs-libs = %{version}-%{release}
> Requires: libcom_err = %{version}-%{release}
> Requires: libss = %{version}-%{release}
> 
> which would keep it all in lockstep.
> 
> Sound right to you?

It does, yes.  And moreso, it does what EL6 seems to be doing now/already.

Comment 5 Eric Sandeen 2012-08-16 16:56:30 UTC
Hm, so it does.  Shame on me for not changing Fedora at the same time.

Comment 6 Fedora Update System 2012-08-17 16:23:12 UTC
e2fsprogs-1.42.3-3.fc17 has been submitted as an update for Fedora 17.
https://admin.fedoraproject.org/updates/e2fsprogs-1.42.3-3.fc17

Comment 7 Fedora Update System 2012-08-18 01:27:04 UTC
Package e2fsprogs-1.42.3-3.fc17:
* should fix your issue,
* was pushed to the Fedora 17 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing e2fsprogs-1.42.3-3.fc17'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2012-12134/e2fsprogs-1.42.3-3.fc17
then log in and leave karma (feedback).

Comment 8 Michael Schwendt 2012-09-08 21:24:02 UTC
If you do this, why not use %?_isa, too?
https://fedoraproject.org/wiki/Packaging:Guidelines#Requiring_Base_Package

Comment 9 Fedora Update System 2012-12-20 15:49:06 UTC
e2fsprogs-1.42.3-3.fc17 has been pushed to the Fedora 17 stable repository.  If problems still persist, please make note of it in this bug report.