Record problems into the transaction elements causing them
authorPanu Matilainen <pmatilai@redhat.com>
Fri, 12 Mar 2010 17:41:10 +0000 (19:41 +0200)
committerPanu Matilainen <pmatilai@redhat.com>
Fri, 12 Mar 2010 17:46:06 +0000 (19:46 +0200)
commite696b409fe836bf39cbf639bac4321d658d0952d
treeebfa62f8ecfacd82aaefa0c7aa87cf007c5a23f2
parent1d98830819727c385731ef6fafcaa6f3ba5cf216
Record problems into the transaction elements causing them
- Any problem found in transaction processing is caused, or at least
  triggered by, some transaction element. Having the problems in
  elements lets API users easily determine which package caused which
  problem instead of having to parse problem strings in vain.
- No problem set stored in transaction set itself now, rpmtsProblems() API p
  reserved by making it collect problems from our transaction elements
  into a new set. The problem set fiddling in rpmtsRun() wrt %pretrans
  and all is a bit crazy - always was, now its just more visible...
- Make rpmtsCheck() pass the associated transaction elements into
  the lower level functions. rpmdsProblem() removed from API, it's
  not particularly useful outside rpmtsCheck() internals.
- rpmts struct is now opaque within depends.c except for solve callback
- This breaks --badreloc, need to figure out something saner for the
  problem filtering
lib/depends.c
lib/rpmds.c
lib/rpmds.h
lib/rpmts.c
lib/rpmts_internal.h
lib/transaction.c