After fiddling around with rpmbuild for quite a while, I stumbled upon yum-builddep. It’s basically a tool to install all packages required to rebuild an RPM package from the SRPM. So if you want to install all “BuildRequires” mentioned in the spec file of a package, invoke
yum-builddep <package name>
The source RPM for the specified package must be available in the yum repository or it can be a local source RPM file.
yum-builddep itself it part of the yum-utils package. You can install it with yum
yum install yum-utils
q.v. yum-builddep manpage
Sometimes, rpm dependencies get rather complex. It’s not always easy for an rpm maintainer to keep track of the runtime requirements of his package and therefore, huge rpm dependency trees develop. And it’s even more difficult so see which packages get pulled by yum, because only a tiny part of those are actually listed as requirements in the spec file. The tree gets huge with recursion!
With rpmdep, there’s a small tool that will help you visualize those dependency trees. It’s part of Fedora’s rpmorphan-package, so you can easily pull it with yum:
# yum install rpmorphan
rpmdep itself is just a perl script, that walks down the rpm tree recursively. It can produce a Graphviz dot-file, which in turn can be used to make rather since pictures. For example,
$ rpmdep -dot firefox.dot firefox
$ dot -Tpng firefox.dot -o firefox.png
produces a complete rpm dependency tree for firefox. An exemplary picture (firefox’s dependencies in Fedora 13):

Click image for full size (1.6MB)
Graphvic can produce quite a few output formats. For an overview about all available commands, have a look at http://www.graphviz.org/doc/info/command.html.
When an upgrade includes changes to a default configuration file, the package will write either a .rpmnew or a .rpmsave file instead of overwriting the configuration file on your system. Which file a package creates is up to the discretion of the package maintainer.
From “Dealing with .rpmnew and .rpmsave files” By Bruce Byfield:
An .rpmnew file contains the new default configuration file and leaves your original configuration file untouched. By contrast, and .rpmsave file is a copy of your original configuration file, which has been replaced by the new default file.
The following script can be helpful to find (and possibly merge) those files with your original configuration
for a in $(find /etc /var -name '*.rpm?*'); do diff -u $a ${a%.rpm?*}; done
You may also want to check on yum-merge-conf, a yum plugin to merge configuration files.