Release Notes: Difference between revisions

From Cumulus Wiki
Jump to navigationJump to search
m
(463 intermediate revisions by the same user not shown)
Line 3: Line 3:
   |__TOC__
   |__TOC__
   |}
   |}
==== Current Development (06/05/2021) ====
==== Version 7.0.0 public beta 1 (17/03/24) ====
#General: The platform for CUtils version 7 will now be ''.NET 8''. Instructions for installing ''.NET 8'' (for Linux) will be supplied in the CMX forum. All dll libraries have been updated! It is suggested you renew the ''cumulusutils'' installation completely (so: remove the old one if you are not making a completely new CMX directory).
#General: One major change for CUtils is that the CustomLogs require a comma field separator (it was advised to be a space). As a result the definition needs to be adjusted (replace the space between webtags with comma) and the existing data need to be edited. To do this (after the conversion):
##shutdown CMX and stop your scheduler/crontab jobs (see for details the notes in the release post)
##take a customlog in the editor and check if the conversion added comma separators after the date and the hour field. Than do the following:
##find the space separator and replace with a comma. Make sure no multiple comma separators come into the file (this should be an easy automatic editor operation).
##repeat for all your CustomLog datafiles
##start CMX and restart your scheduler/crontab jobs
#General: '''''Duplication and Order of the data''''' : CUtils V7 is able to detect duplication and order errors of data. For some reason CMX sometimes has duplicate times in the logs, this may create errors in charts and definitely faults your statistics. This test is activated by default but if you wish to leave the errors (bad, but correcting it may be a lot of work) or when you are done correcting you can switch the test off by setting the parameter ''CheckDateOrder'' (section  ''General'') to ''false'' (default is ''true''). It is a choice to act upon these warnings/errors but if you wish not to act, it is best to switch the feature off as it takes time. The errors are indicated in the logfile in the section reading the monthly logs.
#General: Extensive rewrite of all logfile reading because of the invariant write by CMX. Transparent for the user.
#General: The console output when run from the command line from now on has reduced informational (progress) and Error information. If you use a colour terminal the Error should jump out.
#Website: The URL now has the current report as parameter so if copied and pastes you can bypass the menu.
#Website: As a consequence of the URL parameters, the core of the runtime system was rewritten which as a spin off now has all charts generated by the [[ChartsCompiler]] being refreshed after the configured ''Interval'' nr of minutes.
#ChartsCompiler: To have more words in the drop down menu choice of a Charts class, make a chart-ID with underscores. Underscores will get replaced by spaces.
#ChartsCompiler: Added PERIOD for SMA stats line. If no period is given a default is given by the parameter ''SmaPeriod'' in section [Compiler]. See [[Charts_Definition_Language_(CDL)|CDL]] Plot Specification
#ChartsCompiler: STATS is now also possible on equation results (which have a different name than the CMX plotvars).
#ChartsCompiler: All axis will now be generated with min and max labels (min and max values will be shown), UV axis will now have soft max of 10.
#ChartsCompiler: Rewrite of the axis logic in the code generation. Should be transparant for the user.
#Graphs: If heatmap now has more than ''HeatmapNumberOfYearsPerPage'' (parameter) the chart starts now at the highest year.
#Sysinfo: Fixed : lines to be omitted from the systeminfo output on Windows
#Support: for the new CMX un/pw encryption
#Highcharts: there were two charts which did not work with HC 11.3 which had been accepted as bugs. The Heatmap is fixed but it is unknown when it propagates through the CDN. The Rain vs EVT chart has a workaround and should work. Advise: empty the parameter ''UseSpecificHighchartsVersion'', if problems re-occur, use version 11.2
#HighCharts: There may be some cookie issues if you are working with Chrome. afawk other browsers are still working fine. No solution as yet. Please inform  me when having issues.
#Monthfiles: Because of the logfile invariance you may remove the parameter ''MonthsOfMiracleAndWonder''
 
==== Version 6.23.6 (30/01/24) ====
#CustomLogs: Addition of <#stationpressure>
 
==== Version 6.23.5 (17/01/24) ====
#General: Upgraded all libraries as shortly after the previous release it was found the no FTP variant did work anymore. Apparently nobody uses FTP anymore.
 
==== Version 6.23.4 (16/01/24) ====
#General: The limit of data only after 27 Januari 2004 (start of Cumulus) has been lifted (under the condition that the logfile records have the length of todays records). CUtils can now read whatever number of years (current record is 1 Januari 1979)
 
==== Version 6.23.3 (14/01/24) ====
#ChartsCompiler: Error messages improvement
#ChartsCompiler: If there is an error in the charts, a notification is now given in the terminal output
 
==== Version 6.23.2 (10/01/24) ====
#ExtraSensors: Fixed. The Lightning and CO2 sensors were incorrectly handled when both present
#SysInfo: If the parameter Tx (for WLL) is not filled in, the resulting SysInfo page will show an error: "A value for the Transmitter used is needed - please set parameter Tx"
 
==== Version 6.23.1 (05/01/24) ====
#Graphs: When creating the solar energy chart, the solar energy per day can be requested and will be written out to ''DailySolarEnergy.csv''. The parameter involved is [General] ''NeedSolarEnergyDailyValuesInCSV=false'' (default)
#Language: Parameters ''LimitValues, Winter1, Spring, Summer, Autumn, Winter2'' have been added to the language file to  be translated.
#Charts: All axis involving Temperature will now - when using Fahrenheit scale - have a soft minimum of 32 F-degrees i.s.o. 0
#General: It is now possible to run CUtils from day one i.e. after having at least one rollover i.e. the dayfile has at least one record.
#ExtraSensors: Fixed a unreported issue with the lightning sensor
#Graphs: Fixed a minor issue with the normal and station reference lines in the Daily Rain chart
#SystemInfo: With the WLL device you now get a message if the Tx parameter is not filled in
 
==== Version 6.23.0 (06/12/23) ====
#Technical: A cleanup of the code wrt the JSON creation. Though this is not visible for the user it has impact and will require (international) regression testing.
#Technical: Redo the logfile reading along the  line  of the CustomLogs. This reduces complexity and unifies the method. Not visible for the user and will require (international) regression testing.
#Technical: Performance gain while reading the monthly logs as a result of the previous action.
#MeteoCam: Addition of ''EcowittHP10'' as ''CamType'' (the original being the default ''CamType Manual'')
#Language: parameters ''NormalYearlyRainfall, StationYearlyRainfall, DailyRain, DailyEVT'' have been added.
#Graphs: In Rain vs EVT chart the plotline ''Normal Yearly Rainfall'' has been moved to he front and colour set to blue. The default title has the addition "Cumulative". The user who already has this in the language file will need to change it manually.
#Technical: Deprecated the use of MySQL (i.e. the parameter ''UseSQL'' is no longer used and can be removed)
#CustomLogs: Webtag ''wchillH'' has been renamed ''wchillL'' from CMX b3264 and up.
 
==== Version 6.22.0 (23/11/23) ====
#Units: fix for Distance as that was always km and should be corresponding the windspeed (mph => mi, m/s => km etc...)
#CustomLogs: addition of the following webtags: ''RecentApparent, RecentIndoorTemp, RecentIndoorHumidity''.
#Graphs: addition of ''Rain versus EVT'' graph (in the Rain section)
 
==== Version 6.21.5 (16/11/23) ====
#Sysinfo: Added reception status for Ecowitt devices
#Airlink and ChartsCompiler: WindBarbs is now a translatable word
#ChartsCompiler: added an Axis Height (ToDo: Wiki compiler spec.)
#Customlogs: Changed permitted webtag ''cloudbase'' to ''cloudbasevalue'' and attached axis Height
#Website: The pwsFWI button which in the past had been moved from the navbar to the header, has now been made configurable. If you add ''PwsfwiButtonInHeader=false'' to your [Website] section of ''cumulusutils.ini'' it will configure in the navbar just before the system led. The default for this parameter is ''true'' (placing the button in the header). Editing cumulusutils.ini yourself saves the labour of a second website run.
#CustomLogs: added the following webtags to the allowed webtag list: ''"windrunmonth", "StormRain", "RecentOutsideTemp", "RecentWindChill", "RecentDewPoint", "RecentHeatIndex", "RecentHumidity", "RecentWindSpeed", "RecentWindGust", "RecentWindLatest", "RecentWindDir", "RecentWindAvgDir", "RecentPressure", "RecentRainToday", "RecentSolarRad", "RecentUV", "RecentWindChill", "RecentFeelsLike", "RecentHumidex", "snowdepth", "snowlying", "snowfalling", "Tbeaufortnumber"''.
#Customlogs: webtags in the realtime table in the left pane are now displayed including the brackets and the hash ('''<# >''') to facilitate the showing of possible [[Webtags/Parameters|modifying parameters]].
 
