abstraction: roll forward/back
[?]
Apr 9, 2023, 5:24 PM
GXE3ESLGGSXI45XXDOBZLAPT6DR2J7Q7LBMSHHYVOPHK3WAALZPQCDependencies
- [2]
BSDXVB3Hbackport some doc updates and renames - [3]
MDYWFJWQbugfix: roll back on load error - [4]
LRDM35CEapp running again - [5]
QFURHRTPrename globals to have a single uppercase letter - [6]
CYEH4AXBa prefix for metadata in the manifest
Change contents
- replacement in live.lua at line 231
Live.manifest[PARENT] = Live.headlocal manifest_filename = live.versioned_manifest(Live.next_version)love.filesystem.write(manifest_filename, json.encode(Live.manifest))Live.head = Live.next_versionlove.filesystem.write('head', tostring(Live.head))Live.next_version = Live.next_version + 1live.roll_forward() - replacement in live.lua at line 263
Live.manifest[PARENT] = Live.headlocal manifest_filename = live.versioned_manifest(Live.next_version)love.filesystem.write(manifest_filename, json.encode(Live.manifest))Live.head = Live.next_versionlove.filesystem.write('head', tostring(Live.head))Live.next_version = Live.next_version + 1live.roll_forward() - replacement in live.lua at line 266[4.7741]→[4.7741:7760](∅→∅),[4.7760]→[4.485:525](∅→∅),[4.525]→[3.8:65](∅→∅),[3.65]→[4.1649:1809](∅→∅),[4.525]→[4.1649:1809](∅→∅),[4.1649]→[4.1649:1809](∅→∅)
-- roll backLive.head = Live.manifest[PARENT]love.filesystem.write('head', tostring(Live.head))local previous_manifest_filename = live.versioned_manifest(Live.head)Live.manifest = json.decode(love.filesystem.read(previous_manifest_filename))live.roll_back() - edit in live.lua at line 278
-- update Live.Head and record the new Live.Manifest (which caller has already modified)function live.roll_forward()Live.manifest[PARENT] = Live.headlocal manifest_filename = live.versioned_manifest(Live.next_version)love.filesystem.write(manifest_filename, json.encode(Live.manifest))Live.head = Live.next_versionlove.filesystem.write('head', tostring(Live.head))Live.next_version = Live.next_version + 1end-- update app.Head and reload app.Manifest appropriatelyfunction live.roll_back()Live.head = Live.manifest[PARENT]love.filesystem.write('head', tostring(Live.head))local previous_manifest_filename = live.versioned_manifest(Live.head)Live.manifest = json.decode(love.filesystem.read(previous_manifest_filename))end