On Tue, Jun 08, 2021 at 03:31:07PM -0500, Greg Hellings wrote:
Quick question about the Epoch tag in a spec file: I goofed during
F34's rawhide series and packaged an RC of my package with the wrong
version name (1.9.0RC3-1 instead of 1.9.0-0.1) which causes it to
sort higher in ordering than the final 1.9.0-5. From what I can
gather, the proper resolution for this is to add an Epoch tag to the
SRPM file and build 1:1.9.0-5. However, adding the epoch tag seems
to have no effect. When I try to build, I'm told version 1.9.0-5 is
already built for Rawhide/Fedora 34.
Is there a way to claw back the improperly versioned 1.9.0RC3
package from ages ago? Is there some magic to enable the Epoch tag
that I'm missing? How do I get 1.9.0 final package out into Fedora?
While you might have no choice, I'd caution that there a few traps
with using Epoch, not just with Koji. One particular trap is that
subpackage dependencies like:
%package devel
...
Requires: %{name}%{?_isa} = %{version}-%{release}
will break because the dependency should be:
Requires: %{name}%{?_isa} = %{epoch}:%{version}-%{release}
More insidious is that things like:
Obsoletes: oldpackage < %{version}-%{release}
will silently do the wrong thing.
If you had the choice of moving to upstream 1.9.1, I'd do that instead.
Rich.
--
Richard Jones, Virtualization Group, Red Hat
http://people.redhat.com/~rjones
Read my programming and virtualization blog:
http://rwmj.wordpress.com
virt-builder quickly builds VMs from scratch
http://libguestfs.org/virt-builder.1.html