Simpler workflow for upgrading?

74 views
Skip to first unread message

Mat

unread,
Apr 20, 2017, 5:48:58 AM4/20/17
to TiddlyWikiDev
My question here is if we already have the components/mechanisms that would allow any of the following ideas for a simpler upgrading workflow by omitting the current need to download stuff for upgrades:

1) Could upgrading be done via the plugin library, i.e upgrade the $:/core plugin just like any other plugin? (BTW, does an upgrade contain more than the core?)

2) Could upgrading be done by drag'n dropping whatever-is-needed from the tiddlywiki.com site into my browser tab where my TW resides? Again, as is done with other plugins.

3) Could upgrading be done by drag'n dropping a link seen in ones own TW? I.e in my TW, there's a [ext[http://tiddlywiki.com/upgrade.html]] that I grab and drop on some area a few centimeters away, still in my own TW.

Again, might we already have mechanisms that would enable any of these?

Thank you.

<:-)


Jeremy Ruston

unread,
Apr 20, 2017, 9:57:47 AM4/20/17
to TiddlyWikiDev
Hi Mat

My question here is if we already have the components/mechanisms that would allow any of the following ideas for a simpler upgrading workflow by omitting the current need to download stuff for upgrades:

These are good questions; don’t be too discouraged by the answers :)

1) Could upgrading be done via the plugin library, i.e upgrade the $:/core plugin just like any other plugin? (BTW, does an upgrade contain more than the core?)

OK, so the process would be to pull in the new core plugin, and then save changes. The trouble is that at that point the new core isn’t active, and so the templates used for saving would be the templates from the old core.

A perhaps hidden design goal of the current upgrade process is that it can upgrade broken TiddlyWikis because it only relies on being able to import tiddlers from the old file. This means that if we ever released a core version that was broken we would still be able to upgrade it. It also means that one can use the upgrade tool to upgrade TiddlyWiki Classic files (not that that is particularly useful yet).

2) Could upgrading be done by drag'n dropping whatever-is-needed from the tiddlywiki.com site into my browser tab where my TW resides? Again, as is done with other plugins.

The trouble here is that it relies on the operational status of the old TiddlyWiki file, and would be using the components of the old file for the save operation. At the very least that would require an additional save-and-reload cycle to fully complete the upgrade.

3) Could upgrading be done by drag'n dropping a link seen in ones own TW? I.e in my TW, there's a [ext[http://tiddlywiki.com/upgrade.html]] that I grab and drop on some area a few centimeters away, still in my own TW.

No, because of the same point.

Again, might we already have mechanisms that would enable any of these?

Another idea is that TiddlyFox could handle upgrading seamlessly.

Best wishes

Jeremy.



Thank you.

<:-)



--
You received this message because you are subscribed to the Google Groups "TiddlyWikiDev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to tiddlywikide...@googlegroups.com.
To post to this group, send email to tiddly...@googlegroups.com.
Visit this group at https://groups.google.com/group/tiddlywikidev.
To view this discussion on the web visit https://groups.google.com/d/msgid/tiddlywikidev/eeb31e99-5380-4314-8417-e4522a07fb9b%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Mat

unread,
Apr 20, 2017, 12:55:29 PM4/20/17
to TiddlyWikiDev
Thanks for reply Jeremy!
1) Could upgrading be done via the plugin library, i.e upgrade the $:/core plugin just like any other plugin?

OK, so the process would be to pull in the new core plugin, and then save changes. The trouble is that at that point the new core isn’t active, and so the templates used for saving would be the templates from the old core.


It would be superior to be able to upgrade like this so how about this idea:

Importing the core could also import an extra set of the saving templates, i.e not shadow tids! These can be imported without reload and will immediately overwrite the current saving template shadow tids and they will have effect right away (...right?).

These loose tempaltes can even be used for other stuff such as a presentation of the release notes with an "OK, got it" button at the bottom that deletes the extra tiddlers, making the core shadow saving templates kick in again. (Or maybe the custom refresh button that one should click after importing a plugin can be made to delete those temporary saving tids as some last step?)


