RPM Package Manager, CVS Repository
http://rpm5.org/cvs/
____________________________________________________________________________
Server: rpm5.org Name: Jeff Johnson
Root: /v/rpm/cvs Email: jbj@rpm5.org
Module: rpm Date: 26-Jan-2008 23:23:01
Branch: HEAD Handle: 2008012622230001
Modified files:
rpm CHANGES TODO
rpm/lib depends.c
Log:
- jbj: generailize to verify(*) => -Va and verify(/path) => -Vf /path.
Summary:
Revision Changes Path
1.2102 +1 -0 rpm/CHANGES
1.123 +2 -0 rpm/TODO
1.380 +7 -1 rpm/lib/depends.c
____________________________________________________________________________
patch -p0 <<'@@ .'
Index: rpm/CHANGES
============================================================================
$ cvs diff -u -r1.2101 -r1.2102 CHANGES
--- rpm/CHANGES 26 Jan 2008 21:19:48 -0000 1.2101
+++ rpm/CHANGES 26 Jan 2008 22:23:00 -0000 1.2102
@@ -1,4 +1,5 @@
5.0.0 -> 5.1a1:
+ - jbj: generailize to verify(*) => -Va and verify(/path) => -Vf /path.
- jbj: fix: no output performing verify(...) probe.
- jbj: fix: insure valid exit code for verify(...) probe.
- jbj: add verify(N) = E:V-R runtime dependency probe. more to do ...
@@ .
patch -p0 <<'@@ .'
Index: rpm/TODO
============================================================================
$ cvs diff -u -r1.122 -r1.123 TODO
--- rpm/TODO 24 Jan 2008 20:29:44 -0000 1.122
+++ rpm/TODO 26 Jan 2008 22:23:00 -0000 1.123
@@ -140,6 +140,8 @@
pull changelogs from a URL, with a default of
file:///usr/share/doc/N-V/Changelog
Use YAML for extra credit.
+ - jbj: verify(...) probe likely needs to supply _SOME_ information for
+ failure cases, at least with -vv.
@@ .
patch -p0 <<'@@ .'
Index: rpm/lib/depends.c
============================================================================
$ cvs diff -u -r1.379 -r1.380 depends.c
--- rpm/lib/depends.c 26 Jan 2008 21:19:48 -0000 1.379
+++ rpm/lib/depends.c 26 Jan 2008 22:23:01 -0000 1.380
@@ -852,8 +852,14 @@
qva->qva_flags = VERIFY_ALL & ~(VERIFY_DEPS|VERIFY_SCRIPT);
rc = 0; /* assume success */
if (rpmtsGetRdb(ts) != NULL) {
- mi = rpmtsInitIterator(ts, RPMTAG_PROVIDENAME, Name, 0);
+ if (Name[0] == '*') /* -Va probe */
+ mi = rpmtsInitIterator(ts, RPMDBI_PACKAGES, NULL, 0);
+ else if (Name[0] == '/') /* -Vf probe */
+ mi = rpmtsInitIterator(ts, RPMTAG_BASENAMES, Name, 0);
+ else /* -V probe */
+ mi = rpmtsInitIterator(ts, RPMTAG_PROVIDENAME, Name, 0);
while ((h = rpmdbNextIterator(mi)) != NULL) {
+ if (!(Name[0] == '/' || Name[0] == '*'))
if (!rpmdsAnyMatchesDep(h, dep, _rpmds_nopromote))
continue;
xx = (showVerifyPackage(qva, ts, h) ? 1 : 0);
@@ .
Received on Sat Jan 26 23:23:01 2008