On Sat, May 14, 2011 at 4:05 PM, Amit Kulkarni <[email protected]> wrote: >> Delete all packages, reinstall them. This happens when firefox and >> gtk are built on separate days. The pkg system does a good job >> tracking version numbers, but the contents of a pkg can depend in >> subtle ways on what else is installed and that's not reflected in the >> version number. > > Contents? They are the same packing lists, right? > > Are you actually talking of subtle .so dependencies and updates being > performed separately in inter-dependent packages?
Today libpng has version X, gtk version Y, and firefox version Z. You install these packages. In one week, libpng is updated to version X+1 and firefox is updated to version Z+1. You update. The gtk version has not changed, it will not be upgraded. Now firefox is linked to png X+1 and X (via gtk). Hilarity ensues. A newly built gtk will be linked against png X+1 and will work correctly. Determining which package needs rebuilding is really hard. It's much easier to install a complete matched set.

