Roundup Tracker

In the Roundup documentation it says:

What you can't do to the schema
-------------------------------

You must never:

[...]

**Change the type of a property**
  Property types must *never* be changed - the database simply doesn't take
  this kind of action into account. Note that you can't just remove a
  property and re-add it as a new type either. If you wanted to make the
  assignedto property a Multilink, you'd need to create a new property
  assignedto_list and remove the old assignedto property.

This isn't quite true. You can remove the old property and add a new one, but you loose all the data. You would need to extract the issue id and assignedto value. Stop roundup, change the schema deleting the old value. Restart roundup to implement the change. Add the property with the new value then re-add the saved values.

Then you need to update the web interface, detectors (eg replace = with in) etc. due to the new multilink type.

At least this seemed to work on a toy db using sqlite. YMMV.

Also on a larger db, I changed the type from Number to Integer. I exported the original db (tables only) using roundup-admin. Shut down the db. Changed the schema and initialized a new tracker directory. I used sed to truncate the numbers for the property in the csv file. Using roundup-admin imported the csv files. Moved the db/files directory from the old to the new tracker. Restarted roundup. Unlike the multilink case, I didn't have to change any web stuff as the widgets for Number and Integer are the same and comparisons like = still worked.