I've been wanting to make it easier to inform end users of my plugins (well 
really just Streams) that there are updates available via an opt-in 
mechanism for those that would like such a feature. I realized that for 
plugins installed via a plugin library, the core actually already does the 
work and can provide this information, there are just no affordances for it 
unless one goes and specifically checks.

It turns out that it is embarrassingly easy to set up visual notifications 
for updates from a plugin library. Here is a demo of a quick 20 minute hack:

https://drive.google.com/file/d/1vIj4BsA5OAhS6eFcKXn0LfJii88E3b6h/view?usp=sharing

Caveats:
1. The major caveat is that the above demo re-uses core UI for plugin 
updates which is geared towards working with one plugin library at a time. 
If one wanted to use the same technique as what I have shown here to work 
with multiple plugin libraries, a custom UI would be needed that could show 
available updates across multiple libraries in one place. Or you know.... a 
centralized plugin library that is automatically built at regular intervals 
from specified plugin sources.

2. The plugins in question have to have a corresponding plugin library 
installed. We could definitely make it easier to create plugin libraries. 
However, personally I would prefer to work towards a centralized community 
plugin library.

3. With the above technique, every time the wiki starts each plugin library 
is fetched and loaded in the background. So this uses some bandwidth. For 
reference, the official core library which has 61 plugins is 243kb, whilst 
the demo library in the video which has 4 plugins is 5kb. So for most use 
cases this shouldn't be a problem. Furthermore, updates could be configured 
to only run once a day or week.

4. There are some shortcomings with the core UI for showing available 
plugin updates.
[image: plugin-updates.png]
i) the installed plugin version and the version of the update available 
need to be far more prominent and easier to read.

ii) There is no information displayed as to what core-version the updated 
plugin requires and whether that is compatible with the current version of 
the TiddlyWiki.

iii) While the core UI will display the "readme" tiddler if one clicks the 
dropdown arrow to the left of each plugin, this isn't the most relevant for 
plugin updates. What would be more helpful here is to display a release 
note specific for the new plugin version. Such a release note could contain 
a link to a fuller changelog elsewhere online. Currently the only option is 
to include such a release note in the "readme" tiddler, but this leads to a 
larger size for the plugin library. This is an issue that involves not just 
the core UI but also the plugin library creation mechanism.

Cheers,
Saq

-- 
You received this message because you are subscribed to the Google Groups 
"TiddlyWiki" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tiddlywiki/68a1febb-e9c5-4f3d-9d5a-5453bca88a16n%40googlegroups.com.

Reply via email to