[Dev] Storing schema version in repository

Morgen Sagen morgen at osafoundation.org
Fri Mar 18 11:55:45 PST 2005


In order to avoid mismatches between Chandler code and repository data 
I've added a simple 'schema version' string (defined at the top of 
Application.py) which is checked against the value stored in the 
'version' attribute of //parcels.  If there is a mismatch a dialog will 
be displayed.  This is just a temporary fix until we handle schema 
migration.  Since we haven't had this version string in place before, 
the very first time you run with this new check in place you will get 
the dialog box even if your repository is actually in sync with your 
code.  From then on, however, the version checking should work as 
expected.

So whenever you modify the content model in an incompatible*** way, you 
should increment SCHEMA_VERSION at the top of Application.py.

~morgen

*** "incompatible" needs to be better defined/tested, but assume that 
adding a new Kind is a compatible change while modifying a Kind (as in 
adding/removing attributes) is incompatible.



More information about the Dev mailing list