Replies: 5 comments 8 replies
|
(@Telumire is my alias) A few points to consider: to make my plugin work, I had to monkey-patch $tw.wiki.renderTiddler to intercept the native saving mechanism and replace the HTML output with the upgraded wiki, and monkey-patch $tw.notifier.display to intercept save operations and detect success or failure. To make this part of the core, this would likely require:
Because this plugin relies on browser-native APIs (DOMParser, fetch, Blob, URL.createObjectURL), if integrated into the core, it would need to be strictly specified as a browser-only module and clearly disabled or hidden when running in a Node.js server environment. I have a lot of free time right now so I'm open to the idea to work on a proposal, but only if the upgrade process itself is deemed safe enough by the maintainers. I consider myself as a junior level dev so I would need some guidance if this where to be integrated to the core. I've made a repo with some tests for the plugin here: https://github.com/DesignThinkerer/inplace-upgrade |
|
I highly appreciate the effort that was made to create the inplace-upgrade plugin. But I think it should stay a plugin.
For the core there are different priorities.
I do not really see, how the plugin makes the upgrade process simpler than:
And you are done. |
What exactly is "quirky" with the current upgrade process? |
|
It is really pleasing to see innovation in this area. I have only had time for a quick glance at the proposed implementation, but it appears there are two limitations with this approach:
The alternative that has previously been proposed that would not have these shortcomings, is an upgrade button that opens upgrade.html in a fullscreen iframe or even an iframe in a new window, pass it the wiki content as a JSON payload triggering an import and the existing import UI, and then allow the user to save it over the existing wiki. See #9155. |
|
@DesignThinkerer @twMat ... TiddlyHost and Git-* hosted wikis are a strong argument. I agree. @saqimtiaz ...
@twMat About iDevices. Users trade convenience with "walled gardens, a moat with water and crocodiles" ;) For TW we have no story about "module signing". If you visit https://tiddlywiki.com/upgrade.html you can be relatively confident, that it is genuine. This already changes with the core "Get more plugins" button. While it loads the plugin library inside an iframe from tiddlywiki.com ... Users can not see where those plugins come from. If we can solve this problem in reasonable way, I think an inline-upgrade button is doable. Edit: There are elements in our build and publish process that are overdue to be improved. Especially the possibility for users to see, where their plugins came from. Ideally in a "signed" way. Which in this case will not increase security, but visibility. Which still is a win for me. |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
So @Telumire created a plugin for in-wiki core plugin upgrades. It works well AFAICT.
Could TW feature in-wiki upgrading natively (not necessarily Telumires implementatino), or are there good reasons, that outweigh the benefits, for why users should continue with the current quirky updating procedure?
All reactions