diff options
author | W. Trevor King <wking@drexel.edu> | 2009-08-31 13:19:45 -0400 |
---|---|---|
committer | W. Trevor King <wking@drexel.edu> | 2009-08-31 13:19:45 -0400 |
commit | 8cfbfcdb25fd2663a23adb4f2f6730240bd0da25 (patch) | |
tree | 2314c0cb2f302f43f9c21e101b872f524bd798eb /.be/bugs/51930348-9ccc-4165-af41-6c7450de050e/comments/d304f93b-faf2-477e-9ff8-c77e301fd9f9/body | |
parent | 4fc659e20f80e49674aec8110c70138db38e18c4 (diff) | |
parent | 61445df504c4267c774d572521a63136c595f007 (diff) | |
download | bugseverywhere-8cfbfcdb25fd2663a23adb4f2f6730240bd0da25.tar.gz |
Merged be.on-disk-upgrade, which added libbe.upgrade
Diffstat (limited to '.be/bugs/51930348-9ccc-4165-af41-6c7450de050e/comments/d304f93b-faf2-477e-9ff8-c77e301fd9f9/body')
-rw-r--r-- | .be/bugs/51930348-9ccc-4165-af41-6c7450de050e/comments/d304f93b-faf2-477e-9ff8-c77e301fd9f9/body | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/.be/bugs/51930348-9ccc-4165-af41-6c7450de050e/comments/d304f93b-faf2-477e-9ff8-c77e301fd9f9/body b/.be/bugs/51930348-9ccc-4165-af41-6c7450de050e/comments/d304f93b-faf2-477e-9ff8-c77e301fd9f9/body new file mode 100644 index 0000000..34d37e5 --- /dev/null +++ b/.be/bugs/51930348-9ccc-4165-af41-6c7450de050e/comments/d304f93b-faf2-477e-9ff8-c77e301fd9f9/body @@ -0,0 +1,30 @@ +Added libbe/upgrade.py to handle upgrading on-disk bugdirs. + +When upgrade.BUGDIR_DISK_VERSION changes, a series of Updater +classes handle the upgrade. For example, if + BUGDIR_DISK_VERSIONS = ["v1", "v2", "v3"] +and the on-disk version is "v1", you should have defined classes + class Upgrade_1_to_2 (Upgrader): + initial_version = "v1" + final_version = "v2" + def _upgrade(): + .... + class Upgrade_2_to_3 (Upgrader): + initial_version = "v2" + final_version = "v3" + def _upgrade(): + .... +and added them to upgraders: + upgraders = [Upgrade_1_to_2, Upgrade_2_to_3] +If the on-disk version is v2, then only Upgrade_2_to_3.upgrade() is +run. If the on-disk version is v1, then Upgrade_1_to_2.upgrade() is +run, followed by Upgrade_2_to_3.upgrade(). + +You can optionally define shortcut upgrades (e.g. Upgrade_1_to_3) for +efficiency or to avoid data loss. + +This upgrade occurs during BugDir.load(), which is called by +BugDir.__init__(from_disk=True), before any processing of the on-disk +data except for the access of .be/version to determine if an upgrade +was necessary. + |