Emoncms v10.5.2 master branch testing (menu v3++)

I’ve merged a number of large developments and other changes into the emoncms core and associated modules master branches today. This is available now for testing for a period of time before these are made available via a full stable release. If you can help by testing the latest master branches that would be much appreciated!

Missing modules and other strange user interface issues?? If you have recently updated and have some modules on the stable branch and others on master you will likely see issues with the visual appearance of emoncms. To fix either switch all modules the master or stable using the new emoncms component manager.

This first post will give an overview of the changes, I will then follow up with a second post on how to test these developments and associated troubleshooting.

Im excited to release this work as it has been a long time in development and testing on my own system. It’s also part of a longer term effort, one that is still ongoing and really in its early stages to improve emoncms theming, css and javascript implementation. Both the new component manager interface (released two weeks ago now) and the new my account page use vue.js for what I think is a much tidier javascript implementation. The colour scheme implementation below condenses the previous implementation down from multiple css files with a fair bit of duplication down to a single file with only the colour scheme itself abstracted. The inspiration to use vue.js is thanks to @emrys and the light sidebar colour scheme thanks to @Adminde !

:tada: :rocket: :tada: :slight_smile:

Menu system v3

This is a substantial refactoring of the menu system as well as introduction of an improved 3rd level menu and a minimised sidebar option. Here’s an example screenshot showing the new graph module sidebar:

Admin 3rd level sidebar:

Feed list with minimised sidebar:


New My Account page and selectable theme colour schemes

Selected theme colour schemes are saved to the users browser local storage and need to be set on each browser/device.

Top bar colour scheme is also reflected in on the login page:

A light sidebar theme can also be selected, Inspiration from earlier work by @Adminde :slight_smile:

The new my account page is largely implemented using vue.js as is the admin component manager, which is a tidier way of implementing these kinds of interfaces. The old list.js library has been removed alongside other related house keeping.


Removal of depreciated PHPFiwa and Histogram feed engines and associated visualisations

This update includes the removal of depreciated feed engines PHPFiwa and Histogram. These were replaced by the PHPFina feed engine (with averaging and histogram functionality available on the fly via the graph module instead).

As feed creation has been disabled or not included as standard on emonSD systems for over 5 years, I dont foresee this change being an issue for most users. However if you do have a install that still uses these feed engines and wish to update, you will need to covert any remaining PHPFiwa feeds over to PHPFina. There is a script to help with this process available in the emoncms usefulscripts repository (see GitHub - emoncms/usefulscripts: Some useful scripts for administering Emoncms accounts). I will post a more detailed guide in a follow up post below.

If you do have PHPFiwa feeds, you should see a notice printed alongside the feed engine on your feeds page:

Associated visualisations such as timestoredaily, histgraph, threshold and orderthreshold have also been removed.


emoncms_mqtt multi user MQTT support

Multi-user emoncms_mqtt service support can now be enabled from settings.ini, where data is posted in mqtt messages of format:

basetopic/userid/nodeid

The single user default is:

basetopic/nodeid

Multi user mode is enabled from settings.ini by adding the following setting under the mqtt section:

multiuser = true

Switching to the Emoncms master branch

To test the above you need to be on the master branch of each associated emoncms module. It is now possible to switch branches using the new emoncms component manager accessible from the emoncms admin page.

Navigate to Setup > Admin > Expand the Updates section > Click on Components:

image

To switch all branches to master click on the master button at the top of the components manager:

If you do not wish to be a tester of new features make sure that all components are on their stable branches :slight_smile:

All looking very good, much waited feature that components update admin menu :+1:

1 Like

Thanks @nchaveiro :slight_smile: yes really happy with that, here it gets to be tested properly for the first time to help with feature testing before a full stable release! Im also looking forward to adding the ability to install and remove components directly from the interface.

All updated, Thanks :slight_smile:

John

1 Like

Thanks @JJC

I’ve pushed another minor fix for a docCookie related error that I missed and to make the control bar inherit the theme colour e.g: (v10.5.3)

I just upgraded now (by clicking on the master button on the components page) and it looks OK, except for a docCookie error on the inputs page -

EmonCMS Error

Message: ReferenceError: docCookies is not defined
Route: Modules/input/Views/input_view.js?v=6
Line: 46
Column: 21

I can’t see the inputs, but feeds appear to be updating regardless of the display error.

David

Thanks @zag could you screenshot what you see for Emoncms core on the components page? It should be v10.5.3 with no local changes, does that map up to what you see? The error suggests it’s running slightly older code… I wonder if the update did not complete correctly?

Yep, I’m seeing 10.5.3 with no changes

Other than App, everything else shows as no local changes and master.

David

[edit] I remembered the last suggestion and . . . refreshed the page. It’s showing fine now.

Thanks @zag, good to hear that fixed it, it should have automatically forced a cache clear as I had updated the versioning but it seems it didn’t work. What browser are you using out of interest?

image

1 Like

Thanks @zag same as mine! Not sure what went wrong there, but good to hear its working now.

I found and fixed another issue, this time relating to embedding visualisations and an undefined themecolor variable errror, emoncms core has now been updated again (v10.5.4).

1 Like

Pushed up a couple of minor updates to fix a bug with embedding dashboards and another with input list needing a browser cache reset today.

If anyone else can test the latest set of master branches and let me know if you see any issues that would be much appreciated!

I will otherwise do a stable release at the end of this week.