==== Version 6.21.4 (12/11/23) ====
#General: Fixed: Improved logging info when asking webtag values
#CustomLogs: made the realtime table animation ''slow''
#ExtraSensors: Changed the realtime table height to ''70vh''
#Uploading file: Fixed: The CMX ''Host'' parameter is only for FTP protocols. When using PHP upload ''PHP-URL'' needs to checked for not empty
#CustomLogs: If the CustomLog Frequency in minutes modulo the Internet Interval in minutes has a value other than zero, a warning is logged when the end of the log is reached and the last record time does not match the endTime.
#ChartsCompiler: Introduction for a specific path on the website when making modular use of CUtils and wanting to separate CUtils from the webroot files. Introduction of the parameters ''DoModular'' (cannot be combined with the Website command) and ''ModularPath'' which contains the path to the CUtils modules, relative to Webroot e.g. '''''CUtils/''''' (the closing slash is required as it is with ''CumulusRealtimeLocation''). NOTE: Module and ModularPath does not hold for the AirLink module which is on the ToDo-list for Modular handling.
#CustomLogs: Added THWindex and THSWindex to the list of allowed webtags
 
==== Version 6.21.3 (07/11/23) ====
#CustomLogs: Fixed: The Ecowitt CO2 sensor has also an AirQuality sensor with four values which need an AQ axis.
#Website: Modification of website statistics parameters adding Matomo for a choice between Google and Matomo. Parameters have changed, see [[Website_Generator#Inifile_parameters|wiki]]. If you already use Google statistics, you will  need to set the new parameter ''StatisticsType'' to the value ''Google'' (the default for this new parameter  is empty).
#CustomLogs: Modified the layout and behaviour of the realtime values table in the left pane in relation to the chart chosen (length of table with ''overflow'' and a ''slideDown'' when change from RECENT to DAILY and vice versa.
 
==== Version 6.21.2 (04/11/23) ====
#CustomLogs: Fixed - When reading the logfiles over a month boundary the transition to the next month was incorrect Thus the charts were missing the days in the new month.
#CustomLogs: Modified the CustomLogs - using the units and charts axis.
#Chartscompiler: solved a few bugs while implementing the CustomLogs Units and chart Axis. Non-critical in pre-6.21 versions
 
==== Version 6.21.1 (31/10/23) ====
#CustomLogs: Fixed - When using ''CumulusRealTimeLocation'' the customlogs JSON's were not correctly located.
 
==== Version 6.21.0 (22/10/23) ====
All functionalities of the previous beta's
 
Main addition is the implementation of the CustomLogs module.
CustomLogs will:
#Make it easy to chart Lightning with the Ecowitt Lightning sensors (see below)
#Makes it possible to plot previously unavailable values (E.g. the Wet Bulb Temperature or 24 hour rain)
#... and whatever users may come up with - all webtags producing a value are available for plotting
 
The CustomLogs module is also accessible as a module for displaying the charts in other websites. The realtime table is generated but not compulsory to use (using it in an other website requires additional handling and its use becomes  more complex). Data will be supplied daily by the ''CUtils USerAskedData'' call.
 
If a you create a CustomLog with the webtag <#LightningStrikesToday> - the Daily frequency is best as it is a daily total - automatically a chart with the daily number of strikes will be created when the module is activated.
 
Default the CustomLogs are under the menu ''Extra''. If the user chooses eventually a manual handling of those charts he can use that chart anywhere.
 
Once configured, CustomLogs are a very powerful tool to chart any value available in CMX in any combination.
A picture - i.e. a chart - says more than a thousand words.
 
