[Fedora-packaging] Update guidelines with packages from CVS

Michael Schwendt bugs.michael at gmx.net
Mon May 16 10:03:29 UTC 2005

On Sun, 15 May 2005 20:40:11 -0500, Tom 'spot' Callaway wrote:

> On Mon, 2005-05-16 at 02:32 +0200, Michael Schwendt wrote:
> >   foo-1.0-1.fc3.i386.rpm (stable release)
> >   foo-1.0-2.20050514cvs.fc4.i386.rpm (post-release snapshot)
> These two packages will never compare, unless you're doing a dist
> upgrade. But I'll assume you meant .fc3 for both rpms.

No, I didn't mean .fc3 for both rpms.

> > If the .fc4 cvs snapshot doesn't need an update, you get the same
> > problems. Dist tags don't help in that case either. They only help for
> > updates applied to multiple distribution versions at once.
> > 
> > Whenever you bump %release only on an older branch, you increase the
> > likelihood that you violate the distribution upgrade path.
> Then you have to bump it on both. We have to enforce that n-v-r of the
> previous current branch must be less than the current branch, if we want
> to be able to do upgrades. This is true with or without disttags.

No, it isn't. Surely you can avoid the necessity to bump release
for all branches.

> > This can also happen if you have use an older cvs snapshot for FC3
> > and a recent one for FC4,
> > 
> >   foo-0.0-1.20040903cvs.fc3.i386.rpm
> >   foo-0.0-1.20050514cvs.fc4.i386.rpm
> Well, no. In this case, the fc4 package is newer according to rpm. No
> conflict in each branch, no conflict on dist upgrade. The conflict only
> arises when you bump the FC-3 branch release, without bumping the FC-4
> branch.

No. Read the rest of that example, the part that starts with "and ...".
With your plan I would bump the .fc4 package just for fun? That can't
be true.

> > and if you need to fix a security bug in the old snapshot and you
> > can't upgrade to latest cvs co because build requirements are insufficient,
> > you run into %release conflicts again:
> > 
> > * foo-0.0-2.20040903cvs.fc3.i386.rpm
> >   foo-0.0-1.20050514cvs.fc4.i386.rpm
> Again, this problem is avoided if both branches are incremented
> together.

Why? My example explains it. If there is no need to update the .fc4
package, why bump it? In this case, it's clearly more convenient to
extend the first number in %release from integer to real number.

> Lets put the CVS case aside for a minute and try to figure out how to do
> this for the "normal" case first.

The CVS case--and the general case of a src.rpm which applies a set of
patches, regardless of whether from CVS--is an important one. It leads to
cases, where you may need to bump release only for one branch, because the
other branches don't need an update. To assume that every bug-fix update
is released for all distribution branches, is a false assumption. There
are competing and conflicting versioning schemes.

More information about the Fedora-packaging mailing list