Upgrading a product
Ran into an interesting thought yesterday which I have not seen addressed in this discussion list. Let's say that I create a Zope product and create a distribution for it calling it version 1.0. All is well and good, this product becomes successful and it is in use across hundreds of Zope based web servers. Six months go by and through the assistance of my Open Source friends and my own coders, we have a brand new awesome version which we are calling version 2.0. This new version is installed and when a Zope server is restarted; all is well. Let's say the product allows you to create a container (product folder) which stores all of the primary methods and controls customized to your particular installation. In the container are the objects of interest with their own sets of properties. Here is the question. Our new version has new methods, properties and controls for the container and new objects for the container now have new properties to them. So that users of this product do not need to start from scratch, how would the old (version1) objects get upgraded to match new objects created under our new version 2 of the product? I can think of a few methods that all seem very ugly to me. I was hoping that someone has thought through this and may have some suggestions. Thanks a bunch.
participants (1)
-
rgines@purina.com