Checkout the [[Release_Notes#Version_6.22.0_(xx/xx/23)|ToDo list for version 6.22.0]] and possibly propose a suggestion.
 
Additional modifications since last beta:
#No more crashes when adding a webtag to an existing log
#All file copies created while running the module are now correctly removed
#Incremental now works only for a ''UserAskedData'' run
#For an Ecowitt device added the firmware version in SysInfo (when available)
#Webtag #CPUTemp is added to the list
#Webtag name comparison to the reference list is now case dependent (as it should be). So a case spelling error now correctly fails the webtag!
 
==== Version 6.21.0 beta 1 to 4 (10/10/23) ====
#SysInfo: A distinction can be made for various Linux dialects when required. If needed contact me and we'll work it out.
#Sysinfo: openSUSE (Tumbleweed) has been implemented as Linux dialect.
#Forecast: SpotWx has been reinstated as default to prevent a crash while doing a new install.
#Units: When using m/s for speed, distance will be expressed in Km (distance in m is never used by CUtils).
#Graphs: Fixed the conversion of X-axis day number to date in the tooltip when applicable, when graphs used as module (not sure what happened here so report if not working!).
#General: Added the device types according to CMX v3.27.0 - b3250
#Gauges: Modified CUgauges.js to sync with gauges.js 2.7.7 of CMX 3.27.0 b3250
#CustomLogs: A first beta for a CustomLogs module. See the [[Custom Logs|Wiki page]] and [https://cumulus.hosiene.co.uk/viewtopic.php?t=21523 the forum post] specifically for this beta.
 
==== Version 6.20.0 (21/7/23) ====
#Website: '''IMPORTANT''' => Files borrowed from CMX and (possibly) modified - notably: ''gauges.js, gauges-ss.css, language.js, RGraph.common.core.js, RGraph.rose.js, steelseries.min.js, tween.min.js'' - have been prefixed with '''CU'''. You need to do a full update i.e. with one run without thrifty. The reason for this is that some users started using the libraries from the CMX release and use all websites from the same directory. You should not do that and it will fail the system (For CumulusUtils or for your alternative website depending which is last placed in that location).
#Website: Please note that the [[Default Website Development|CMX Default Website Development]] is developing fast and the new ''Alternate Default Website'' changed its index filename to ''index.html'' (it always was ''index.htm''). ''index.html'' is the same name as for the CumulusUtils website so you can no longer have those two websites in the same directory! The advised setup is always to create separate directories on the server for any website you create (which btw most of you, but not all, do). The data access is relative through the parameter ''CumulusRealTimeLocation'' and the ''Alternate Default Website'' will have a similar feature [https://cumulus.hosiene.co.uk/viewtopic.php?p=173045#p173045 as promised by Neil].
#Heatmap: The heatmap colour axis now has a range from 0 - 100 for the Fahrenheit scale for better resolution
 
==== Version 6.19.0 (29/06/23) ====
#General: some minor formatting corrections for use of imperial units
#General: Error correction and handling improved in case of an erroneous locale (in ''cumulusutils.ini'')
#General: All dates displayed in the modules and website are now shown according to the locale defined in the language setting in ''cumulusutils.ini'':
##Records: The Records, DayRecords and Top10 pages have been reworked to display the date/time in the local format used.
##pwsFWI: Adjusted for date formatting
##Graphs: Date in clock pane now follows local format.
##Gauges: Corrected the Danish language code to ''da'' i.s.o. ''DK'' and did that also for the gauges, this should be transparent for the user (Note the Danish locale is: da-DK).
##General: With this version, the use of the locale has been formalised. Please make sure you use the locale for your language/country as defined in [http://this%20Microsoft%20documenthttps://learn.microsoft.com/en-gb/openspecs/windows_protocols/ms-lcid/70feba9f-294e-491e-b6eb-56532684c37f this Microsoft document].
#HighCharts: All charts in CUtils will now display short dates (i.e. dd/mm/yyyy) according to the locale. This only is seen in the tooltips (e.g. the heatmap and Temperature Sum)
#Charts Compiler: To accommodate the mix of scatter with other plots, only the main y-axis (the first in the definition) now generates its gridlines, and the ticks for the different y-axis are no longer aligned. This will give a slightly different experience for the charts.
#General: Correction for the distance unit: meters is now possible (btw: not accessible for the user)
#Charts Compiler: The Distance Axis now works (Note: unit has to be reworked)
 
NOTE: It is understood that Norwegian, Danish and probably Swedish show different output for the C# compile time or for the javascript runtime.
 
==== Version 6.18.3 (10/06/23) ====
#Forecasts: Text around the ''Yourweather'' forecast table is now translatable (section: ''Forecasts'')
#Forecasts: Default ''ForecastSystem'' is reset to ''YourWeather'' because ''SpotWX'' has an issue with cookies. If you have set ''SpotWX'' and want to change, please modify parameter ''ForecastSystem'' to ''YourWeather''.
#Top10: Long Dry/Wet periods. Make sure the current period is taken into account when the period is not yet finished.
#Parameters: ''CMXport'' has been moved to section ''General''. ''UseSpecificHighchartsVersion'' has been added to section ''General'' to facilitate the user who wishes to use a specific Highcharts version. If empty automaticly the last published version is used. If a specific version (e.g. 10.3.2) is entered then that one is used. No slashes, no spaces just <number>dot<number>dot<number>
#General: Some minor formatting changes for imperial units, this includes an axis boundaries change for the heatmap.
 
==== Version 6.18.2(05/05/23) ====
#Website: The value of ''MoonImageLocation'' was forced lowercase which was incorrect.
#Month files: While reading the month files it had internally a max number of errors (value 10) after which it stopped logging. That value is now parameterised inn section general. It has no influence on the processing of the files, just the logging of the errors.
#Month files: Fix for correct order of assignment in case of older logfiles where values may be missing (e.g. if EVT is not present, SolarRad is now read correctly).
#Top10: Removed a line which cause unexplained errors on an RPi. It is still unexplained what and why it happened so all RPi users are asked to check the logs once in a while and look for errors. Errors may appear as crashes or graphs not appearing at all. So far the cause seems to be in the environment but a true explanation has not been found.
 
==== Version 6.18.1(30/04/23) ====
#AirLink: The AirLink Help button now is upgraded to Bootstrap 5.2 (it did not open/close properly)
#Airlink Help: Corrected a broken link on the help page.
#pwsFWI: Fix for dry/wet periode: when a day rain amount is less than 0.2 it is not counted as rain so dry period continues
#Moon image: To avoid confusion when your site is used by more than one CMX instances and more than one CUtils sites, the moon image location is now always made explicit. Use: ''MoonImageLocation=<Full URL>''. Include the image name in the URL! (best to manually add it to ''cumulusutils.ini'' and run ''website'')
 
==== Version 6.18.0 (24/04/23) ====
#PHP upload: UTF8 header added. You need to use this CUtils version (and up) to use PHP upload with CMX 3.25.x and up
#Charts Compiler: Code  generation creates a global for windbarbdata to prevent apparent issues.
#Top10: Fixed a bug for the wet/dry periods. Those are now correct.
#Airlink: Winddata are now fetched through the API for both incremental and full json data upload (requires 3.25 as well)
#DayRecords: The report is now independent of thrifty to have correct formatting and prevent out of date reports
#Helptexts: The titles of the Helptext modal screens for the Graphs module now have titles fitting the charts they belong to (and not "Daily Rain" as it was)
 
NOTE: It is required to use CMX version 3.25.0 (and up) with this version of CUtils (and up).
 
==== Version 6.17.3 (15/03/23) ====
#General: technical wrap up of the past quick successive releases
#General: Sync up to CMX 3.24.2
 
Although no functional changes it is advised to update.
If any anomalies please report.
 
==== Version 6.17.2 (13/03/23) ====
#UserAskedData: Fix for duplicate CO2 sensor entries in the ''ExtraSensors'' JSON for Ecowitt CO2 sensor. Required for PHP upload (incremental uploads)
#General: Fix for a wrong DateTime format in RecordsBeganDate generating a crash. If format is not correct (must be ''dd/MM/yy'') then the date is reset to first date in database and a warning is issued in the logfile.
#Upload: Fix for CUtils upload to other directories than the location of ''upload.php''. The ''UploadDir'' in section FTP site is now taken into account
 
==== Version 6.17.1 (08/03/23) ====
#Parameter DoneToday: For both parameters ''DoneToday'' the format is now set as ISO to prevent an error caused by mono for some locales
#ExtraSensors: The module ExtraSensors now correctly translates the plotvariables, defaults come from ''strings.ini'' (see [[Extra_Sensors#Translation/Language|wiki]])
 
==== Version 6.17.0 (05/03/23) ====
#Top10 & DailyRecords: parameter ''UseScrollableTables''. When false no scrollbar or defined height is shown for modular use, when true otherwise. Released as patch 1 to version 6.16.0
#General: Introduction of parameter ''RecordsBeganDate'' in section General (independent of CMX parameter ''StartDate''). When set to a date (format: dd/MM/yy) it will be used as the startdate of the data in charts and reports no matter the actual startdate in dayfile or monthfile.
#Uploads: Introduction of the PHP upload protocol present in CMX version 3.24.0 and up
#Menu: The menuitem ''Print'' is added (add to ''CutilsMenu.def'' (top level) if you want to use it). This provides the possibility to print what is in the ''ReportView''.
 
==== Version 6.16.0 (12/02/23) ====
#ExtraSensors: Fix for Ecowitt AirQuality sensors typo (released as patch 1 to 6.15.6)
#Top10: records now has top 10 list of minimal rain per month added. Technical update of this module
#Top10: records now also has a scroll bar (on the containing div)
#YADR: Fix for nr of decimals for the Rain report when using inches
#Misc Graphs: Fix for the season chart which is now corrected with an addition of 10 days to winter 1 (counting not the start but the end of the 10 day temperature grace period)
#Fix gauges.js: The init was done at document ready which made the modifications ineffective. Init is now after the modifications.
 
NOTE: This is the first major update for the oldest module of CUtils ;)
 
==== Version 6.15.6 (30/01/23) ====
#Functionality of 6.15.6 but now working correctly
Additional modifications:
#ChartsCompiler: Fix for the units of the ExtraSensors
#ExtraSensors: Fix for realtime values for the ExtraSensors
#Lightning Sensor: Added the date to the time of last strike
#Lightning Sensor: Whichever unit the distance it is always presented rounded to the nearest integer
 
==== Version 6.15.5 (29/01/23) ====
#General: The number of solar hours has a non-translated unit '''hrs'''. This is removed as the description label is sufficient.
#ExtraSensors: Added the Lightning Sensor. Activate with parameter ''LightningSensor=true''.
#ExtraSensors: Added coulour changeindicators (using the same colour as main dashboard: ''ColorDashboardTextAccent'').
#StationMap: Reshuffled the code for the rotation of map objects. Now the map loads correctly after the User map (which it didn't, might you not have noticed it)
#Unit Pressure: Pressure in ''hPa'' is now in one decimal (to get better distinction in Records modules) and in ''inHg'' is now 2 decimals.
#Chartscompiler: Fix for pressure with a decimal comma (locale dependent) is now always converted to a decimal point for the Dashboard.
 
==== Version 6.15.4 (16/01/23) ====
#General: When a unit rate of change is displayed it was '''/hr''' or '''/h''' in all languages. Now it can be translated through the ''PerHour'' translation tag in section ''[General]''
 
==== Version 6.15.3 (12/01/23) ====
#General: fix - forced some configuration parameter values to be lower case (so ''True'' is read as ''true'')
#ChartsCompiler: When loading a charts collection (e.g. ''cumuluscharts.txt'') the version of HighCharts is now displayed in the console
#Highcharts: fix - the version of Highcharts to version 10.3.2 to make the INFO keyword work again and because the colour bug has been fixed
#Highcharts: added ''thousandsSep = ""'' to the HighchartsLanguage.js (set the thousands separator to empty string)
#Graphs: The heatmap now has a normal date in the tooltip
#Graphs: changed the fourth default value for ''GraphColors'' to #ed9b00 (darker goldish) i.s.o #DDDF00 (hardly visible yellow)
#StationMap: Position of the Arrow now is fixed -0.02 degree longitude from the station marker, map is centred on the station marker.
#Wiki: added an explanation of the scaling of the charts on [[Charts_Definition_Language_(CDL)#The_Chart_Axis|the CDL page]].
 
==== Version 6.15.2 (04/12/22) ====
#ChartsCompiler: Fix - Keyword INVISIBLE can now also be used at the end of the PLOT definition line.
 
==== Version 6.15.1 (02/12/22) ====
#ChartsCompiler: Addition of the Keyword INVISIBLE to suppress a chart line at initialisation of the chart
 
==== Version 6.15.0 (27/11/22) ====
#ExtraSensors: Major rewrite. Configuration now through inifile parameters, strings.ini is now secundary. Thanks for the help while testing :D
#Website: Correction for the night image for the header (which was never selected)
#Website: The generation date in the version strings is now "g" i.e. the short format in the locale CUtils is running in. Note that the date in the clock can be different format because that comes from CMX.
#Website: Some minor corrections in spelling and messages for the console
#Pressure charts: The max and min values are now handled to accommodate the imperial units (inHg)
 
==== Version 6.14.4 (22/11/22) ====
#ChartsCompiler: The yAxis for pressure now displays the units according to the a new formatter (2 decimals for inHg and 0 decimals for mb and hPa)
#Website: When using ''inHg'' as pressure unit, the realtime dashboard not displays 'inHg' i.s.o. 'in' (just as everywhere else)
#Record: The records page now starts <AllYears>/<Current Month> similar to DayRecords (which starts in <Current Month>).
#Highcharts: Fixed the Highcharts release to 9.1.0 (in line with CMX) to prevent error regression with new releases (which appear to occur too often)
#Highcharts: The tooltip for the (average) bearing is now correct.
 
==== Version 6.14.3 (19/11/22) ====
#HTTP: For HTTPS sometimes the connection fails on the SSL layer for unknown reasons. This issue has now been circumvented.
#Website: Unit for Elevation was always in meters. Now, when given in feet, it shows the correct unit (ft)
#Graphs: The Temperature HeatMap now also works properly for Fahrenheit
#Units of Pressure: Internally the pressure unit was read from CMX through the wrong parameter name therefore it was always hPa. That is now corrected.
 
==== Version 6.14.2 (03/11/22) ====
#ChartsCompiler: The Windbarbs now have a tooltip which shows the wind unit used on the site (it was ''m/s'').
#AirLink: As in ChartsCompiler.
 
==== Version 6.14.1 (31/10/22) ====
#ChartsCompiler: And in the process of the previous fixed a bug on EOF detection.
#Website: Drop down user menu's are now automatically adjusted in width to accommodate large width multiword menu choices
#Website: The Extra top menu is not generated if there is no AirLink and No Extra Sensors preventing erroneous formatting of the menu.
 
==== Version 6.14.0 (22/10/22) ====
#Website: Menu System 2 is released. [[User_Defined_Menu|See Wiki]].
#ExtraSensors: AirQuality sensors do have the current value and the 24 hr average value (two sensors in one). If the 24 hr average sensor has not been identified/named by the user in strings.ini, it will receive a default name to prevent corrupting the system.
#StationMap: activated the weather data below the arrow.
#Charts Compiler: The default ''CutilsCharts.def'' in the distribution has been updated to reflect ''Windbarbs'' and ''Zoom'' keywords.
 
==== Version 6.13.1 (10/10/22) ====
#General: (6.13 patch 1) Cutils now runs on MacOS too (detection of OS ''Darwin''). NOTE: SysInfo needs to be worked on with the user)
#Website: (6.13 patch 2) Bugfix for display of the date when the date separator is a point.
#ExtraSensors: (6.13 patch 3) Bugfix for reading the double amount of data from the logfile (rounding down error for start/end time to 0 seconds)
#HelpSystem: Now all graphs work with the Info system (NOTE: Only the WindRose does not work is still problematic)
 
==== Version 6.13.0 (08/10/22) ====
#ExtraSensors: Bug fix for passing a month boundary when rollover time is other than midnight (9 or 10 am)
#Graphs: Addition of a help system for the Graphs (the climate charts) analog to the Info keyword of the ChartsCompiler. See [[Help_System|the Wiki page]].
#Language: The word ''Info'' has been moved to the section General of the CUstringsXX.ini. You can remove it from the section Compiler.
 
==== Version 6.12.2 (28/9/22) ====
#Extra Sensors: Bug fix for risk of duplicate Temperature chart under the English language
 
==== Version 6.12.1 (28/9/22) ====
#Addition of ZOOM keyword in CDL (see [[Charts_Definition_Language_(CDL)|wiki]])
#Clean up of the Chart block in the [[Charts_Definition_Language_(CDL)|wiki]]
#Menu System2: The menu definition file now can contain blank lines (no further additions)
#ChartsCompiler: The word Info was erroneously placed in ''cumulusutils.ini'' and has been move to the language file (you may remove it from cumulusutils.ini)
#Logging: Several corrections and modifications in severity in the messages
#Extern Extra Sensors: A fix for a possible error condition during a month boundary transition.
#YADR: a fix for the windrun classes when dimension is other than ''km''
 
==== Version 6.12.0 (22/9/22) ====
#ChartCompiler: The keyword ''Info'' on a chart was introduced. When used on a chart the word Info appears left of the chart exporting menu. When clicked, a modal popup is displayed with the user specified help text. See [[Charts_Definition_Language_(CDL)#Info_specifier|the Wiki]] for further specification.
#Website: System 2 for the user defined menu has been introduced (in beta, [[User_Defined_Menu|See wiki]])
#Logging: Reduced the verbosity in the log while generating the rain and temperature graphs.
#Gauges: Contains the fix for the bug ''CumulusRealTimeLocation'' in 6.11.0 which previously was published as a patch
 
==== Version 6.11.0 (10/09/22) ====
#Website: Bugfix - The positioning of the odometer suddenly started to fail on some hardware/browser combination. A fix was  released comprising of a change in gauges.js and gauges-ss.css adding the ''odo class''. To facilitate those changes the website code had a minor change.
 
==== Version 6.10.0 (03/09/22) ====
#AirLink: Bugfix - a correction in the order of the CMX AQI formula's as used in CUtils (selectable in CMX: CA comes after EU and not before!)
#ExtraSensors: Bugfix - Corrected the unit in the tooltip of the CO2 temperature line (Ecowitt WH45)
#ChartsCompiler: Bugfix - Corrected an issue with the scatter charts which was highlighted with the v10 release of Highcharts and which also had an issue in Chrome (see previous post)
#Website: Corrected several [https://validator.w3.org/ HTML Markup Validation] errors in the ''index.html''
#AirLink: The Referenceline thickness is now configurable (default = 4) through parameter ''ReferenceLineThickness''
#Website: Upgraded the website to Bootstrap 5.2 This has consequences for your ''CUsermenu.txt''. The ''data-toggle=<nowiki>'</nowiki>dropdown<nowiki>'</nowiki>'' must be replaced by ''data-bs-toggle=<nowiki>'</nowiki>dropdown<nowiki>'</nowiki>'' and dropdown items are no longer <nowiki><span></nowiki> but <nowiki><ul> <li></nowiki> combinations. Checkout the ''CUsermenu-example.txt'' in the distribution for the changes.
#General: Upgraded the libraries: FluentFTP, ServiceStack.Text, MySqlConnector
 
==== Version 6.9.9 (10/08/22) ====
#Libraries: Updated FluentFTP.dll, ServiceStack.Text.dll and MySqlConnector.dll to their latest versions (38.0.0; 6.2.0 and 2.1.11)
#Website/General: Technical update for signature files
#InetSupport: Some minor changes in FTP/FTPS handling
#ChartsCompiler/Windbarbs: Windbarbs are now (almost) equidistant for any nr of days plotted.
#AirLink: The identification of the United Kingdom in the parameter ''CountrySelected'' (section ''AirLink'') has changed to UK iso GB to make it analog to CMX.
 
==== Version 6.9.6 (08/07/22) ====
#Website/General: Allow for images as background to charts. Note that this does not necessarily work when used modular.
#ChartsCompiler: bug fix - allow for STATS function(s) to use EXTRA plotvars
#ChartsCompiler: Small experiment => Removed the  limitation on scatter series to be combined with other types.
#General: some cleaning up of old code.
 
==== Version 6.9.5 patch 1 (02/07/22) ====
#ChartsCompiler: bug fix - related to (EXTERNAL) EXTRA sensors
#ChartsCompiler: bug fix - use CumulusRealTimeLocation when reading winddata for the WindBarbs
#ChartsCompiler: bug fix - have the colour of the WindBarbs configurable to stand out against any chart background colour (implemented in [[Charts Definition Language (CDL)|CDL]])
 
==== Version 6.9.5 (01/07/22) ====
#Extra Sensors: Completed the External Extra Sensor functionality (see [https://cumulus.hosiene.co.uk/viewtopic.php?t=20516 this post])
#ChartsCompiler: Completed the Windbarbs feature in CDL (see [https://cumulus.hosiene.co.uk/viewtopic.php?t=20516 this post])
#General: Disabled the ALL commandline parameter to avoid the apparent confusion it being a partial website commandline parameter
 
==== Version 6.9.2 (26/06/22) ====
#Compiler: Added the optional language construct "''Has WindBarbs [Below | Above]''". See Wiki CDL. This feature is beta.
#Fix AirLink: Reading the AirLinkLog required an additional condition for preventing an infinite loop (and running out of memory/swap).
#Fix Airlink: The windbarb xAxis on top is now aligned with the xAxis below
#Fix MeteoCam: Corrected the Upload for the MeteoCam output when the user does not use  it.
 
==== Version 6.9.1 (16/06/22) ====
#UserAskedData: DayEVT now correctly gets the  data in the CUserdataALL.json
#SFTP: A workaround if the ECDSA cipher is asked is now implemented similar to CMX
 
==== Version 6.9.0 (14/06/22) ====
#Cutils runtime  library: one minute ''UpdateInterval'' (see CMX FTP parameters) is now acceptable<br/>NOTE: this is meant for local webservers and not for internet transfers.
#ChartsCompiler: Changed keywords in the ALL/DAILY set of keywords to prevent conflicts with the RECENT keywords. Check the [[Charts_Definition_Language_(CDL)|CDL Wiki]] (check your chart definitions!). The changed keywords are:<br/>
"AvgWindChill" (was: "WindChill")<br/>
"HighAvgWindSpeed" (was: "WindSpeed")<br/>
"DayRain" (was: "RainFall")<br/>
"DayEVT" (was: "EvapoTranspiration")<br/>
#ChartsCompiler: fine tuned the rain and rainrate axis : the last label (highest number) is now shown and the rain/rate gridlines are only shown when not disturbing other gridlines.
#AirLink: AirLink charts now too works with 9 am (and 10 am) rollover hour (phew...)
#Map: If no link is given for the website it is now clearly indicated in the pop-up.
#Website: [[Website_Generator#Header_Background_Images|Multiple header image selection]] at runtime now actually works
#General: the software libraries have been upgraded
 
==== Version 6.8.3 (03/05/22) ====
#ChartsCompiler: Bug fix: when no or very little rain occurs over the whole selected period the max y-axis keeps too high value for e.g. inches.
#General: The usage message is now shown as a first action when no arguments are given (i.s.o. first initializing FTP and Dayfile)
#SysInfo: Added WLL statistics
#Sysinfo: Added inifile parameter ''ExtraStationInfo'' to enter free format information for non-Davis stations.
#Website: Multiple header images are now possible for each phase of the day: DAY, CIVIL twilight, NAUTICAL twilight, ASTRONOMICAL twilight and NIGHT. See the [[Website_Generator#Header_Background_Images|wiki]].
#Day records table has now possibility to scroll (configure ''UseScrollableTables''=true (default)), section [General]). DayRecords and pwsFWI modules now use ''thin'' scrollbar which does not work in chrome.
#Map: Users will now always appear on the map, the link to their site is no longer compulsory (but highly appreciated).
 
==== Version 6.8.2 (19/04/22) ====
#Fix: some glitches in the handling of the low limit of the rainfall
#Change: for a clean install take care the FTP/UploadDir gets in the inifile on the first run so it is easier for the user to continue.
#Change: Now the defaults for ''DoLibraryIncludes'' & ''GeneratejQueryInclude'' parameters is false; When using CUtils in a modular fashion set these to ''true''.
#AirLink: Created the possibility to use the module as a standalone page (just a html page with the data in current directory, no other context required).
#Wiki: important modifications wrt [[Language_in_CumulusUtils#Trouble_in_Paradise_.28for_version_.3C_7.0.0.29|Language in Utils / Trouble in Paradise]] and [[Extra_Sensors#Dependency|Dependency]] of the ExtraSensors on the use of the ChartsCompiler.
 
==== Version 6.8.1 (03/04/22) ====
#General: Overhaul of units and (internal) unit conversions because imperial units are being used now seriously (mi and inches).
#graphs: Wind graphs / Windrun chart - adjusted the tooltip to clarify better.
#ExtraSensors: ExternalExtraSensors remains in beta until (probably) end of may. Notice will be given when usable.
#Please note that the modified [[Charts_-_Wind_charts|Wind Chart Wiki]] is also part of this release wrt the legend.
 
==== Version 6.8.0 (29/03/22) ====
#UserReports: Introduction of Cutils dedicated webtags. Currently only <#CUversion>. Released as a patch for 6.7.14 on 28 march
#ExtraSensors: Bug fix to prevent reading the log for every sensor. Now read only once.
#Logging: Created the possibility to switch logging completely off. Parameter: ''LoggingOn''.
#Logging: Console Messages are regulated by parameter ''NormalMessageToConsole'' which is independent of other settings.
#ExtraSensors: ExternalExtraSensors are still in beta
 
==== Version 6.7.13 (27/03/22) ====
#Graphs: Correction for the southern  hemisphere for the temperature sum and seasons charts.
#Extra Sensors: Addition for [[External Extra Sensors]] in beta.
 
==== Version 6.7.12 (not released) ====
#Top10: Ecowitt registers rain with 0.1 mm precision. For the dry and wet period records in top10 a rainfall of 0.1 mm is ignored.
 
==== Version 6.7.11 (03/03/2022) ====
#ChartsCompiler: Bug fix: When using the ChartsCompiler, it now also initialises correctly when using the OUTPUT specifier or the ExtraSensors module.
#Graphs: Bug fix for Solar hours chart - the ratio between Solar Radiation and Max Radiation (determining the hours of sunshine) had a conversion error (integer to float)
 
==== Version 6.7.10 (26/02/2022) ====
#ChartsCompiler: Bug fix: When using the ChartsCompiler stand-alone (CompileOnly), the  output can now be used in the CUtils website
 
==== Version 6.7.9 (26/02/2022) ====
#Charts (Home and ExtraSensors): Fixed a bug in the initialisation which in some cases showed a weird value for the last point plotted
#Changed the fourth default chart colour (see HighchartsDefaults.js) from #DDDF00 (yellow) to #ed9b00 (yellowish gold orange)
#ExtraSensors: Corrected a bug for LeafWetness sensor
#Sysinfo: Memory information now shows swap device too
#Some minor corrections
 
==== Version 6.7.8 (02/01/2022) ====
#Changed RECENT keyword 'SolarRadiation' to 'CurrentSolarRad' (see [[Charts_Definition_Language_(CDL)|specification]])
#An equation now requires an Axis spec or gets default Axis Free. If the Axis spec is missing only a warning appears in the log
#Bug fix for case independency which in equations sometimes was not correctly handled. Plotvariables are now really case independent, even in equations.
H/T AndyKF650 who did spend some serious time on testing all corners of the ChartsCompiler!
 
==== Version 6.7.7 (24/11/2021) ====
#Website: Fix for the initialisation of the gauges. Now the gauges init is called after the settings of the CumulusUtils user parameters.
#A total of three patches have been released with improvements as output of a day of testing by AndyKF650 (Thank you Andy for the effort!). The patches will be assembled into the next - and probably final release - of the version 6 series. Version 7 will be from a technological point of view a very different and non-compatible version.
 
==== Version 6.7.6 (23/11/2021) ====
#Forecast: Fix for new Norwegian forecast URL
 
==== Version 6.7.5 (22/11/2021) ====
#Website bugfix: Now you get the moon rise and set times with the CMX moon image as well (apologies for my release management recently)
 
==== Version 6.7.4 (22/11/2021) ====
#The moondisc now can be chosen to be the CMX moondisc (See the [[Dashboard#The_Lunar_Disc|Wiki]])
 
==== Version 6.7.3 (21/11/2021) ====
Equal to 6.7.2 but this time packaged correctly and also working under Windows 7.<br/>
Version 6.7.2 is withdrawn because of a packaging error affecting the libraries. This causes a problem on Windows, as fas as it is understood only on Windows 7.
 
==== <s>Version 6.7.2 (20/11/2021)</s> ====
<s>A technical update related to ServiceStack.Text.dll (5.13.2) and Renci.SshNet.dll (2016.1.0.0)</s>
 
Withdrawn.
 
==== Version 6.7.1 (25/10/2021) ====
#A patch version to get rid of a disturbing '>' above the index file in the website
 
==== Version 6.7.0 (25/10/2021) ====
#Infrastructure: Update to .NET Framework 4.8, Update of MySqlConnector (1.3.14), ServiceStack.Text (5.12.0) and SSH.NET (2020.0.1)
#Website: Upgrade to Bootstrap 4.6.0
#gauges.js: Added a console message '''Gauges Init Done...'' to have an anchor for debugging
#Dashboard: Added an empty header to an empty pane (configration of dashboars)
#Maps: Corrected some logic which made it possible for website users to evade the map. Now it is again obligatory (http address and Lat/Lon are compulsory)
#ExtraSensors: For the command  line parameter ''ExtraSensors'', now the ''CompileOnly'' parameter is  implicit. This means that now the command ''utils/bin/cumulusutils.exe ExtraSensors'' is enough to create the resulting ''extrasensorscharts.txt''
#ExtraSensors: The Extra Sensor identification string in strings.ini is now silently transferred directly to the [Compiler] section in the CUlangXX.ini file so that the legend display is immediately understandable without user interference. Any later change to that string has to be made through the language file. With a total reconfiguration of the Extra Sensors it is best to delete all Extra Sensor parameters in the language file compiler section.
 
==== Version 6.6.5 (14/10/2021) ====
#Technical: Upgrade of third party libraries (ServiceStack.Text; MySqlConnector; Renci.SshNet).
#Charts: Corrections on Daily Rain, Temp Sum, Growing Degree Days and Thermal Seasons charts for situations where not enough data exist to either create the moving average or the chart as a whole. As a work around you may simply switch the chart off until you have enough data, typically the Moving Average period (for the daily rain or EVT charts) or the first day of the year is valid start day (for the agricultural charts). '''This is only relevant if you are a new user of CMX and typically have less than a year of valid data.'''
#Charts: Code correction when data for a month does not exist in the statistical charts per month. Added a semicolon to make console logging possible (yes, semicolons are relevant in javascript).
#Technical: Initialisation of the gauge parameters was erroneously removed during the previous version 6.6 edits. Sorry for that.
#Dashboard: Now it is possible to move the Wind Gauges individually as well. See [[dashboard]] for an explanation. Note that to move events as well you need the [[ChartsCompiler]], if you are a starter in CDL, please use the ''CutilsCharts.def'' from the distribution.
 
NOTE: this release requires to replace fully the contents of the utils and the utils/bin directory!<br/>
NOTE: this release definitely requires a full non-thrifty run to get the all generated code in line!
 
==== Version 6.6.1 (12/10/2021) ====
#Fix: If either CUsermenu.txt or CUserAbout.txt does not exist, the realtime.txt will not  be read. You can either install this fix (only the executable is required) or create those (empty) files in the webroot.
 
==== Version 6.6.0 (11/10/2021) ====
#Compiler, AirLink, ExtraSensors: modules now behave properly under thrifty (meaning they will not update the code).<br/>Changes to the configuration as always will require a non-thrifty run.
#Internal: Finally unified all the ajax calls to the latest standards (users will not notice I hope but please report on any anomaly).
#Records: Fixed a bug for a translation tag for the Wind Run Distance. Now it shows correctly distance i.s.o. speed.
#General: Fixed an issue with certificates (Let's Encrypt) with the [https://community.letsencrypt.org/t/openssl-client-compatibility-changes-for-let-s-encrypt-certificates/143816 transition to OpenSSL 1.1.0]. See also [https://cumulus.hosiene.co.uk/viewtopic.php?f=14&t=19753 this thread] on the forum and also [https://cumulus.hosiene.co.uk/viewtopic.php?p=157268#p157268 this thread on Windy], note you land on a reply by Mark containing a clear action on how to deal with RPi (what is valid for Raspbian 8 you can also apply for Raspbian 9 & 10). If you don't, don't worry: CumulusUtils will still work.
 
The last point causes an additional requirement to use Mono 6 and up under Raspbian Linux. In itself this should not be a problem. If you update along [https://linuxize.com/post/how-to-install-mono-on-debian-10/ these instructions] you should  have no problems. If Mono is on a lower version this is automatically detected and where required, specific access to https servers is avoided. This all is only required for the CumulusUtils user map so however unfortunate that you will be missing the map and won't be on it with Mono 5 and lower, all main functionality of CumulusUtils won't be touched.
 
==== Version 6.5.2 (16/9/2021) ====
#ExtraSensors: bug fix for the logic when extra sensor logging is off in CumulusMX and you're generating a website
#AirLink: bug fix in the filename for the ExtraSensors and AirLink logfile when chart period crosses a month boundary
 
==== Version 6.5.1 (16/9/2021) ====
#ExtraSensors: updated the layout of the table in the dashboard and text and background colour of the header now follow the general dashboard header settings
#ExtraSensors: Added  some additional logging while writing the ExtraSensors Charts code
#ChartsCompiler: The Free axis (dimensionless) now has the "ChartsId + dimensionless" as axis title such that the user can give his own description (and unit) through the translation
 
==== Version 6.5.0 (13/9/2021) ====
#Release of the Extra Sensors module. For the functionality see [[Extra_Sensors|the Wiki]] and the notes below, down to 6.1.2
 
==== Version 6.5.0 beta 3 (13/9/2021) ====
#Modified the text colour of the Extra Sensors table to follow the menu text (as the colouring follows the menu colouring)
#Revisited the reading of the ExtraSensors logfile to avoid double data (and an annoying horizontal line)
#Revisited the reading of the AirLink logfile to avoid double data (and an annoying horizontal line)
#Cleanup of the Airlink and ExtraSensors logfiles will not be on the basis of CreationTime but on the basis of LastWriteTime
 
==== Version 6.5.0 beta 2 (12/9/2021) ====
#Detection of a CO2 sensor falsly took the CO2 concentration as a double where it must be an integer => corrected, CO2 sensor should no longer be falsly detected (remember [https://www-users.cse.umn.edu/~arnold/disasters/ariane.html Ariane 5] :? ).
#The extrasensorsdata.json was searched in the CumulusRealTimeLocation which was not correct, cumulusutils specific datafiles are always in the webroot. => corrected.
#Extra sensors are now also detected as NOT PRESENT when their entry in strings.ini is EMPTY
 
==== Version 6.5.0 beta 1 (9/9/2021) ====
#AirLink: Clean-up AirLink logs can now be configured through parameter ''CleanupAirlinkLogs''. Only two months of data will be kept when clean-up is active.
#Internal/AirLink: the airlinkrealtime.txt is now generated with the rc=y to create the decimal point. For an update you need cumulusutils.js library so do at least one non-thrifty run.
#ExtraSensors: Clean-up ExtraSensors logs can now be configured through parameter ''CleanupExtraSensorslog''. Only two months of data will be kept when clean-up is active.
#ExtraSensors: Limited beta 1 release of ExtraSensors module.
 
==== Version 6.1.2 (2/9/2021) ====
#Bug fix: NOAA - On the first day of a month it does no longer try to display the NOAA report of that month (which caused a failure) but it displays the report of the previous month.
#Internal: Reading monthly logs gained roughly 20-30% speed by doing things differently, especially important for long time series and minute sampling stations
#Internal: Optimisation of AirlinkLog reader and Dayfile reader
#Extra Sensors: Created the possibility to show the [https://maps.sensor.community/?nowind#2/0.0/0.0 Sensor Community] map from the ''Extra'' menu. The map will be centred on the Latitude/Longitude of the station and displayed on a reasonable zoom level and without the wind layer (see [https://meteo-wagenborgen.nl/ my site for a demo]). The user can then zoom in/out and possibly activate the wind layer. No other sensor.community processing is done, the user is repsonsible for actually uploading its sensor data to sensor.community outside CMX environment.
 
Inifile parameters:
[ExtraSensors]
ExtraSensors=false
ParticipatesSensorCommunity=true
 
Of which ''ParticipatesSensorCommunity'' regulates the menu-item of the sensor.community map and ''ExtraSensors'' for the moment has no effect.
 
==== Version 6.1.1 (24/8/2021) ====
#Bug fix: Certain information was not in the logfile which made life quite difficult if an error occurred.
 
==== Version 6.1.0 (23/8/2021) ====
#All modules: Mentions of inspiration moved to the About/CumulusUtils section of the menu.
#All modules: preparatory work for Extra Sensors, only to decide hoew the userinterface will be.
#All Charts: The chart container now has a General parameter: ''ChartContainerHeight=650'' giving it a standard height for all chart occurrences. For website users this does not really matter (the default value  is what it was) but those who use Graphs and/or the ChartsCompiler as a module will see an effect and they will be able to set the height value to what is wanted for their site. You can remove other (old) occurrences of ''ChartContainerHeight'' (may be multiple in other sections) from the inifile.
#All Charts: All charts are now boxed with the thin line with curved corner for uniform appearance. This is also valid for modular use and may require slight adjustment of your site.
#WindCharts: Added a section to the Wiki on how to deal with the labels for an 8 section weatherstation (default is 16)
#RainCharts: Rewrote the calculation for the reference lines of Station Average Yearly Rainfall. Now incomplete years (less than 365 days) do not count.
#RainCharts: StdDev range for the station average now can not become less then zero
#Maps Wiki: The & (ampersand) character is forbidden in the ''LocDesc'' parameter in the section [Station] in Cumulus.ini because it breaks the cgi-bin perl procedure
#AirQuality: All references (and internal variable names and (output) file names) with AirQuality have been redone with AirLink to prevent future misunderstanding with Extra Sensors. So: I changed the output file to airlink.txt
#Inifle parameter: Changed the inifile ''section AirQuality'' to ''section AirLink''. You may want to rename the section to prevent reconfiguration of the AirLink.
#Language file: Changed the parameter ''AirQuality'' in the ''section Website'' to ''AirLink''. '''NOTE''': the '''section AirQuality''' in the language file remained the same because it is generic!
#Website: Added menu item Extra and moved ''AirLink'' (was: ''AirQuality'') to it. This in preparation for Extra Sensor handling
 
==== Version 6.0.1 (07/08/2021) ====
#MeteoCam: Added labels for MeteoCam page radio buttons to the Language file (section Website) to be translated by the user
#Dashboard: Added ''Feels Like'' to the Dew-Gauge
#ChartsCompiler: The ALL Plot variable ''WindSpeed'' has been modified to ''HighAvgWindSpeed'' to prevent conflict with the RECENT WindSpeed variable (See [[Charts_Definition_Language_(CDL)|CDL]])
#ChartsCompiler: Corrected the equations for Psat[....] in the Equations section of the ''CutilsCharts.def'' (example in the distribution).
#ChartsCompiler: Added the raw pwsFWI charts for RECENT and ALL in the ''CutilsCharts.def''.
 
NOTE: ''gauges.js'' and ''language.js'' have changed so you need to copy all i.s.o just the executable and run at least once without thrifty! You may remove the js and css files from the utils directory after this first run to prevent successive redundant uploads.
 
NOTE: the ''feels like'' text(s) in language.js have not been translated for all languages. You may send missing translations by PM and they will be added in future distributions
 
==== Version 6.0.0 (21/07/2021) ====
#ChartsCompiler: Finalisation.
#Website: Added SolarHours to the Solar text panel
#Website: Made the position of the panels user definable (See the new [[Dashboard]] Wiki page)
 
==== Version 5.6.2 (25/06/2021) ====
#Misc Charts: Fixed bug in counting days in thermal season chart.
#Misc Charts: Fixed bug in thermal season chart, it now works correctly on the southern hemisphere. (Tip: use modified thermal boundaries to see useful seasons for your latitude)
#Misc Charts: Set the default for ''Thermal Seasons chart'' to false
#ChartsCompiler: Implemented the POW function (raise a double to some power: POW(number, power). Implemented as Math.pow javascript function
#ChartsCompiler: Implemented the SQRT function as Math.sqrt function
#ChartsCompiler: Added equations and charts to the CutilsCharts.def
#ChartsCompiler: Implemented multiple equation subtitutions e.g. (Avp stands for : Actual Vapour Pressure):
 
      Psat2008 EVAL [ 6.112 * EXP(17.62*Temperature/(243.12+Temperature)) ]
      Avp Eval [ Humidity / 100 * Psat2008 ]
      AppTemp Eval [ Temperature + 0.33 * Avp - 0.7 * WindSpeed / 3.6 - 4.0 ]
 
==== Version 5.6.1 (17/06/2021) ====
#ChartsCompiler: Fixed bug in counting brackets in equations under some conditions.
 
==== Version 5.6.0 (13/06/2021) ====
#MeteoCam: First release of a simple MeteoCam (Webcam) module. See [[MeteoCam|Wiki]].
#ChartsCompiler: Lines starting with a semicolon [;] are now treated as comment.
#ChartsCompiler: Equations section added (see [[Charts_Definition_Language_(CDL)|wiki for CDL]]) and they can be substituted in other EVAL equations
#ChartsCompiler: EVAL and STATS now work for both the ALL and the RECENT ranges
 
NOTE: The combination of the EQUATIONS block and the EVAL of PLOT makes it possible to evaluate more complex (as in meteorological) Equations. The Possibility of combining Plotvariables and calculations makes it possible to evaluate different approximations for e.g. Dewpoint. Both clarified by the example below. The release contains as usual a complete set of test charts. Sometimes with meaning, sometimes just for testing. This set of test charts is an example and a test. Nothing more.
 
Equations
  test1 EVAL [ Humidity/100 * 6.112 ]
  test2 EVAL [ EXP(17.62*Temperature/(243.12+Temperature)) ]
 
; Documentation:
; https://iridl.ldeo.columbia.edu/dochelp/QA/Basic/dewpoint.html
; Compare the Dewpoint from Cumulus with a calculated approximation
; Later I will enter the Cumulus Calculation and have the Dewpoint be produced by the Davis station
; Nice comparison
;
Chart MyDewpoint Title Dewpoint Calculations in CDL
  Plot RECENT Dewpoint
  Plot RECENT CalcDewpoint EVAL [ Temperature - ((100 - Humidity)/5) ] Axis Temp
;  STATS Dewpoint SMA colour green
EndChart
 
Chart MyPressure Title Vapour pressure calculations in CDL
  Plot RECENT Pressure
  Plot RECENT MyActualVapourPressure Eval [ test1 * test2 ] Axis Free
EndChart
 
==== Version 5.5.2 (06/06/2021) ====
#pwsFWI: the Current pwsFWI button now has forced text colour (not inherited by the background)
 
==== Version 5.5.1 (03/06/2021) ====
#Compiler: Value arrays need to be reinitialised when the chart remains open and has its periodic (ftp upload frequency) refresh.
#pwsFWI: the Current pwsFWI button moved to the Left Header Text position to improve handling on a portrait held tablet
#General: Provided for non-contiguous data series (missing years and/or months).
 
==== Version 5.5.0 (29/05/2021) ====
#Distribution: file ''CUabout.txt'' has a name change: CUserAbout-example.txt. CUserAbout.txt - if it exists - will be automatically uploaded with the package
#Distribution: file CUsermenu.txt will be automatically uploaded if it exists
#Distribution: file ''CUlicense.txt'' has been removed and replaced by the file LICENSE (with identical content to the website menu choice)
#Compiler: Errorhandling of Expression in case of error, now gives an error in the definition of the charts and fallback to the default charts (it was a warning)
#Compiler: STATS and PLOT are now handled as equal entry  points of the PLOT section of the CHART (see prev version of CDL image to appreciate the difference)
#Compiler: a PLOT variable may now have a non-keyword name but if so, it '''MUST''' be followed by an equation which contains a valid Plotvariable, if not an error is generated.
#Compiler: And if a PLOT has an Eval equation it '''MUST''' now have a non-keyword name to prevent confusion and make a unique legend entry (useful for modification or translation)
#Compiler: Added the function LN (being the natural logarithm of its argument)
#Compiler: Added the function EXP (being the power function with base ''e'')
#Compiler: All Plotvariables can be used in one single equation to be combined with operators and functions '''NOTE: this must be seen as beta function''' as it is impossible to check all combinations of variables, operators and functions. I don't expect this to work flawlessly although confident. Just play with it and provide me with observations and questions for functionality.
#Compiler: The SUM function can only be used once per chart
#Wiki: Updates conform development (please notify voids or unclarities)
 
'''NOTE:'''
#Because meteo-equations can reach a certain complexity (definitely when written on a single line) a change is considered which should  make it possible to use Plotvariables as intermediate calculations or have a definition of partial equations (not plotted) which you might use in Plot. As an example (see the last chart below) One might consider calculating a dewpoint with the Actual Vapour pressure as an intermediate equation.
#A second change which is considered is making the EVAL and STATS available for the RECENT parameters as well
However, the side effects of the above may be larger than expected, so it requires some study. In the mean time : have fun!
 
'''NOTE:'''
All calculations and array handling in the generated code are totally unsophisticated and non-optimised. This will only change slowly as performance is astonishingly good, beyond expectations, even on my old tablet and phone. Performance reports are welcome.
 
Below you find three test charts as examples to show what is now possible (the full testset is as always in ''CutilsCharts-example.def'' in the distribution and viewable on my site):
 
  CHART DailyTemp TITLE Temp with statistics offset 5
    PLOT ALL AverageTemp colour pink
    PLOT ALL sumAverageTemp EVAL [ ln(Sum(AverageTemp-5)) ] COLOUR green AXIS DegreeDays
    STATS AverageTemp SMA COLOUR crimson
  EndChart Output Statistics.txt
 
  CHART DailyRain TITLE Rain with statistics
    PLOT ALL RainFall colour CornflowerBlue as column
    PLOT ALL sumRainFall EVAL [ exp(ln(SUM( RainFall))) ] COLOUR crimson AXIS Free
    STATS RainFall SMA colour green
  EndChart
 
  Chart MyDewPoint Title Dewpoint calculations in CDL
    Plot all minBarometer
    Plot all maxBarometer
    Plot All ActualVapourPressure Eval [ MinHumidity/100 * 6.112 * EXP(17.62*AverageTemp/(243.12+AverageTemp)) ] Axis Pressure
  EndChart
 
==== Version 5.4.0 (21/05/2021)) ====
#Language: Create a distinguishable legend in the chart for the columnrange variable (section [Compiler] in CUstringsXX).
#Compiler: Implementation of keyword EVAL(uation) of an expression for a PLOT with any weather variable.
#Compiler: Implementation of the STATS keyword which will plot a statistic on any weather variable
#Compiler: Implementation of the SUM function for the EVAL keyword
#Compiler: Implementation of the SMA ([https://en.wikipedia.org/wiki/Moving_average#Simple_moving_average Simple Moving Average]) statistic as first statistic function.
#Compiler: Elaboration of Error messages.
 
Example code for the EVAL and STATS keywords:
  CHART DailyRain TITLE Rain with statistics
    PLOT ALL RainFall colour CornflowerBlue as column
    PLOT ALL RainFall EVAL [ SUM( RainFall ) ] COLOUR crimson AXIS Free
    STATS RainFall SMA colour green
  EndChart OUTPUT Statistics.txt
 
Which results in:
 
[[File:Schermafbeelding 2021-05-21 154949.jpg|center|Use of EVAL and STATS in the ChartsCompiler]]
 
==== Version 5.3.8 (18/5/2021) ====
#Fix : A fix in errorhandling for a condition which occurs only on Win7 and has been introduced in 5.3.0 or a bit later, h/t @meteo19.
 
'''Update is advised!'''
 
==== Version 5.3.7 (15/5/2021) ====
#Misc Charts: Fixed a bug in the titles for the agricultural charts, where the parameters data in the Title were showing fixed values
#Maps: Send signature file only once per day (parameter [Maps] DoneToday added)
#ChartsCompiler: Added DAILY range specifier (See [[Charts_Definition_Language_(CDL)|CDL]])
#ChartsCompiler: DAILY or ALL charts now have different initial rangeselector: DAILY has 1 month, ALL has 1 year
#ChartsCompiler: added ''columnrange'' as type for variables which have max and min values (see [[Charts_Definition_Language_(CDL)#Graph_Types|CDL Graph Types]] for some implicit semantics)
#Added MySQL as a data source alternative to the original datafiles (usage: disadvised and undocumented)
 
NOTE: In the search for performance improvement and efficiency the MySQL usage has been implemented and experimented with. The conclusion was that MySQL will not serve a better performance in the context of CumulusUtils. I decided to take another route to stay within the the design goals of CumulusUtils.
 
NOTE: The ColumnRange type specifier was already on the roll and was implemented in the compiler after [https://cumulus.hosiene.co.uk/viewtopic.php?f=40&t=19360 an idea by @buffaloseven] and a technical hint by @beteljuice: H/T!
 
Example code for the ''ColumnRange'':
 
CHART DailyTemp TITLE Daily Temperature with ColumnRange
  PLOT DAILY AverageTemp colour green As ColumnRange
  PLOT DAILY AverageTemp colour black As spline
EndChart OUTPUT ColumnRange.txt
 
Which results in:
[[File:Avergare Temeprature with range.jpg|center|Average Temperature with ColumnRange]]
 
==== Version 5.3.6 (06/05/2021) ====
#Maps: Some users run Cutils output in iframes. Some recent modifications in Maps were not correctly handled in iframes. That has been corrected.
#Maps: Some users run Cutils output in iframes. Some recent modifications in Maps were not correctly handled in iframes. That has been corrected.
#ChartsCompiler: The  runtime system now handles click events only for the Home page charts (the click event system will need a bigger overhaul in future)
#ChartsCompiler: The  runtime system now handles click events only for the Home page charts (the click event system will need a bigger overhaul in future)
#ChartsCompiler: OUTPUT is now out of beta
#ChartsCompiler: OUTPUT is now out of beta
Unknown issue: the NOAA reports are not shown on a Samsung tablet but do work elsewhere. Other observations are welcome. An unknown additional click event is generated. Currently looking into.


==== Version 5.3.5 (02/05/2021) ====
==== Version 5.3.5 (02/05/2021) ====

Navigation menu