Updating MX to new version: Difference between revisions

m
no edit summary
mNo edit summary
Line 7: Line 7:
=Who is not intended reader=
=Who is not intended reader=


Cumulus MX has been updated so frequently in 2020, that you may be used to updating to a new build, and for you this article is not useful.
Cumulus MX has been updated so frequently in 2020, that you may be used to upgrading to a new build, and for you this article is not useful.




Line 54: Line 54:




== Updating to the next MX release if you have not updated before ==
== Updating to the next MX release if you have not upgraded before ==


The simplest update is from the immediate preceding build, and the steps required are summarised as follows:
The simplest upgrade is from the immediate preceding build, and the steps required are summarised as follows:
# Download the release distribution zip for the next build (see later for where from)
# Download the release distribution zip for the next build (see later for where from)
#* My advice is to have a separate download location away from the location where you are installing/running the software; it can retain older releases to make regression simple if the new release proves to have a bug.
#* My advice is to have a separate download location away from the location where you are installing/running the software; it can retain older releases to make regression simple if the new release proves to have a bug.
Line 116: Line 116:
<pre>/tmp/CumulusMXDist</pre> and hit the TAB Button
<pre>/tmp/CumulusMXDist</pre> and hit the TAB Button


4.Choose the zip file with the CumulusMX update and hit return.
4.Choose the zip file with the CumulusMX upgrade and hit return.


5. Follow the on screen instructions
5. Follow the on screen instructions
Line 125: Line 125:




CumulusMX will be restarted after update completes.
CumulusMX will be restarted after upgrade completes.


You can check if the update was successful by using option -s:
You can check if the upgrade was successful by using option -s:
<pre> /home/pi/CumulusMX/cumulusmx.sh -s</pre>
<pre> /home/pi/CumulusMX/cumulusmx.sh -s</pre>


=Considerations that determine when to update=
=Considerations that determine when to upgrade=


Cumulus MX will nag you, in various places, to make you aware if you are not running the latest build. Some people will choose to update as soon after a new release as they can. However, each upgrade does involve a period when MX is not running, and that causes some loss of data:
Cumulus MX will nag you, in various places, to make you aware if you are not running the latest build. Some people will choose to upgrade as soon after a new release as they can. However, each upgrade does involve a period when MX is not running, and that causes some loss of data:
*for some weather station types readings taken every minute, or more frequently, are replaced by whatever period you station data logger records at;  
*for some weather station types readings taken every minute, or more frequently, are replaced by whatever period you station data logger records at;  
*for other stations, without their own logging, all data is lost for the period when MX is not running.
*for other stations, without their own logging, all data is lost for the period when MX is not running.




Other, more cautious, people (like the present writer) will not update each time a new release becomes available (and there are a lot of new releases in 2020), here are some of the reasons:
Other, more cautious, people (like the present writer) will not upgrade each time a new release becomes available (and there are a lot of new releases in 2020), here are some of the reasons:
* you will see in the Cumulus Support Forum that many builds have bugs, and so you realise that it is better to stick with your fully working release, than install one with bugs;
* you will see in the Cumulus Support Forum that many builds have bugs, and so you realise that it is better to stick with your fully working release, than install one with bugs;
* you may wish to avoid the loss of data mentioned above, by minimising the number of times that you stop MX;
* you may wish to avoid the loss of data mentioned above, by minimising the number of times that you stop MX;
Line 143: Line 143:
* you may just have more important ways to use your time than updating your MX software, and some new builds might not give you any benefits that make it worthwhile to change your priorities.
* you may just have more important ways to use your time than updating your MX software, and some new builds might not give you any benefits that make it worthwhile to change your priorities.


It is perfectly possible to '''upgrade from rather old versions of MX, to the latest''', skipping intermediate versions, '''but there are some key versions that you should not skip over'''. This page, in subsequent sections, includes suggestions for which releases to install (and get running) before moving onto newer releases. This will be especially useful for those people who do not immediately update to new releases, as per above suggestions.  
It is perfectly possible to '''upgrade from rather old versions of MX, to the latest''', skipping intermediate versions, '''but there are some key versions that you should not skip over'''. This page, in subsequent sections, includes suggestions for which releases to install (and get running) before moving onto newer releases. This will be especially useful for those people who do not immediately upgrade to new releases, as per above suggestions.  