A perhaps hidden design goal of the current upgrade process is that it can upgrade broken TiddlyWikis because it only relies on being able to import tiddlers from the old file. This means that if we ever released a core version that was broken we would still be able to upgrade it.

Good but/and it would serve as a useful repair tool when someone has messed up the core (which is pretty rare, no?).
And this also feels like something that is better if accessed viea ones own TW. I just did a quick test. I put this in a TW (on tiddlyspot)

<iframe src="http://tiddlywiki.com/upgrade.html" width="100%" height="600px"></iframe>

It works to drag'n drop a tiddler onto this iframe, at least in FF (not chrome). I figure that if one needs to repair ones TW, and if the problems are not preventing it, one could drag all content tiddlers (via one link, like the new drag'n drop pills) onto this.  When repairing, it does seem justified to have it download but it would be neat if the various saving options were presented there too.

...

Anyway, the more important issue is the first one about being able to upgrad like importing any other plugin. This would probably also make people more aware of plugins and plugin library matters. I've found that I barely ever go to the plugin library and therefore don't think much about how it could be improved.


<:-)

Jeremy Ruston

unread,
Apr 20, 2017, 1:10:00 PM4/20/17
to TiddlyWikiDev
Hi Mat

It would be superior to be able to upgrade like this so how about this idea:

Importing the core could also import an extra set of the saving templates, i.e not shadow tids! These can be imported without reload and will immediately overwrite the current saving template shadow tids and they will have effect right away (...right?).

It’s not just templates, but also JS modules; the saving would be under the control of the old JS files, and there’s no way for us to update them before the save operation.

Good but/and it would serve as a useful repair tool when someone has messed up the core (which is pretty rare, no?).

It’s not just about users messing the core up, but also about the developers messing up; we need to be able to recover from publishing a faulty version of TiddlyWiki. You may respond that we could have a separate upgrade process that we direct users to when such a failure occurs, but then I’d need to maintain two different upgrade processes.

And this also feels like something that is better if accessed viea ones own TW. I just did a quick test. I put this in a TW (on tiddlyspot)


<iframe src="http://tiddlywiki.com/upgrade.html" width="100%" height="600px"></iframe>

It works to drag'n drop a tiddler onto this iframe, at least in FF (not chrome). I figure that if one needs to repair ones TW, and if the problems are not preventing it, one could drag all content tiddlers (via one link, like the new drag'n drop pills) onto this.  When repairing, it does seem justified to have it download but it would be neat if the various saving options were presented there too.

We could go further, and use some of the techniques from the plugin library: host the upgrade page in a hidden iframe within the TiddlyWiki, and use window.postMessage to send it the tiddlers for the upgrade, and then send another message to tell it to save itself. But we’re back where we started, with the reliability of the upgrade depending on the integrity of the wiki being upgraded.

Anyway, the more important issue is the first one about being able to upgrad like importing any other plugin. This would probably also make people more aware of plugins and plugin library matters. I've found that I barely ever go to the plugin library and therefore don't think much about how it could be improved.

Upgrading is not exactly like importing any other plugin, that’s the point :)

A similar argument can be made that the current upgrade process encourages people to discover and think about the way that wikis can be imported into other wikis...

Best wishes

Jeremy




<:-)

--
You received this message because you are subscribed to the Google Groups "TiddlyWikiDev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to tiddlywikide...@googlegroups.com.
To post to this group, send email to tiddly...@googlegroups.com.
Visit this group at https://groups.google.com/group/tiddlywikidev.

Mat

unread,
Apr 20, 2017, 7:00:06 PM4/20/17
to TiddlyWikiDev
Jeremy,


It would be superior to be able to upgrade like this so how about this idea:

Importing the core could also import an extra set of the saving templates, i.e not shadow tids! These can be imported without reload and will immediately overwrite the current saving template shadow tids and they will have effect right away (...right?).

It’s not just templates, but also JS modules; the saving would be under the control of the old JS files, and there’s no way for us to update them before the save operation.

Could those old JS modules fetch parameter arguments from the imported parts and only use their own old internal arguments as fallback?

<:-)
Reply all
Reply to author
Forward
0 new messages