Matthew Dawkins wrote:

>> I recently updated my snapshot of 5.2 to build around a perl upgrade to 
>> 5.12.2, but I didn't expect any problems really.
>> Well pkgs that have requires like the following:
>> Provides:   libpq = %{version}-%{release}
>> 
>> now also have this half distepoch after it :2011.1
>> 
>> made with a newer rpm5.2 snapshot
>> rpm -qp --provides lib64pq8.4_5-8.4.5-3-
>> unity2011.0.x86_64.rpm 
>> postgresql-libs = 8.4.5-3
>> libpq = 8.4.5-3
>> lib64pq8.4_5-virtual = 8.4
>> libpq.so.5()(64bit)
>> lib64pq8.4_5 = 8.4.5-3:2011.0
>> 
>> made with the older rpm5.2 snapshot
>> rpm -qp --provides lib64pq8.4_5-8.4.4-3-unity2010.x86_64.rpm 
>> postgresql-libs = 8.4.4-3
>> libpq = 8.4.4-3
>> lib64pq8.4_5-virtual = 8.4
>> libpq.so.5()(64bit)
>> lib64pq8.4_5 = 8.4.4-3

This output looks different from what is initially described...
i.e. the "Provides:   libpq = %{version}-%{release}" are the same,
or at least not having a distepoch appended to the version-release
The difference is instead the implicit provides ("lib64pq8.4_5")

> Unity != Mandriva
> 
> The problem for Unity was that smart doesn't support it, nor does createrepo 
> (i'm guessing)

Originally there was one problem with rpm version display (in smart),
which expanded into one markup issue with createrepo (and thus yum):

The rpm versions were showing up without the "-%{disttag}%{distepoch}".
Adding that (where present) to the RPM Loader, made the packages not
match the ones in the Metadata Loader - and each would show up twice.
Thus a createrepo patch was made to add <rpm:disttag>/<rpm:distepoch>.

For the issue above, smart would also need to append a ":%{distepoch}"
suffix to the version of the NameProvides created for each package.
There was also a (minor) issue about distepochs not being properly
split from version, so that they would end up in R rather than in D.

I don't think either issue is tracked at https://launchpad.net/smart
But all code is done, possibly lacking some on/off opt-out config...


Don't really see any rpm issues here, other than adding more ways
to "have it your own way" and I still don't know what the distepoch
is useful for since I'm not using it myself (wrong vendor/packages).
So problems are similar to the other ones with suggests/recommends.

Or well I know what %{?dist} and %mkrel are being used for, and how
Distepoch cleans up the Release field. I just don't know how useful
it is to be able to compare package versions between OS releases ?
Or if any gain outweighs the loss of the incompatibility introduced.

--anders


______________________________________________________________________
RPM Package Manager                                    http://rpm5.org
Developer Communication List                        rpm-devel@rpm5.org

Reply via email to