===Advice about skipping versions===
===Advice about skipping versions===
Line 149: Line 149:
Please see [[Updating_MX_to_new_version#Updating_from_a_very_old_version]] sub-section later on this page (and preceding sub-sections where relevant)
Please see [[Updating_MX_to_new_version#Updating_from_a_very_old_version]] sub-section later on this page (and preceding sub-sections where relevant)


The important point to make here is that when you do an update, you should copy in '''ALL''' files from the release distribution you want to run next. This is because there are dependencies between files within a distribution, so missing out any particular file may stop other files from working. However, if you are skipping versions, read the in-between release announcements to see if there are any one-off actions.
The important point to make here is that when you do an upgrade, you should copy in '''ALL''' files from the release distribution you want to run next. This is because there are dependencies between files within a distribution, so missing out any particular file may stop other files from working. However, if you are skipping versions, read the in-between release announcements to see if there are any one-off actions.


= What to read (and when) before upgrading =
= What to read (and when) before upgrading =
Line 173: Line 173:
***That may mean you are advised to regress to an earlier version and use that
***That may mean you are advised to regress to an earlier version and use that
***It might mean that some supporting files in current version are wrong, and you only need to regress those named files
***It might mean that some supporting files in current version are wrong, and you only need to regress those named files
***There might be an emergency release to fix the bugs, and you need to update to that emergency release
***There might be an emergency release to fix the bugs, and you need to upgrade to that emergency release
***Finally you might be given advice to avoid using certain parts of the functionality or take some other action until the next release is available.
***Finally you might be given advice to avoid using certain parts of the functionality or take some other action until the next release is available.


Line 182: Line 182:
You can also view the latest [https://github.com/cumulusmx/CumulusMX/blob/master/Updates.txt Updates.txt].
You can also view the latest [https://github.com/cumulusmx/CumulusMX/blob/master/Updates.txt Updates.txt].


===Deciding whether to update to new release ===
===Deciding whether to upgrade to new release ===


This has been covered earlier in this article, but I repeat here 2 critical considerations:
This has been covered earlier in this article, but I repeat here 2 critical considerations:
Line 221: Line 221:
*Basically, check the corresponding release announcements for every version since the one you have been using before planning your upgrade.  
*Basically, check the corresponding release announcements for every version since the one you have been using before planning your upgrade.  
**Make a note of any one-off actions required at particular in-between versions, remember these actions are only in forum release announcements.
**Make a note of any one-off actions required at particular in-between versions, remember these actions are only in forum release announcements.
**Although one-off actions will not be described in the Wiki (whether on the [[Software]] page or the [[Cumulus_MX_formal_release_versions]] page), the Wiki can give you an idea of what functionality has been improved to help you decide whether to update.
**Although one-off actions will not be described in the Wiki (whether on the [[Software]] page or the [[Cumulus_MX_formal_release_versions]] page), the Wiki can give you an idea of what functionality has been improved to help you decide whether to upgrade.
*It is still worth reading all the points made above for updating from immediately preceding build.
*It is still worth reading all the points made above for updating from immediately preceding build.


Line 248: Line 248:
====If using 3.0.0 (the MX original beta)====
====If using 3.0.0 (the MX original beta)====


Update to 3.5.1 by downloading it at https://github.com/cumulusmx/CumulusMX/releases/tag/b3072.
Upgrade to 3.5.1 by downloading it at https://github.com/cumulusmx/CumulusMX/releases/tag/b3072.


This gives you essential new functionality in the admin interface like editors for the log files and extreme records. But it also fixes multiple bugs in the beta you were using and adds some useful validation missing in the beta.
This gives you essential new functionality in the admin interface like editors for the log files and extreme records. But it also fixes multiple bugs in the beta you were using and adds some useful validation missing in the beta.
Line 267: Line 267:
====If using a 3.5.x release ====
====If using a 3.5.x release ====


My advice is to update directly to 3.7.0 available at [https://github.com/cumulusmx/CumulusMX/releases Mark's Github repository].   
My advice is to upgrade directly to 3.7.0 available at [https://github.com/cumulusmx/CumulusMX/releases Mark's Github repository].   


You should skip the intermediate releases because several 3.6.y releases have bugs in them, and you want to avoid those problems (the bugs vary in severity between mistakes in calculations done by MX to particular functionality not working).
You should skip the intermediate releases because several 3.6.y releases have bugs in them, and you want to avoid those problems (the bugs vary in severity between mistakes in calculations done by MX to particular functionality not working).
Line 343: Line 343:
#... MX is running with connection to the internet, AND
#... MX is running with connection to the internet, AND
#...you restart MX
#...you restart MX
... if a new version of MX is available, the MXDiags file will say so (the message is not easy to spot as there is a lot of output before it, and variation in what output appears before it). Anyway, here is one example, just one example as in my experience '''the message has appeared at different places for each of the recent updates'''):
... if a new version of MX is available, the MXDiags file will say so (the message is not easy to spot as there is a lot of output before it, and variation in what output appears before it). Anyway, here is one example, just one example as in my experience '''the message has appeared at different places for each of the recent upgrades'''):
<pre>
<pre>
2020-05-27 04:18:48.326 Calculating sunrise and sunset times
2020-05-27 04:18:48.326 Calculating sunrise and sunset times
Line 379: Line 379:
== Back-ups ==
== Back-ups ==


It is always best to take a backup of your existing MX installation before you do an update, this allows you to regress back to the earlier version if either you mess up installing the new version, or the new version has a issue that prevents it working with the versions of other software (like MONO) that your installation uses.
It is always best to take a backup of your existing MX installation before you do an upgrade, this allows you to regress back to the earlier version if either you mess up installing the new version, or the new version has a issue that prevents it working with the versions of other software (like MONO) that your installation uses.


== The two approaches ==
== The two approaches ==
Line 454: Line 454:
On my site, my own versions of interface files have a "_" (underline character) added to the start of the standard MX file name. This applies to both HTML pages, and JavaScript files that I have edited. I edit the menu items within my edited pages so those all go to my versions where I have a HTML customised page, leaving unchanged the menu items that can still go to a standard MX web page where I don't have my own version of the .HTML page.  This makes it easy for me to navigate between my pages, as all of them link to my other pages.  If I am on a standard MX page and want to go to one of my customised pages, I select the equivalent standard page, then edit the URL to add the underline and get easily to my page.  This naming means I can always use a standard page instead of my customised page when I need to, and I never miss out on any new features.
On my site, my own versions of interface files have a "_" (underline character) added to the start of the standard MX file name. This applies to both HTML pages, and JavaScript files that I have edited. I edit the menu items within my edited pages so those all go to my versions where I have a HTML customised page, leaving unchanged the menu items that can still go to a standard MX web page where I don't have my own version of the .HTML page.  This makes it easy for me to navigate between my pages, as all of them link to my other pages.  If I am on a standard MX page and want to go to one of my customised pages, I select the equivalent standard page, then edit the URL to add the underline and get easily to my page.  This naming means I can always use a standard page instead of my customised page when I need to, and I never miss out on any new features.


== After an update if you use the standard web template files ==
== After an upgrade if you use the standard web template files ==


If you do not use the example web template files, provided as standard, with a MX release, the remainder of this section can be ignored.
If you do not use the example web template files, provided as standard, with a MX release, the remainder of this section can be ignored.
Line 492: Line 492:
**'''steelseries''' - this folder has 3 sub-folders, I can only think of 2 MX releases when anything was changed here, and I don't anticipate any further changes.
**'''steelseries''' - this folder has 3 sub-folders, I can only think of 2 MX releases when anything was changed here, and I don't anticipate any further changes.


= After update - checking for bugs in MX or mistakes in your installation =
= After upgrade - checking for bugs in MX or mistakes in your installation =


Start the new installation of MX and watch out for any errors - If the device you run MX on has a monitor, then look in the terminal/command window. In all cases look at the latest file in the [[MXdiags_folder|MXdiags folder]] to see if any errors are reported.  
Start the new installation of MX and watch out for any errors - If the device you run MX on has a monitor, then look in the terminal/command window. In all cases look at the latest file in the [[MXdiags_folder|MXdiags folder]] to see if any errors are reported.  
5,838

edits