support in-place upgrades