clarify non-recursive upgrades