List Module Versions in Administration

There was some discussion a while back on listing the Modules that were installed. I seem to remember (can’t find it) it getting bogged down as some of the ‘Modules’ are not add-ons but core.

What would be useful would be Node-Red/npm type information listing the current version of a module installed and the latest version available. A button to run a script to update the module would be even better :smile:

Similar functionality should be available for the core to alert you to a new stable version.

Anyone not running stable is likely to be more involved and know when things change.

Just a thought.

Thanks @borpin, happy to receive a pull request to this effect if anyone can help with it - will keep it in mind in the mean time.

Bit beyond my skill set to actually do any modifications I am afraid :frowning:

For this to be implemented there has to be a clearly defined and disciplined approach to versioning, the admin page cannot list what isn’t there (app versions) and the current version number of each module and the core must be available to emoncms to compare with the installed version.

Currently emoncms just looks at it’s own index.php file to determine it’s own version, but it has no way of knowing how up to date that is. the github api isn’t very useful for returning just a “latest tag” and that would also be dependent on someone tagging each version (as is currently done with emoncms). I ideally we should be keeping the version number in a text file at the root folder of emoncms and each module (called “version”?).

Then not only would it be easier for all concerned to know what version SW we actually have just by looking for that file (offline) emoncms could also be able to read and display those version file contents on the admin page, BUT also with a simple http request like

https://raw.githubusercontent.com/emoncms/emoncms/stable/version

for the core or

https://raw.githubusercontent.com/emoncms/MODULE/BRANCH/version

for any installed module, emoncms could know the current released version for any repo and highlight in red out of date module versions that need updating as well as it’s own core.