2 + - jbj: add a relation to to force install-before-erase.
3 + - jbj: display dependency loops as an error for now.
4 - glen: do not skip %clean from spec file
5 - robert: install rpmdeps and debugedit to pkglibdir as on HEAD
6 - jbj: fix: python ts.hdrFromFdno(fdno) segfault.
7 --- rpm-4.5/lib/depends.c~ 2008/10/26 18:29:50 1.327.2.10
8 +++ rpm-4.5/lib/depends.c 2008-10-27 14:42:52.984295775 +0200
12 /* Avoid certain dependency relations. */
13 - if (teType == TR_ADDED && ignoreDep(ts, p, q))
14 + if (ignoreDep(ts, p, q))
17 /* Avoid redundant relations. */
18 @@ -2191,6 +2191,25 @@
23 + /* Ensure that erasures follow installs during upgrades. */
24 + if (rpmteType(p) == TR_REMOVED && p->flink.Pkgid && p->flink.Pkgid[0]) {
26 + qi = rpmtsiInit(ts);
27 + while ((q = rpmtsiNext(qi, TR_ADDED)) != NULL) {
28 + if (strcmp(q->pkgid, p->flink.Pkgid[0]))
30 + requires = rpmdsFromPRCO(q->PRCO, RPMTAG_NAME);
31 + if (requires != NULL) {
32 + /* XXX disable erased arrow reversal. */
34 + (void) addRelation(ts, p, selected, requires);
35 + p->type = TR_REMOVED;
38 + qi = rpmtsiFree(qi);
41 if (_autobits != 0xffffffff)
47 int msglvl = (anaconda || (rpmtsDFlags(ts) & RPMDEPS_FLAG_DEPLOOPS))
48 - ? RPMMESS_WARNING : RPMMESS_DEBUG;
49 + ? RPMMESS_WARNING : RPMMESS_ERROR;
52 /* Unchain predecessor loop. */