Commit Graph

4 Commits

Author SHA1 Message Date
Ivan Zakharyaschev
ee2e436b00 Merge branch 'predisttag-fixes' into _BUILD/alt
# Conflicts:
#	rpm-4_0.spec
2019-02-26 22:17:43 +03:00
Ivan Zakharyaschev
e9f11c0720 rpmEVRcmp(A,B) made asymmetric wrt underspecified release
(Analoguous to the change in rpm-4.13-alt6
cfa573f99fbabf7610cec1fb0ee1993f9640b090,
made with help of Vladimir D. Seleznev <vseleznv@altlinux.org>.)

Unchanged (wanted) behavior: On the side of Requires (B), a missing
("underspecified") release means that the relative order of A and B
(result of comparison) is determined only by the speicified components
(epoch, version):

  such B is equal to any A with an equal epoch and version (and any release);
  such B is greater than A if B's epoch-version is greater than A's;
  etc.

A similar treatment of an underspecified release on the side of
Provides (A) was unwanted and it has been changed now:

  a B with a non-empty release can't be equal to such A (with a
  missing release);
  namely, a B with a non-empty release is greater than an A with equal
  epoch-version and no release.

Example of a satisfied dependency (worked before and works now):

  Provides: N = V-R
  Requires: N = V

Example of an unsatisfied dependency (previously, this satisfied the Requires):

  Provides: N = V
  Requires: N = V-R

We don't want this Requires to be satisfied in this case.
2019-02-26 22:02:56 +03:00
9618b8946f Introduce parseEVRD()
It's similar to parseEVR() but also returns disttag.
2019-01-10 23:20:03 +00:00
acf2f5d6ac relocated rpmvercmp.c from lib to rpmdb 2005-10-15 14:44:31 +00:00