2014-07-12 08:09:36 +00:00
|
|
|
created: 20140711090154150
|
2016-05-03 02:28:06 +00:00
|
|
|
modified: 20160606122804180
|
2014-09-11 19:12:25 +00:00
|
|
|
tags: Mechanisms
|
2016-05-03 02:28:06 +00:00
|
|
|
title: UpgradeMechanism
|
2014-07-12 08:09:36 +00:00
|
|
|
|
|
|
|
# Open upgrade.html
|
|
|
|
# Includes a data tiddler called `$:/UpgradeLibrary` that contains the latest compatible versions of all plugins in the library
|
|
|
|
# Drag in old wiki file
|
|
|
|
# Place tiddlers into a data tiddler `$:/Import` that is typed as a "pending import"
|
|
|
|
# Kick off import processing for each tiddler
|
|
|
|
## Give each "upgrader" module a chance to inspect the incoming tiddlers
|
|
|
|
## Upgrader modules can trigger actions for each tiddler:
|
|
|
|
##* Display a warning message
|
|
|
|
##* Don't import
|
|
|
|
##* Replace with another tiddler from the upgrade library
|
|
|
|
##* Disable incompatible plugins
|
|
|
|
# Display the newly created pending import tiddler through a new view template segment
|
|
|
|
## Displays the payload tiddlers as a list of titles and checkboxes, with a dropdown showing the full details of the tiddler
|
|
|
|
## Perhaps we also suppress the usual JSON display for data tiddlers behind a reveal widget
|
|
|
|
# The user can adjust the selection checkboxes
|
2016-05-03 02:28:06 +00:00
|
|
|
# Clicking "Upgrade" unpacks the selected tiddlers from the pending import tiddler
|
2014-07-14 16:58:50 +00:00
|
|
|
# The pending import tiddler and the upgrade library tiddler are excluded from the subsequent save operation
|