When I did the upgrade in DBM::Deep 0.9 to 1.x, the file format needed to be broken severely. I made it very clear in the documentation what was up. I also provided detection for old file formats and an upgrader (that mostly works). Beyond that, there's not much you can do without changing namespaces (like Apache -> Apache2).
in reply to Releasing a module with breaking changes
My criteria for good software:
- Does it work?
- Can someone else come in, make a change, and be reasonably certain no bugs were introduced?