This page contains the complete release history of CumulusUtils as a reference. It is not meant to be a linear read but should be searchable.

Current Development (Version 5.4.1 (xx/xx/2021))

  1. Compiler: Errorhandling of Expression now leads to an error in the definition of the charts and fallback to the default charts (it was a warning)

Version 5.4.0 (21/05/2021))

  1. Language: Create a distinguishable legend in the chart for the columnrange variable (section [Compiler] in CUstringsXX).
  2. Compiler: Implementation of keyword EVAL(uation) of an expression for a PLOT with any weather variable.
  3. Compiler: Implementation of the STATS keyword which will plot a statistic on any weather variable
  4. Compiler: Implementation of the SUM function for the EVAL keyword
  5. Compiler: Implementation of the SMA (Simple Moving Average) statistic as first statistic function.
  6. 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:

Version 5.3.8 (18/5/2021)

  1. 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)

  1. Misc Charts: Fixed a bug in the titles for the agricultural charts, where the parameters data in the Title were showing fixed values
  2. Maps: Send signature file only once per day (parameter [Maps] DoneToday added)
  3. ChartsCompiler: Added DAILY range specifier (See CDL)
  4. ChartsCompiler: DAILY or ALL charts now have different initial rangeselector: DAILY has 1 month, ALL has 1 year
  5. ChartsCompiler: added columnrange as type for variables which have max and min values (see CDL Graph Types for some implicit semantics)
  6. 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 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:

Version 5.3.6 (06/05/2021)

  1. Maps: Some users run Cutils output in iframes. Some recent modifications in Maps were not correctly handled in iframes. That has been corrected.
  2. 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)
  3. 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)

  1. Charts: bug fix: Agricultural charts now handle few data and no start on January (or July first) correctly
  2. Charts: Agricultural/Seasonal charts now start correctly on July 1 in the southern hemisphere (H/T @mcrossley)
  3. Charts: graphs which are switched off now not only won't be present in the menu but they won't be generated either (reduction of size of the output, time gain)
  4. ChartsCompiler: Output can be defined separately for each chart. See Charts Definition Language and the ChartsCompiler. (bêta for the OUTPUT specifier only)

Version 5.3.3 (27/04/2021)

  1. Charts: added the third Agricultural chart showing the proportional distribution of the thermal seasons over the year (H/T @Pes for the idea).
  2. Website: Added the Wiki-link to the About menu
  3. pwsFWII: Changed the reference for the scientific background to the Wiki
  4. FTP issue: lack of TLS session resumption support in FluenFTP.
  5. The previous point led to a major overhaul of the FTP / Map situation:
  6. => no more regular FTP in the Map module, use is made of a HTTP POST / CGI handling of the signature file
  7. => everybody wanting to use the map can download https://meteo-wagenborgen.nl/maps.txt and include that the normal way in their website (it is done automatically through the software)
  8. => For the normal internal FTP usage, FTP and FTPS protocols remain supported but in case of server issues the only option is to go to SFTP
  9. => Unfortunately the logfile does not accept UTF8 characters so you may get confused, but be assured they are handled well in the Map context

version 5.3.0 (17/04/2021)

  1. Manual: Replaced the README with the Wiki (https://cumuluswiki.org/a/Category:CumulusUtils). All articles are in place. In some foreseeable future the README will get different contents, this is the last release of the manual.
  2. Several review quality modifications as a result of the writing of the Wiki.
  3. Infile parameters: added DoLibraryIncludes to have an unambiguous parameter to determine whether or not to include the highcharts libraries and/or Leaflet library when using e.g. Graphs, Maps and the compiler as a module outside the Website Generator. NOTE: for module users this may have effect on you: CHECK!
  4. ChartsCompiler: Corrected an error in the document load of the compiler output for modular use.
  5. Inet: Changed logging around the FTP connection for all protocols
  6. Enabled the Thrifty qualifier for individual module runs.
  7. AirQuality: removed the helpbutton text when used as a module.
  8. Removed the use of Thrifty for the Map module. Parameter MapsPeriod has no more use (can be removed).

version 5.2.0 (08/04/2021)

  1. Added two growing season graphs (specific for Agriculture): Temperature Sum and Growing Degree Days in the miscellaneous graphs menu. Translations as usual. (suggestion h/t : @Pes)
  2. Unification of the maximum number of visible series when year-series are in a chart (e.g. Monthly Rain). Inifile parameter MaxNrOfSeriesVisibileInGraph is now valid for all charts of this type.
  3. FTPS now uses automatic choosing between Passive and Extended Passive (default when available) mode.
  4. FTPS protocol now accepts SSL 3.0 and TLS 1.0 as well. If any problems arise please let me know.
  5. Some minor bugs and typos.

version 5.1.2 (31/03/2021)

  1. Website: UserAskedData did not serve the AirQuality data under certain conditions
  2. Errorhandling: Added InnerException info in Map for the Upload of the signaturefile
  3. Website: Determine Daylights Saving Time for the station clock no longer requires a non-thrifty run of CumulusUtils.
  4. Map: FTP connection now uses Automatic passive mode (Extended or Standard depending on the server)

version 5.1.1 (23/03/2021)

  1. Website: Fixed a bug for double loading of the first chart
  2. Website: Finished the optimisation of library loading (defer)
  3. Heatmap: Fixed a bug with the All button for larger series

version 5.1.0 (22/03/2021)

  1. Heatmap: Added two more colours for a more dynamic display.
  2. Heatmap: For long series the display is split in pages of 10 years (default but configurable) with buttons Prev/Next and All to walk through the pages.
  3. ChartsCompiler: The Solar axis when used for only the radiation now has a scale fixed to the current theoretical solar maximum. The image therefore does not easily change.
  4. ChartsCompiler: added RECENT and ALL qualifiers for the Plot variables. Updated the definition specification. Option for the legacy DAILY charts is available but not now implemented.
  5. ChartsCompiler: Added HeatingDegreeDays, CoolingDegreeDays and EvapoTranspiration as Plot variables.
  6. ChartsCompiler: Added yAxis for DegreeDays and Evapotranspiration.
  7. ChartsCompiler: Added the infrastructure to add JSON data if CMX does not provide (like e.g. the Evapotranspiration).
  8. UserAskedData: Commandline parameter UserAskedData provides the JSONs for non provided data and encompasses missing weather data and AQ data (the old AirQuality Thrifty handling is now obsolete).
  9. Dayfile: Modified for additional parameters and global handling of the list.
  10. Monthfiles: Modified to read only one or two files to create a list for the subselection for the RECENT graphs (evapotranspiration and maybe other possibilities).
  11. Monthfiles: Addition of inifile parameter MonthsOfMiracleAndWonder. If CumulusUtils uses a Locale other than that of CMX the filenames for the monthly logfiles are formed differently. In case of trouble edit this string to create CMX matching filenames.
  12. Website: Moved to jQuery 3.6.0

version 5.0.4 (09/03/2021)

  1. AirQuality: patch release to account for a build error.

version 5.0.3 (07/03/2021)

  1. AirQuality: bug fix concerning the windbarbs in relation to the renewed unit handling (as introduced in 4.10.5).
  2. Graphs: Fixed a bug in the heatmap where a zigzag blue line was visible (sometimes in front, sometimes in back).
  3. Graphs: Added the HighchartsDefaults and HighchartsLanguage as the includes when graphs used as modules. NOTE: this will modify the look and feel of the graphs slightly, especially the axis.
  4. Internal: Review of all ajax calls.
  5. NOTE: when using graphs as a module, users can modify the height of the Graphs container by specifying in a style section of their template: #chartcontainer {min-height: 620px;}

version 5.0.2 (04/03/2021)

  1. WindGraphs: Acceleration of the WindRose creation by 35%
  2. WindGraphs: For 8 sector wind direction stations (e.g. Fine Offset) this is now also reflected in the WindRose.
  3. HTML: Added deblocking and deferring actions to speed up index.HTML
  4. Charts: bug fix for the Home charts: the default chart and the fall back every 10 minutes are now correct.
  5. Charts: Click events defined in the user definitions of the charts are now handled correctly.

version 5.0.1 (01/03/2021)

  1. Bug fix in Charts Compiler: Numbers in the Charts definitions are obligatory with a decimal point and not a free to use decimal locale separator. So the whole compiler and code generation now function under the Invariant Locale having the point as decimal separator.
  2. Barometer scales are now set to the stations min/max records to get the effect of a real barometer without you requiring to adapt for the ever changing scale.

version 5.0.0 (28/02/2021)

  1. FTPS: Release
  2. Graphs: Added the Charts Compiler - Release.
  3. See the separate document in the distribution.
  4. General: bug fix - unit for mile is mi and not mph
  5. General: Upgraded the Bootstrap base version to 4.5.2

version 4.10.6 (20/02/2021)

  1. FTPS: Fixed a bug where the port was not assigned when using FTPS
  2. Added SFTP access.
  3. Internal: Added the Pressure in the Month file List and made the list sorted on date (no direct effect for user).
  4. Internal: Made first steps to use MySQL/MariaDB as data source.
  5. Graphs: Added the Charts Compiler in zeta release (meaning it is there but you won't notice unless you really want to look at it). See my separate post.

version 4.10.5 (14/01/2021)

  1. Map: when using the map as a module it was lacking the jQuery library include. That is fixed now. Has been published before as 4.10.3 patch1
  2. Internal: Redesign and rewrite of the unit handling and conversion possibilities (when required). One of the first foundations of CumulusUtils I wrote at the start of Top10 and pwsFWI. However I got more and more annoyed by the way I handled it so I changed it from an aesthetic and a technical point of view. It has been tested but as you can imagine not all permutations have been handled, so keep an eye open and please report bugs. Especially when you use units other than km/h, °C, hPa and mm.
  3. Several smaller changes internal and in UI.

version 4.10.2 (05/01/2021)

  1. Website: Added some runtime logging for verification purposes only.
  2. AirQuality: fixed a bug where the realtime values contained a comma because of the locale, which was not changed to a point when required.
  3. AirQuality: Added optional Windbarbs to the Air Quality graphs (really great :D See meteo-wagenborgen for demo).

version 4.10.1 (01/01/2021)

AirQuality: xy zooming now works on a tablet too.

  1. Map: applied some 'beteljuice changes' to the map.
  2. General: made the first run for First Time Users more accessible and easier to understand. Console output is now default true at first run.
  3. Fixed a fatal bug in formatting the filename of the AirLink logfile.

version 4.10.0 (28/12/2020)

  1. Map: Reintroduced the Map module in CumulusUtils. Completely overhauled and rewritten. No command but an inifile parameter (Participant) governs a station to be on/off the map.
  2. AirQuality: Decided on the reference lines / Help button. EU-CAQI one hour series will act as reference line for all as explained in the text under the help button.
  3. AirQuality: Graphs now have xy scaling.
  4. FTP: Modified the FTP module such that if a user does not use FTP and even does not have it defined on its system, CumulusUtils will always continue and generate the output.
  5. Technical: various clean-ups and modifications in the Javascript runtime system.

version 4.9.0 (18/12/2020)

  1. AirQuality: Modified CA and AU AQI translation to the table view in the path to perfection.
  2. Removed the Map module completely from CumulusUtils.

version 4.8.4 (16/12/2020)

  1. Website: Added Day length at solar info.
  2. Website: fixed erroneous 'correction' of time and date separators in the javascript runtime for the dashboard.
  3. AirQuality: graphs are now drawn with spline.
  4. General: Now parameter NormalMessageToConsole also works on Windows.
  5. General: changed the level of several messages (INFO became ERROR; WARNING became INFO and INFO became VERBOSE etc...). In general will the visual appearance of the logging have changed so don't be surprised.
  6. General: If a timeout occurs in the FTP Upload procedure a stackdump originated. That has been corrected and should now be just an error.
  7. General: Improved error handling to prevent stackdumps (especially around FTP). This will be an ongoing exercise no doubt. The new FTP lib apparently demands different handling.

I can use feedback on messaging.

version 4.8.3 (9/12/2020)

  1. Patch for repair of fixed IP for development to localhost for communications with CMX.

version 4.8.2 (9/12/2020)

  1. General/Technical: Logging has been rewritten. Verbosity level can be controlled (None, Error, Warning, Info and Verbose) and messages are subdivided in those types.
  2. General/Technical: Progress messages can be written to the console.
  3. Technical: Age of the FTP lock file is now correctly determined outside the CET time zone.

version 4.8.1 (4/12/2020)

  1. AirQuality: Bugfix in JSON datafile creation when the CMX parameter DataLogInterval is larger than one minute.
  2. PwsFWI: On request of a lot of users the Current Value now has the possibility to be set to Today's value (when using prediction). See the parameter section of pwsFWI for CurrentIndexDay (possible values: Yesterday (default), Today)

version 4.8.0 (1/12/2020)

  1. Added graphing for the two AirLink sensors.

version 4.7.2 (24/11/2020)

  1. Parameter SslFtp did not exist in Cumulus 1; Made sure the default is correct on C1 / Win7 machines.
  2. Made sure FTP logging works on Win7 machines.
  3. Made sure Maps works on Win7 machines

version 4.7.1 (20/11/2020)

  1. Manual: Further fine tuning info UploadDir and CumulusRealTimeLocation.
  2. Technical: Reported issue to FluentFTP with respect to FTPS. Waiting for feedback/Solution. As a workaround downgrading the FluentFTP library to 32.3.1.0. works. It will remain so until certain upgrade is safe.
  3. Technical: Optimised some parts of the CumulusUtils javascript runtime.
  4. Technical: resolved a naming conflict between CumulusUtils and a library. The effect of this conflict is unknown, but it may account for some weird effects some users encountered.
  5. AirQuality: Bug fix adjustment decimal separator.
  6. AirQuality: When using thrifty, the module is not uploaded (not necessary because the info seen is realtime, no history data so far, this may change in future).
  7. AirQuality: The calculation of the AQI has been fine tuned and should be OK now both in CMX (build 3097) and CumulusUtils.
  8. AirQuality: The table width of AirQuality report must fit within its frame.
  9. Maps: The lockfile mechanisme has now been rewritten to take advantage of the FluentFTP library. The algorithm did not change, the use of FTP did. Keep an eye open for anomalies.

Version 4.7.0 (15/11/2020)(Withdrawn)

  1. Run: the executable and dlls have been removed from the CumulusMX directory to the utils\bin directory. You have to call CumulusUtils with the following command (being in the cumulus directory) utils\bin\cumulusutils.exe. This avoids conflict and synchronisation of version of dlls. Cumulusutils has now evolved into technical independency.
  2. Internal FTP: Made FTPS available (SFTP will follow);
  3. Internal FTP: Made FTP logging optional (section [FTP site], parameter FtpLog, default off)
  4. Map: Internal working has changed because the Map database stationswithutils.xml underwent a provider change because of the FTP changes.
  5. Technical: CumulusUtils is now using ServiceStack.Text.dll i.s.o. NewtonSoft.Json.dll (You may now remove Newtonsoft dll from the CumulusMX directory is you are on CMX version 3.9.1 and higher)
  6. Added a NOTE at the start of the manual to focus on the parameters CumulusRealTimeLocation and UploadDir to avoid confusion.

version 4.6.3 (11/11/2020)

  1. Maps: Reverted to old FTP system (only plain FTP supported) and corrected for provider change of Map database.

version 4.6.2 (6/11/2020)

  1. Website/AirQuality: Realtime files and general report files (like pwsFWI or YADR) are now read with the cache=false qualifier in the ajax call. This should improve user experience.
  2. AirQuality: reworked the interface for the order of the first columns.
  3. AirQuality: Fixed a bug concerning the normalisation of the AQI to the position of the indicator on the right panel of the table.
  4. AirQuality: Changed default country to US.

version 4.6.1 (4/11/2020)

  1. Website/AirQuality: If no sensor is present, the menu choice 'AirQuality' will not appear in the menu.
  2. AirQuality: The CA handling of the AQI is debatable and in my view incorrect. The AQI display will for the time being be like the US en needs to be set accordingly in CMX.
  3. AirQuality: Fixed a bug when generating the outside sensor. Both in the sensor code as in the airlinkrealtime.txt file (a space too many was generated).

version 4.6.0 (3/11/2020)

  1. Sysinfo: For the Raspberry Pi the CPU temp is now available.
  2. Air Quality: The first release of the Air Quality module, support for the Davis AirLink sensor and my own FakeAirLink system. Version 4.6 may be regarded as a beta to the AirQuality system as many things have to be optimised and maybe even rewritten. It is working fine though.

version 4.5.5 (26/10/2020)

  1. Website: Fixed bug for DST switch. Station time now is correct.
  2. Monthly logfiles: Fixed bug for existence of AirLink logfiles. Now they are ignored.

version 4.5.4 (4/10/2020)

  1. PwsFWI: Fixed bug for Current PwsFWI value on the menu bar.

version 4.5.3 (3/10/2020)

  1. Now all HTML of the individual modules are W3C Validator compatible (which includes some technical changes which I think have no impact |) ).
  2. Added the start of observation date to the record pages.

version 4.5.2 (2/10/2020)

  1. NOAA: Fixed a bug which generated a new file only the 2 day of the year i.s.o. the second day of the month when under thrifty.
  2. Website: Fixed the last HTML errors on the main site but you won't notice. The website generator is now W3C Validator compatible and should not generate errors.
  3. Website: If Google-Analytics is enabled (an ID is defined in GoogleStatsId) it is now possible to give the user (or just yourself) an opt-out possibility (PermitGoogleOptout=true), see the manual.
  4. Solar and UV are now separately configurable both for both dashboards.
  5. It is now a requirement for use of cutils as a module provider, to use UTF8 character encoding of the page the module is used in. Specifically for the character for degrees and other characters outside the standard range like all language specific characters (the website generator has this standard automatically).

version 4.5.1 (24/9/2020)

  1. Solar Graphs: Y-axis description changed from “Daily kilo Watt hour” to “Daily kilo Watt hour per m2”. Note that this is only the default, you have to change your translation yourself.
  2. Website: Finally fixed some HTML errors on the main site but you won't notice.
  3. Maps: Both the user map and the Station map now will always fit within the report view and will be responsive on other devices. The height of both maps is fixed to 750px.
  4. Stationmap: the zoomControl has been removed and scrollWheelZoom has been disabled. Effectively it has become a station map with zoom fixed to the setup used at generation time.
  5. Forecast SpotWx, Wxsim forecast both now have a 100% width and should be responsive. This does not work well on the Norwegian forecast so that one remains fixed 1000px. Wxsim has not been tested because I don't have it. Please be aware and report back if you need change to keep the result within the report view.
  6. UserMenu: If you wish to use an iframe to start up more complex URLs in the report view, I would advise to use “width='100%' frameborder='0' style='border: 0; height: 75vh;'”.
  7. This should keep this within report view limits on all devices (not saying it is useful on all devices). I could not get it to work on Effis though. Wxcharts does not do well on the multi plot view. For images please use “width='100%' height='100%'”

version 4.5.0 (23/9/2020)

  1. No functional changes just the version number and some additional code optimisations.

version 4.5.0 beta2 (22/9/2020)

  1. Bug fix for correct reading of older records (Solar radiation was introduced in version 1.8.5 and Current theoretical max solar radiation in version 1.9.1. Old logfiles do exist in the wild.
  2. Bug fix for variable interval.
  3. Additional logging for solar graphs wrt the variable interval.
  4. Performance improvement on the creation of the solar graphs wrt the determination of the variable interval.
  5. Number of error messages per datafile are maximised, currently at 10.
  6. Some minor changes to texts and default values of texts.

version 4.5.0 beta (20/9/2020)

  1. Addition of Solar graphs (Solar Hours and Solar Energy).

version 4.4.1 (13/9/2020)

  1. Station Map: bug fix for initialisation.
  2. Station Map: Added Beaufort in text below the wind arrow.
  3. Station Map: Map now centres between wind arrow and station marker.
  4. Three compass roses are now in distribution, no 1 being the default.
  5. One arrow now in distribution, no 1 being the default.
  6. Users can add compass roses and arrows at will. Naming convention in the manual.
  7. Manual – continuous work in progress - is reworked for the parameters which are now part of their functional section. All parameters should now be documented.

version 4.4.0 (11/9/2020)

  1. pwsFWI: removed “NOTE: Behavioural testing still under way!”. De module is now seen as correct and finished after a year of testing against field observations and EFFIS. Thanks to all who participated as early adopters (the first 15 you find here).
  2. Website: If all graphs of a group are switched off the corresponding menu won't appear in the main page.
  3. Station Map module is introduced (though not a real module because it can't function without the 'realtime' system). Run 'cumulusutils.exe website' without thrifty. See manual.
  4. Menu choice for Station Map is configurable
  5. Graphs: The colours contained a bug where it was not possible to empty the parameters GraphColors and WindRoseColors.
  6. Graphs: minor changes/improvements
  7. Thrifty: minor changes/improvements
  8. Prepared the monthfile records for use in other graph modules.
  9. Manual – continuous work in progress - is reworked for the thrifty system with focus on graphs.

version 4.3.1 (7/9/2020)

  1. GraphWind: Windrun Graph title now has AllTime (section General) text i.s.o. Year 0.
  2. Where distance is used as unit with the WindRun display (graph, YADR etc...), now the correct distance unit is displayed: km for km/h; km for m/s; mi for Mph; nm for Kts (as the Wiki says)
  3. GraphsWind and YADR: The class width for WindRun is now configurable (default 75) through inifile parameter: WindrunClassWidth (section: Graphs).
  4. NOAA: the report page may now start in the current month or in the current year. This can be configured therough parameter StartInCurrentMonth in section [NOAA].
  5. All modules: Checked for UTF8 output and corrected if necessary. Now all files are guaranteed UTF8 written.
  6. Restored the double quotes in the language string for CompasSectors which had been erroneously modified in version 4.1.0. This is only important for new users where the inifile parameters are initialised.
  7. Modified/added some logging messages.
  8. Some [minor] code corrections/cleanup.

version 4.3.0 (3/9/2020)

  1. Website: Modified the menu to accommodate separation of graphs from reports.
  2. Top10: Added total wind run per day.
  3. YADR: Added total wind run per day.
  4. YADR: Pression now give high and low values of the barometer
  5. Graphs: Changed the default colour scheme for the graphs with configurable colours (within the application). The HighchartsDefaults remains untouched. To try, comment out or remove the parameter GraphColors (take care if you modified colours yourself!).
  6. Graphs: Modified the module construction such that Wind graphing was added, currently consisting of the WindRose (which was deleted from Miscellaneous Menu) and a WindRun statistics graph.
  7. WindRose: the WindRose is no longer a separate module but belongs to the WindGraphs.
  8. Graphs: now partitioned into four submodules (which cannot be separately generated but which graphs can be switched off)
  9. Graphs: Thrifty component for Windrose has been removed. The WindRose now follows the Windgraph thrifty periodicity. If you wish to speed up generation for experimentation you can still set WindRose to false.
  10. Bug fix: Forecast – The Latitude and Longitude do not have a consistent format in Cumulus.ini. Sometimes it is three or four digits, sometimes it is 8 digits or more. Handling the coordinates as a string to be used directly to the URL of SpotWx with four digits failed causing a crash.
  11. This has been fixed.
  12. NOTE: The Windrun and other modules work for the units as defined in CumulusMX. Only for in some situations conversions must be applied. If you encounter such situation please let me know. So far no imperial unit installations have been tried. For the Windrun I don't know what the run distance is taken in if the windspeed is m/s. I assume km.
  13. Continued work on research of this Mono Error. So far no result. I appreciate any observation report. If it occurs on your system you will find files with a name like mono_crash.0.0.json in your cumulus directory. So far it does not seem to be damaging and everything seems to function as it should.

version 4.2.4 (26/8/2020)

  1. Adjusted the file read procedures to accommodate the new internal data format of CMX (to be released later).
  2. Forecast: The SpotWx has a Timezone component. The naming is different on Windows and Unix/Linux which is not understood by SpotWx. I therefore changed the timezone to the simple numeric representation of hours. It should now work everywhere.

version 4.2.3 (24/8/2020)

  1. Forecast: Added SpotWx as default Forecast system.
  2. Language: Added a language tag for WindRose – PeriodInWindRose (section Graphs) which is for the title of the period legend added in v 4.1.0. Note that I repeat the related release note of v 4.1.0: Language: Moved the words Year and Month from section Website to the General section (so in your language file make the same move and you're good).
  3. PwsFWI/Website: Made the pwsFWI current file configurable for the Betel-Kocher gadget (see manual pwsFWI).

version 4.2.2 (21/8/2020)

  1. Graphs: Fix for a HighCharts [library] modification which takes care of negative values on logarithmic scales (used in the Rain Graphs). This stopped working some days ago, with this version it is repaired.
  2. Tech: await now used on Forecasts.
  3. Some minor code corrections.

version 4.2.1 (18/8/2020)

  1. Fix for a bug which failed under some conditions to get Webtags for SysInfo and for Inifile parameters.

version 4.2.0 (18/8/2020)

  1. The module UserReports is now alpha.
  2. Graphs: Rain and Temperature Year/Month statistics graphs now start in the current month (that is the month in which the graphs were generated)
  3. NOAA: Adjusted NOAA report Width to 700 to avoid horizontal scroll bar.
  4. Language: Swedish sv-SE made available.
  5. Improved Usage message.
  6. Tech: Finalised / cleanup code changes for async/await and HttpClient.

version 4.2.0 beta (13/8/2020)

  1. Changed Norwegian from NO (which is not a language code, but a country code) to NB (Norsk bokmål) and NN (Nynorsk). This had already been effective in 4.0.0, but with the completion of language.js for the gauges and the publication of the translations on the Forum on 10/8 it is now a formal change (by sutne/Steinar, thnx)
  2. Added Webtag processing for inifile parameters.
  3. Added UserReports with Webtag processing, see the manual.
  4. Tech: reshuffle the HttpClient/internet code. This introduced also async/await processing and more or less threw some thing upside down. Therefore this release is done as a beta. If you experience issues, please notify me and fall back to the 4.1.0 release which you no doubt saved.
  5. Having said that I think the release is good enough and you are invited to play with the added webtag features.

version 4.1.0 (8/8/2020)

  1. Fix for some minor glitches, the first of it was released as version 4.0.1 (unregistered version).
  2. Website: Complete overhaul of the Skin/Theming options and system for the CMXgraphs to facilitate modification of the Dark theme (and probably also other themes) of Highcharts.
    1. Themes (included the principal default) added in distribution for the user to start modifying.
    2. Manual: complete and extensive rewrite of the chapter on Skin/Theme and HowTo. NOTE: any legal color format can be given in both the cumulusutils.ini and the HighchartsDefaults.js. This includes the transparency field.
    3. For the normal reporting in the ReportView, the colours are basically ruled by the parameters ColorReportviewText, ColorReportviewBackground, ColorReportviewTableData. This hold too for report subscripts. For possible links, format is taken from the footer: ColorFooterLink, ColorFooterLinkHover.
    4. Some changes in behaviour of the graphs for the default theme.
  3. PwsFWI: changed the color of the text Legend. It now obeys ColorReportviewText.
  4. Website/All: Fixed a bug where the graphs module was always generated under Thrifty condition (meaning sometimes they were not generated when that was intended even when CU was run only with graphs as argument).
  5. Website: The header is split in three parts. Center is the title and the location for 60%. Right and left have 20% and is governed by the inifile parameters HeaderRightText and HeaderLeftText.
  6. WindRose: As the WindRose has no time axis, the graph itself needed an indicator so a print would have a period indicator on it. The text colour of the period legend (let's give it a name) will always be the same as the Title color of the graph (which is rules by the theme)
  7. Language: Moved the words Year and Month from section Website to the General section (so in your language file make the same move and your good).
  8. PwsFWI: fixed a bug where, with less than 35 records in dayfile; Analysis on 30; and without prediction, the module crashed.
  9. Graphs: fixed a bug where, when the nr of periods for the moving average is less then the figure defined in the inifile, the data-section of the Highcharts graph code for the moving average, missed an opening '['.

version 4.0.0 (29/7/2020)

  1. This update touches most core files so please run a full update and upload all delivered files (to the lib and css library).
  2. General: Adapted CumulusUtils to take advantage of CMX 3.7.0.
  3. General: The consequences of the technical rift are described in the chapter Before and after version 4.0.0 of this manual.
  4. General: The biggest difference is that CMX MUST be running when CumulusUtils is activated. If not, Utils will run to completion but some information will not be available.
  5. SysInfo: The systeminfoTable.txt file no longer needs to be processed by Cumulus and its entry in 'Extra Webfiles' can be removed. It is now a module like any other.
  6. Website : The version information in the footer now shows information when a new CMX version is available.
  7. Website/Home : The CMX graphs are upgraded to the level of CMX 3.7.0 and now display conform the technique offered by CMX. This means that the lines displayed are defined in CMX and no longer in CumulusUtils causing the data not to be send if the parameter is switched off.
  8. Website/Home : If the inside Temp/Hum is activated in CMX, it still can be deactivated in CumulusUtils (though the data will be send)
  9. Website/Home: Daily temperatures now are smooth lines.
  10. Website/Home: The user can choose between lineWidth 1 or 2 through parameter HomeGraphLineWidth. The value holds for all graphs.

version 3.9.11 (26/7/2020)

  1. Website: Modified colouring of the ReportView to accommodate the Dark Themes:
    1. NOAA now have their own colour parameters – ColorNOAAText (def: Black) and ColorNOAABackground (def: #f9f8EB)
    2. To make the YADR table data independent because of the intrinsic colouring a new parameter has been introduced – ColorReportviewTableData
    3. To make the Beteljuice format for pwsFWI workable in the dark theme, the website now uses the text colour of the ReportView as text colour for the legend and the key
    4. The System Info now adheres to the ReportView background and text colours.
    5. Any subscript to reports (as HTML paragraphs) now adhere to the ReportView background and text colours. The links and hover definitions adheres to those of the footer.
  2. Map : A lockfile will expire after three minutes after which it will be regarded as orphaned and removed. Deadlocks because of orphaned lockfiles should no longer occur.
  3. Checked against CMX 3.7.0 – minor glitches, no issues.

version 3.9.10 (22/7/2020)

  1. Technical: Modification of the function for reading of XML data to counter a technical issue.
  2. Technical: Preparation for version 3.7.0 of CMX.
  3. Website: Added inifile parameter SiteTitleAddition in section [Website], default: empty string.
  4. Thrifty : If yesterday rain detected, graphs are always generated.
  5. Thrifty : Finalised and perfected the logic.
  6. General : For the Norwegian language the code NO is removed as accepted language and nn-NO and nb-NO are added.
  7. General : language.js (for the gauges) has now been adapted for the two official Norwegian languages: Nynorsk (nn) and Bokmål (nb).

version 3.9.7 (12/7/2020)

  1. Website / All: First step - optimized the Thrifty logic.
  2. Maps: Fixed bug in clean-up segment where an empty map was produced.

version 3.9.5 (4/7/2020)

  1. Website: The HTML LANG now really contains the locale.
  2. Map: In the battle against the random errors in the stationswithutils.xml data file, an FTP lockfile mechanism has been implemented. Now one and only one station gets access to that file. Other stations wait at most 8 seconds, if they don't get the lock, the Map generation is abandoned for this run (and if that happens often, the user is advised to use a less occupied time slot).
  3. Sysinfo: The report width is now configurable (Default is 700px)
  4. Sysinfo: Windows users can configure lines not to display. Run the command systeminfo and count the lines. Host Name is line nr 1. Fill in the section [SysInfo], for parameter SystemInfoLinesToSkip with comma separated line numbers e.g.: 7,10,11,20 That's it.
  5. Dashboard: Slightly tidied up in the sense that line breaks between the figure and the unit are prevented.

version 3.9.3 (27/6/2020)

  1. SysInfo: On windows the listing now stops when the line with pagefile.sys (excluded) is found. This should be valid for all languages. The listing now is left aligned with width: 700px, centered in the ReportView.
  2. Website: To increase consistency, the HTML LANG will contain the locale from the inifile (Read this and this). This will better satisfy search engines.
  3. Website: Clicking a gauge or text block in the dashboards, loads the corresponding graph into the ReportView.
  4. Made a message on the forum and an entry in the manual to draw attention to the possibility of changing the graphs appearance through a theme to complete user modification of CumulusUtils. (using this technique btw also holds for the modules and for CumulusMX itself).

version 3.9.2 (23/6/2020)

  1. Graphs/Website: Implemented the UseHighchartsBoostModule inifile parameter to enable/disable the Highcharts boost module. This to bypass a problem with Google Chrome and/or certain graphics cards. Note: You can also switching off the hardware acceleration of Chrome iso setting this to false!
  2. Small correction in Maps for Lat/Lon with comma in it (they will now show on the map)

version 3.9.1 (22/6/2020)

  1. Maps: Made Name, Website and Latitude/Longitude compulsory for website registration (and therefore for use of Website generator).
  2. Maps: If an entry is not updated within 7 days it is removed from the map (Cleanup).
  3. Graphs: Changed to the latest stable, made some minor corrections.
  4. Graphs: Included the boost module as a result of this discussion. This dramatically increases performance.
  5. General: Fix for a possible interference with the Cumulus inifile read/write.

version 3.9.0 (20/6/2020)

  1. WindRose: inverse of stacked display/legend now ruled by parameter WindRoseInversed: true/false, default false.
  2. Website: Overhauled the switching system of the dashboard. Although no functional change and even small technical change, this is a major improvement (with a little help from Mark).
  3. Dashboard: Instead of the ledVisible parameter which was removed in version 3.8.3, there are now thresholds which – if activated - trigger the led for that specific gauge. See the manual for description. Run once to make the parameters appear, fill in and run again.
  4. Any error in the locale/language given in the inifile now no longer aborts CumulusUtils, but sets it default to en-GB.
  5. Manual: NOTE – just below the TOC – on performance during update because of WindRose.
  6. General: Cumulus.ini is no longer read directly but a copy is made and afterwards deleted because of some suspected interference.
  7. Known issues: Several anomalies – Causes unknown and will be researched. This will be addressed later.
  8. if the threshold value is higher than the max value shown on the gauge, it is unpredictable which value it takes (specifically relevant for the wind gauge).
  9. For the rain gauge there is no indicator which value is set. If the value is higer than set, the led should start flashing. The ThresholdRainVisible parameter is used to enable the led.

version 3.8.4 (15/6/2020)

  1. YADR: Nr of rain days in the rain summary table now actually displays the nr of rain days.

version 3.8.3 (15/6/2020)

  1. NOAA: corrected the Thrifty generation method for the 2d day of the month iso 2d day of the year.
  2. Dashboard: Moved UTC down in Clock section.
  3. WindRose: Reversed the legend for the WindRose: low to high wind speeds will be listed top/down.
  4. Website: If the site remains open in the Home situation (The Cumulus Graphs reportview) it will refresh the graphs on the interval the user has defined in the CumulusMX inifile [FTP site] section, for parameter UpdateInterval. The timer for this action restarts if within the priod another report is viewed.
  5. Dashboard: Because of oscillations of the gauge needle around old and new values, the inifile parameter SteelseriesLedVisible now defaults to false and has been removed from the CumulusUtils parameter set. You may remove it from the inifile. If, in future, the problems around this parameter have been resolved, it may be reintroduced for use within CumulusUtils.
  6. DayRecords: Changed selection for formatting. Only noticable for users with less than two years of data (but you never know).
  7. DayRecords: Fixed the formatting for the HighGust column (which was missing, nobody noticed :) ).
  8. YADR: changed table fonts to 80% and normal (not bold) to accommodate smaller PC and tablet screens. Comments are welcome.
  9. Some code optimizations.

version 3.8.2 (6/6/2020)

  1. DayRecords: improved/corrected the Thrifty generation method.
  2. Top10Records: improved/corrected the Thrifty generation method.
  3. Site Stats: For the google statistics, now for the ReportViews event-statistics are gathered as well. More useful than page stats because it is only one page :)
  4. Some code optimizations.

version 3.8.1 (4/6/2020)

  1. Records: improved/corrected the Thrifty generation method.
  2. Logging: improved messages.
  3. General: using locale definitions for the two letter ISO language code (if it were only for the differences between en_GB, en_AU and en_US). IMPORTANT: Please read the NOTE on locales and Language parameter at the start of the manual!
  4. General: Language must exist as gauges translation. If not CumulusUtils exits.

version 3.8.0 (02/6/2020)

  1. Dashboard/Website: full parameter checking and verification before using the user settings. Messages are created when errors are detected. In case of invalid, setting parameter defaults.

version 3.7.5 (01/6/2020)

  1. Move log-directory to utils directory to prevent pollution of the CMX directory.
  2. Several minor code optimizations and changes which should go unnoticed. Some changes in logging for clarification, removal of erroneous messages.
  3. Manual: Updated the manual on the thrifty system general.
  4. Manual: Updated the manual on the thrifty system specifically for Yadr, NOAA, Records and DayRecords.
  5. Manual: added the modifying parameter values for the gauges.
  6. Manual: added the WindRose (had already been done partially in previous versions) and updated/corrected the whole thing a bit.
  7. Thrifty: Yadr now only generates and uploads the data files for the current year, the menu file only on 2 January of the current year (so the generation is now omitted as well).
  8. Thrifty: NOAA reader now only generated and uploaded on 2 January (Note: the data files are generated by CMX itself).
  9. Thrifty: Records is now only generated when a Yesterday record occurred.
  10. Thrifty: Graphs are now generated every 7th day from January 1 (so actually (DayOfYear MOD 7 == 0). Looking for a more sophisticated decision.
  11. Advise: For the website generator: run daily under Thrifty system.
  12. pwsFWI: Relative Humidity in the table is again displayed with an accuracy of two digits.

version 3.7.3 (30/5/2020)

  1. Dashboard: Added some configuration parameters for the gauges
  2. Thrifty system: fine tuned the top10 thrifty system
  3. Thrifty system: DayRecords dirty-bit system is now working so under the thrifty system, if – and only if – yesterday had a record, the file is written and uploaded.
  4. Modified manual (I would appreciate feedback if erroneous or incomplete).

Version 3.7.2 (29/5/2020 – not public)

  1. Dashboard: Added some configuration parameters for the gauges

version 3.7.1 (29/5/2020)

  1. pwsFWI: If both the Title and the SubTitle entries in the Language file are empty then no (empty) lines are produced.
  2. All logfiles are now to be found in the directory utilslog and they will have the name: yyMMddHHmmcumulusutils.log (sorts easily alphabetically) So that would be e.g. 2005271332cumulusutils.log. Logs will be kept for 2 days. This gives the possibility to run CumulusUtils many times per day (e.g. every 10 minutes for SystemInfo) and if you find a problem later in one of the major runs at midnight, you still have that log.
  3. Dashboard: changing the appearance of the gauges should now work.

version 3.7.0 (27/5/2020)

  1. Forecast: Added WXSIM as forecast system, see manual how to do it, please notify if additional possibilities exist.
  2. CheckOnly: increased performance by removing redundant writing to logfile. Now only markings and real error situations are logged.
  3. Dashboard: Colour of Up/Down-indicators for Temperature and Pressure now have their own parameters: ColorDashboardUpIndicator and ColorDashboardDownIndicator.
  4. NOAA: Year selection through drop down now adjusts months selectable.
  5. Dashboard Gauges: Gauges are now modifiable through the inifile parameters. See website inifile parameters.

version 3.6.9 (25/5/2020)

  1. Bugfixes for WindRose (accommodate a single quote in the subtitle, add a semicolon, remove comma at end of data)
  2. Changed Dashboard 1, Wind to better accommodate Latest winds, Average and Beaufort. Beaufort is now related to Average wind, not Latest measurement.
  3. pwsFWI: put a title on the report page to provide more clarity for newcomers to what they are actually seeing.

Version 3.6.8 (24/5/2020) – patch release for debugging.

version 3.6.7 (24/5/2020)

  1. Dashboard: In dashboard 1, now the Beaufort scale is shown in the Wind block with same background colour as defined in the YADR Wind module. Note that the wind speed / Beaufort shown is the latest wind speed reading (equivalent webtag: #wlatest)
  2. Thrifty: Under the thrifty system, the WindRose is only generated when upload is scheduled (second day of the month).
  3. Thrifty: Under the thrifty system, top10 is only generated (!) and uploaded when there is actually a new record (the file is 'dirty'). Only Yesterday is checked so a daily run is assumed.
  4. Thrifty: Under the Thrifty system, YADR only uploads the current year.
  5. PwsFWI: Added pwsFWI to the NAV-bar, just beside the LED. Click leads to the report. In the process, moved the current value to the ini-file as well. The pwsFWIcurrent.txt remains (same contents).
  6. pwsFWI: changed nr of decimals from 2 to 1. For the Beteljuice interface, made the borders round corners again under the Bootstrap system.
  7. CheckOnly: Added Monthly Logs to the CheckOnly command.

version 3.6.6 (22/5/2020)

  1. WindRose: the ZeroWind percentage is now shown for each period selected.
  2. WindRose: added footer when used as module.
  3. Monthly Logs: added extensive Exception handling to accommodate historical increasing record length (in relation to fields required)

version 3.6.5 (19/5/2020)

  1. General: Added the Thrifty qualifier for Website and All commandline parameters to economize on bandwidth (for subscription and mobile users). Description in the manual.
  2. WindRose: Added a check for data consistency concerning the internal data separators (governed by the locale). If any inconsistency is found an error message is written to the logfile, CumulusUtils exits and the user has to clean up the data directory.
  3. WindRose: Bugfix concerning the filelist of the monthly log files.
  4. WindRose: changed the Y-scale from fractions to percentage.
  5. Made some modifications to the manual for clarity.
  6. Created a section [General] in the CUstrings[xx].ini files. Some strings may move there requiring you to move the translation as well. I will try to minimize the translation effects but while in development phase it may be inevitable. I apologize beforehand.

version 3.6.2 (19/5/2020)

  1. WindRose: Added a check for data consistency concerning the internal data separators (governed by the locale). If any inconsistency is found an error message is written to the logfile, CumulusUtils exits and the user has to clean up the data directory.
  2. General: Added the Thrifty qualifier for Website and All commandline parameters to economize on bandwidth.

version 3.6.1 (18/5/2020)

  1. Maps: Added more exception handling to Maps, more specific for Internet Timeouts. If a Timeout occurs Maps cannot complete and returns iso stopping CumulusUtils.
  2. WindRose: Older Monthly logfiles miss the current windbearing and caused a crash. This has been corrected (see note under Calculation of the WindRose).
  3. WindRose: Now the month of March is also displayed.
  4. WindRose: Improved error handling and minor HTML correction.
  5. Records: Now the month of March is also displayed (yes there was a relation with the WindRose: I copied the menu code).

version 3.6.0 (17/5/2020)

  1. DayRecords: Numbers changed from 2 decimal positions to one.
  2. ShowSolar=false now also removed the solar pane on the first dashboard.
  3. Moved NextYear, NextMonth etc... Text tags to a section called [General]. Move your translation. You can delete the old tags (leaving them won't hurt)
  4. Beta release WindRose. See Readme and release post.

version 3.5.7 (16/5/2020)

  1. Manual: Correction on the handling of Norwegian forecast wrt hourly shift.
  2. Language: Forgotten strings added (See at end of sections)
  3. Language: Moved parameters Prev and Next Year from Website section to Yadr section. Please re-translate. This may happen once in a while because it is seen as an error for modular generation.
  4. Language: Modified gauges Language.js

version 3.5.6 (13/5/2020)

  1. Language handling: correction for single quotes outside javascript.
  2. Language handling: Dashboard now shows correct (according to language) decimal, time and date separators.
  3. Known issue: sometimes a separator works well on PC but gives a different result on the RPi under Mono. That is beyond control. (may occur in other languages as well so time separator has been fixed to ':' for everybody).

version 3.5.5 (12/5/2020)

  1. Last bit of language handling: the two letter code is used as locale for CumulsuUtils and for HighCharts for specific language handling.
  2. Bugfix: you can now use a single quote in a word in the translation system.

version 3.5.4 (11/5/2020)

  1. Finalized the language handling of CumulusUtils. The two letter ISO language code now sets the language independent of the locale of the machine where Cumulus/CumulusUtils runs. See the manual.

version 3.5.4 (11/5/2020)

  1. Added the third and last phase of the translation system for CumulusUtils.

version 3.5.3 (10/5/2020)

  1. Added the second phase of the translation system for CumulusUtils (third phase, translation of the Cumulus Graphs has yet to be done).
  2. Website: Sundisc has major corrections and will now work above (below) the polar circles.
  3. Added a second Forecast possibility: the Norwegian Meteorological Organisation (https://www.yr.no/) See README on howto.
  4. README: Some corrections
  5. Website known issue: if the moon is up for more than 24 hours, it is sometimes indicated it is down for 24 hrs and the other way around. Notified the author.

version 3.5.0 (7/5/2020)

  1. Added the first phase of the translation system for CumulusUtils.

version 3.4.1 (7/5/2020)

  1. Changed the Cumulus Graphs (the opening graph) to accommodate 'Feels Like'.
  2. Introduced ini parameters for Apparent, Feels Like, Wind Chill and Heat Index for the user to select show or no show of these temperature derivatives for human perception of the weather.

version 3.4.0 (5/5/2020)

  1. New module Forecast.

version 3.3.9 (1/5/2020)

  1. Graphs: bug fix for Daily Rain graphs. The max Yearly Rain Y-scale value: when the yearly value is (much) higher than the Normal or Station value it might get off the scale. A correction has been implemented.

version 3.3.8 (30/4/2020)

  1. Graphs: bug fix for the max Yearly Rain Y-scale value: the value is now correct.
  2. Graphs: bug fix for the reference lines for the total yearly rain: they now work.
  3. Website: Color can now be set for the menu toggler (parameter: ColorToggler).

version 3.3.7 (29/4/2020)

  1. Added ColorTitleBackGroundImage ini parameter to create more personalisation. The size of the Title header won't change though.
  2. Synchronize displayed version number with the distribution.

version 3.3.6 (28/4/2020)

  1. Website Color iniparameter bugfix for Menu Background.

version 3.3.5 (27/4/2020)

  1. Website Personalisation of colours now possible.

version 3.3.0 (25/4/2020)

  1. Website: The menu changed to a responsive Bootstrap 4 default Nav/Dropdown menu.
  2. Graphs: implemented the Rain statistics per month. Again this is in fact only interesting if you have a data series of at least 3 years.
  3. If there is no website in the entry for the Map, CumulusUtils aborts. This is specifically annoying if you want to generate a website.
  4. Major update for the README concerning the graphs and the inifile parameters.

version 3.2.0 (23/4/2020)

  1. The moon had another bug.
  2. And there are 60 minutes in an hour, not 24
  3. Graphs: implemented Temperature statistics per month. This is in fact only interesting if you have a data series of at least 3 years.

version 3.1.1 (22/4/2020)

  1. The moon now shows correctly on the Southern Hemisphere.
  2. Reference lines for Average rainfall are added to the daily rainfall graph.
  3. Changed the text Barometer to Pressure (see here)
  4. Website Gen. : Changed the menu layout a bit
  5. Changes the graphs into three separate .txt files: graphsrain, graphstemp and graphsmisc to prepare for the future with the year statistics per month for temperature and rain.

version 3.1.0 (18/4/2020)

  1. Created a special version of gauges.js to accommodate the switching of the dashboard. No user action required, the library will be installed during an update overwriting the old version of gauges.js.
  2. Added latitude, longitude and altitude information to the header.
  3. Added a green LED indication station status to the left side of the menu bar.
  4. Added the following ini parameters ShowInsideMeasurements and CumulusRealTimeInterval.
  5. Maps: entries are now required to have a website entry
  6. Known Issue:
  7. at startup some non-inhibiting errors appear in the console.
  8. ShowInsideMeasurement does work for the graphs, but not for the gauges

version 3.0.6 (14/4/2020)

  1. Bug fix release to solve an issue with includes of jQuery, Highcharts and Leaflet.

version 3.0.5 (13/4/2020)

  1. Bug fix release to accommodate an issue with sync/async Ajax reads of the new cumuluscharts code.

version 3.0.4 (13/4/2020)

  1. cumuluscharts partly rewritten, now as .txt file similar to other reporting. The effect is that the json datafile can now be handled like the realtime files, it uses also CumulusRealTimeLocation for the location. The buttons are replaced by a dropdown, the graphs are the same.
  2. Prepared for the ini parameter ShowInsideMeasurements (default false) for yes/no showing the inside temperature and humidity in the graphs (rest to be done later).
  3. Added 'Browser time' to the clocks and internally reworked the clocks such that now from ANY timezone (well, some aberration maybe), you see the times of sun/moon in local time of the station. Yes, Beteljuice had warned me that time in javascript is kind of a nuisance. He was right.
  4. Known issue: time of moonset is appr. One hr off when seen from west of UTC.

version 3.0.3 (11/4/2020)

  1. Times, sun, moon are OK now in all timezones. DST might disturb somewhere on the southern hemisphere, but I think it is OK.
  2. Moon phases are now [probably] correct. Respect for Keppler and Copernicus and anybody who ever set his mind to celestial bodies, programmer or not.
  3. Responsiveness is satisfactory now for the time being.
  4. Maps show directly when clicked and to correct zoom level.
  5. About and License adjusted to wish of community (comment welcome).
  6. Known issues:
  7. Cumuluscharts needs to be rewritten because of the hardcoded location of the json data files.

version 3.0.1 (8/4/2020)

  1. Added the ini parameter CumulusRealTimeLocation to provide for a user who uses more than one website. See my notes in the README!
  2. Known issues:
  3. the times are wrong in another timezone
  4. The moonphases do not show correct.
  5. Cumuluscharts needs to be rewritten because of the hardcoded location of the json data files.

version 3.0.0 (6/4/2020)

  1. Added the website generator. See the README for how to use that.
  2. Added Wind Run to the records page

version 2.4.6 (25/3/2020)

  1. Added the command CheckOnly, to only check the dayfile.txt for errors. Any detected error can be found in the logfile. The default for the iniparameter IgnoreDataErrors has been changed to TRUE. ToDo-list: add range checks on dayfile values.
  2. Added ini parameter GeneratejQueryInclude in the section General. Current default value is true.
  3. The ini-section [Data] has been moved to [General] (see the README) (you can remove the [Data] section manually).
  4. Maps: Added try/catch error handling for an irregular occurrence of a fault while looping through the XML data structure. At a failure in the XML file, CumulusUtils aborts so other modules in the same command won't be executed. You may rerun without the Mapson command to accomplish other modules. If you run Maps and it fails, please report in a PM and send the logfile with the report.
  5. WIP: the above points concerning the ini-file are related to the construction of a new website which will become part of CumulusUtils but also as a module. CumulusUtils will always exist as a module generator for other websites, but in the end a standard website will become part of it. Some minor changes may occur in the near future in preparation, but before the website will be available. A preview of the website can be seen.

version 2.4.5 (16/3/2020)

  1. Graphs: Optimised the Monthly Temperature and Monthly Rain graphs for speed and coding efficiency.
  2. Graphs: For the same graphs, the user can choose between the Normal reference curve and the Station Average reference curve. The choice is made in the ini file with the parameters:
  3. UseNormalTempReference
  4. UseNormalRainReference
  5. Please see section of ini-parameters
  6. Graphs: for the same graphs, if the Station Reference curve is chosen, automatically the area of the standard deviation which comes with the calculation of the average is depicted in light gray in the graph.
  7. NOTE: Normal is reserved for the reference mean for the last 30 years (which normally moves up 10 years per decade) as published by the national Meteorology agencies. As Rain and Temperature are the only measurements for which there exists a Normal curve in Cumulus these will be the only curves with this feature. See further the README.

Version 2.4.1 – 2.4.2 (12/3/2020)

  1. A bug fix on 2.4.0 (inclusion of jQuery library) and addition of a Clash of Average graph (non supported, may be removed later)

version 2.4.0 (12/3/2020)

  1. Addition of the 'All' command to generate all modules which use the dayfile (so excluding Maps and SystemInfo).
  2. Cleaned up the log generation from redundant entries.
  3. Modified the selection interfaces where necessary, addition of prev/next buttons (and moved it all to jQuery in the process).
  4. Added 'total yearly rain to date' as an entity and published it on the Records, Dayrecords pages and Daily Rain graph as cumulative amount.
  5. Reviewed tables (records, dayrecords, top10 and yadr), such that iframe should not be necessary. Settings are now width=100% (of the enclosing div) and max-width=1000px (to prevent stretching the whole width of large monitors). Please check.
  6. Removed the Climate module and integrated it with the Graphs module. Sorry, that was short lived. Please be prepared that this Graphs reporting part is Work In Progress and changes because of requests, thoughts and philosophies may have some effect in future.
  7. All graphs have become optional with the possibility to switch on/off through ini-file parameters in the Graphs section (I assume this self evident). NOTE: the graphs are generated, it is only the HTML menu choice which is off.

version 2.3.0 (8/3/2020)

  1. YADR: Fixed a bug where temperature of exactly -1 degree (C/F) was seen as invalid and no low temperature in the month summary was filled in.
  2. DayRecords/Records: Added and improved parametrization of the header texts. Please find in strings section in ini file to translate.
  3. Records: Applied colouring of header and record text analogue to top10 module using the top10 format from the ini file (30 day record retention time).
  4. Started a climate graphing module.
  5. Implemented temperature HeatMap for Climate Graphs.
  6. Implemented Climate statistics on temperature and Rain (to be possibly modified and or expanded to other measurements). Comment is welcome.

version 2.2.6 (5/3/2020)

  1. Corrected the relation between the header and the values for the wind measurements
  2. Fixed bug in drop down selection menu for records, dayrecords and noaa modules generation, where a crash occurred if there were no months to disable (pretty elementary error, sorry).

version 2.2.5 (4/3/2020)

  1. Addition of NOAA reports display (nothing new there, just part of CumulusUtils required for the future)
  2. The year/month selection where months must have data. So e.g. future months in the current year are greyed out and cannot be selected. Similar in the first year, or all years when just starting (for both NOAA and records module).
  3. Addition of Day Records module.

version 2.2.2 (27/2/2020)

  1. Optimisation of records module

version 2.2.1 (27/2/2020)

  1. Optimisation of records module
  2. Fixed a bug for display of month of March (all years)

version 2.2.0 (25/2/2020)

  1. Another minor legend correction in YADR
  2. Addition of the CumulusUtils version of a records page including some corresponding ini parameters (Strings section).

version 2.1.7 (28/1/2020)

  1. Correction on 2.1.6 for different units in YADR

version 2.1.6 (28/1/2020)

  1. Corrected the README where necessary
  2. Dayfile reading: Finalized the error handling of skipping the line containing the error. All info for each error will now be in the logfile.
  3. YADR: changed wind value format to one (1) decimal accuracy
  4. YADR: changed humidity values to zero (0) decimal accuracy
  5. YADR NOTE: Title of barometric values should contain ‘Average’. This has been added to the default but it won’t change automatically if it is already in your ini-file.
  6. YADR: the legends now also are correct for all units available (the only site where this can be seen/checked is “‘t Zandt”).
  7. Addition of Phil’s EasterEgg. Hint: check the cumulusutils.ini after run of 2.1.6 and read this thread backwards. Can’t be too difficult if you’re a regular follower.

version 2.1.0 (22/1/2020)

  1. Maps: Technical correction concerning refresh of station
  2. Reading Dayfile: Complete overhaul and creation of internal datalist
  3. Added: possibility to continue reading the data file in case of data errors (see README on cumulusutils.ini, section: Data)
  4. YADR: Correction for legend of Humidity and Pression
  5. Top10: Overhaul of selection/sorting mechanism (incomplete but working, three more items to go but these may be difficult to do in LINQ with just a few queries so... maybe not)
  6. Top10: Corrected an error in the output table and at the same time slightly modified the <Style>

version 2.0.3 (5/1/2020)

  1. Some code optimisation
  2. Graphs: Daily rain graph now has right Y-axis cross x-axis at 0
  3. pwsFWI: Number of records shown is now conform Analysis figure from the inifile or 30 otherwise. The number is including predictive days.
  4. pwsFWI: Unit for RH in pwsFWI webtable: % is removed in header
  5. YADR: Unit for RH changed to % (was deg. Celsius/Fahrenheit).
  6. All modules: Correction of effect of prediction in pwsFWI (had not been noticed by anybody so far ;)

version 2.0.2 (5/12/2019)

  1. Yadr: Corrected the colour key for rain table
  2. Corrected code in the inifile handling so Mono v4 can be used (see here, will not be permanent I hope).

version 2.0.1 (2/12/2019)

  1. Yadr: some bug fixes, removed the reference to Yadr.css
  2. Yadr: changed to white for the numbers in some cases to account for better readability of the numbers against darker colours.
  3. Yadr: Added Humidity.
  4. Yadr: Titles and fixed translatable texts are parameterized in the inifile in the section [Strings]. Parameter names start with Yadr.
  5. Graphs: changed the ‘Daily Rain’-graph to a stock-type graph to account for easier handling and zooming.

version 2.0.0 (29/11/2019)

  1. Yadr – Yet Another Dayfile Reader added as standard functionality. Read the README concerning the use (amount of datafiles and the use of the internal FTP)

version 1.9.7 (21/11/2019)

  1. Addition of Internal FTP upload. Read the README for explanation
  2. Fix for kocher (intermediate version 1.9.6).

version 1.9.5 (18/11/2019)

  1. Maps: Website will now be opened in a new tab (or window, depending on the configuration of your Browser)
  2. Code optimisation and error handling changes.

version 1.9.4 (17/11/2019)

  1. Maps: Added a last alive date to the marker popup, preparation for eventually a validity cleanup.
  2. Optimized the XML/Linq code.
  3. Added some error handling (e.g. for duplicate names). May not be complete yet but it requires the live run to evaluate.
  4. Removed MapBox libraries/reference and prepared for OpenStreetMap only. Waiting for response from OSM in relation to using the tile server.

version 1.9.3 (16/11/2019)

  1. Maps: if comma decimal separator in lat/lon then set it to point to have lat/lon handled correctly by the map java.
  2. pwsFWI: fix for colour of the pointer of 1.9.0 was refixed.
  3. Maps: Website entry for the popup is created in cumulusutils.ini

version 1.9.2 (15/11/2019)

  1. Maps: bug fix: now all stations show on map, not just the first one.
  2. pwsFWI: credit for the prediction must be in the correct

version 1.9.0 (15/11/2019)

  1. pwsFWI: Bug fix for the flashing of the pointer which takes the colour of the fifth prediction day but must have colour of the last calculated day (Current value).
  2. Introduction of module Maps.

version 1.8.4 (5/11/2019)

  1. pwsFWI: The prediction module can now be used with all units available in Cumulus. Although the interface always (unchangable) uses km/h, mbar, deg C and mm, it does no longer interfere with the normal readings of the user settings for the units.

version 1.8.3 (2/11/2019)

  1. Graphs: TempvsNOAA and RainvsNOAA now both work correctly at the first of month (they used to display Nul (0) as a first day value).
  2. The table of pwsFWI displays the numbers in CurrentCulture format (e.g. a comma as decimal separator in NL, a point probably in a lot of other places). This makes it easier to cut/paste to Excel or Google Sheets. Same holds for the Analysis csv file.

version 1.8.2 (2/11/2019)

  1. Graphs/pwsFWI: the degree symbol (again) is now OK everywhere.
  2. This is not a functional release but a maintenance release concerning a problem which occurred in Poland and France where the prediction in pwsFWI was aborted.

version 1.8.1 (31/10/2019)

  1. Graphs/pwsFWI: the degree symbol before Celsius or Fahrenheit is now encoded as Unicode 00B0 for javascript/Highcharts and as ° for HTML and should display always and everywhere it is required. Yes, it now truly is... (I hope)
  2. The observation about minimum humidity was correct and has been fixed. Now the lowest prediction of all three hour blocks is entered in the calculations and the prediction table (thanks to meteosangonera for looking deep into the system!)

version 1.8.0 (30/10/2019)

  1. Graphs/pwsFWI: the degree symbol before Celsius or Fahrenheit is now encoded as Unicode 00B0 and should display always and everywhere it is required.
  2. In Graphs, the Go button has been moved to the right side of the graph selector.
  3. In SysInfo, The Linux rPi OS now has a description e.g. Raspbian GNU/Linux 10 (buster) besides only the numerical version.
  4. pwsFWI: A predictive system - 5 days - has been created for pwsFWI. This is a relatively complex and major change. Please read the ReadMe on how to activate and use it.

version 1.7.2 (27/10/2019)

  1. In the Monthly Temp and Monthly Rain graphs, the MaxNrOfSeriesVisibileInGraph, now is valid for the most recent years iso the first years.

version 1.7.1 (25/10/2019)

  1. Initially in the Monthly Rain and Monthly Temp graphs only MaxNrOfSeriesVisibileInGraph series are shown. This ini-parameter defaults to 2. If you set it to a number greater than the number of series you have, all series are displayed;
  2. Created a new colour set to avoid conflict with the black normal series and create more contrast. Currently 13 colours are defined, more than 13 series start reusing the colours.
  3. The colour series are added to the Graphs section in the inifile so every user can change the defaults. If a graph does not use the default colours, it's colours will be hard coded and no users interference can be made.
  4. NOTE: comments are allowed in the inifile: first character on the line must be ";". Empty lines remain as does a sorting done by the user.

version 1.7.0 (22/10/2019)

  1. The Normal series in the Graphs now always have the colour black;
  2. All zero-valued series points were not printed. That has been changed to: zero-valued series points outside the series (incomplete years) are not plotted, zero-valued series data are plotted;
  3. The inifile handling has been greatly revised to facilitate the strings (see next bullet point). Most notably: an empty or nonexistent ini will be reinitialised. User values remain valid until deleted which resets default. A deleted or non existent key will be created when needed. Limited space for strings will need to be determined by trial and error. Sorting and replacing sections and keys remain in tact, empty lines disappear;
  4. Strings are added to the inifile to facilitate CumulusUtils to show a different language. CumulusUtils will not have the possibility to switch languages at runtime. The tags are - I think - self explanatory. If anybody has a problem, please let me know;
  5. Units are added to the graphs and will show what is used by Cumulus. Note: in pwsFWI all imperial values are converted implicitly to metric because the meteorological formula's are metric. Therefore the table in pwsFWI only metric values are shown and not the imperial values.

version 1.6.7 (19/10/2019)

  1. My bad: I noticed that every installation used a 30 day period for the daily rain graph and could not change it. That has been corrected.
  2. The 'Normal' values in the NOAA settings apparently are written under the regime of the locale which means the decimal separator can be either comma or point. Cumulus 1 and 3 seem different in this respect (I could not be 100% sure) so I created a workaround to always read it correctly, whichever format. The decimal separator is assumed to be only point or comma.

version 1.6.5 (18/10/2019)

  1. Formal release of the Graphs module.
  2. Added ini parameter for MovingAveragePeriod (default 180)
  3. Changed title of graph Daily Rainfall and added period to x-axis title;
  4. Changed some minor things in layout of graphs;
  5. Added new graph: rain per month (With Normal Value line);
  6. Top10: Removed the output top10TableStyle.txt (please remove the corresponding include from your website). Only one files exists for top10: top10Table.txt. There should be no difference.

version 1.6.2 (16/10/2019)

  1. Bug fix for the position of the credits under the pwsFWI and top10 tables;
  2. Some minor spaces/CSS fixes;
  3. Major fix for Graphs, which inhibited it to run correctly when top10 would be demanded in the same run;
  4. Major fix for Graphs which did not show the graph when an apostrophe was in the LocDesc string in Cumulus.ini. The apostrophe is now permitted.
  5. Added the Monthly Temperature graph. See above.

version 1.6.0 (14/10/2019)

  1. Because some of you put all their data online with the pwsFWI module, the interface has been adapted by beteljuice, to account for a better handling of some 4000 lines. It now uses a small window of roughly 22 lines and a scrollbar. The headers remain locked.
  2. As a kind of giveaway Easter Egg, you will also find a first version of the graphs module (commandline parameter 'graphs'). Two graphs have been implemented so far. There is a drop down choice which graph you want to see. Feedback with comments and wishes is appreciated. So far this is not a release and no options for the graphs have been implemented yet.

version 1.5.1 (12/10/2019)

  1. Some finetuning of the web interface pwsFWI (also known as bug fixing): 1)border spacing of table now correct; 2)Legend now also in Standard; 3)pwsFWIcurrent now has a beteljuice approved styling;
  2. Check for a minimum nr of lines (currently 35) in dayfile.txt for useful results.

version 1.5.0 (9/10/2019)

  1. A sixth warning level has been added to pwsFWI, named: Catastrophic, colour purple. The parameter in the inifile is WarningLevel, possible values : 5 or 6. Read the ABC article below.
  2. Some bug fixes around the red warning level where it was changed to green or where the indicator was supposed to be in the green zone but remaind red.
  3. The process of the Smoothing and Quenching has been slightly changed to better process single rain shower events. (See blog: "Behaviour of pwsFWI with first rain").
  4. For pwsFWI and extra output has been created: pwsFWIcurrent.txt, containing an HTML -tag, for the required colour. To use wherever the use wants the dayvalue, e.g. on the frontpage dashboard (see my site for an example).
  5. All output now will be written to a subdirectory utils/ one level below the Cumulus main directory. Only cumulusutils.exe (and possible libraries) and the cumulusutils.ini remain in the Cumulus directory.
  6. Fixed an algorithmic bug in pwsFWI, not yet exposed, which caused a problem when analysis would be exactly the amount of days in dayfile.

version 1.0.1 (3/10/2019)

  1. In top10, unit 'percentage' has changed to '%'

version 1.0.0 (30/9/2019)

  1. Good enough for version 1.0.0
  2. The Analysis csv file is now governed by the locale which means date, separators and decimal point are written conform the locale on the machine where cumulusutils runs. This should make it easier to open it with excel.
  3. Changed copyright notice / text under the tables.
  4. Fixed scaling when pwsFWI value surpassed value outside scale

version 0.9.1 (26/9/2019)

  1. Changes to the meteorological equations used for Vapour Deficit (see my blog of 26 sep 2019).
  2. Closed a call on SysInfo: Windows 8 really needs to have its updates.
  3. Several minor bugfixed/tunings in the Beteljuice-format.
  4. Code cleanup and minor fixes.

version 0.9.0 (24/9/2019)

  1. Bug fix: sysinfo under Windows (any version) now breaks off if resultstrings are unexpected. Message displayed in logfile, please send. However, errorhandling before that happens has been improved (again).
  2. Two pwsFWI result formats are now available: Standard and Beteljuice. The latter of course the better. (Thanks to Beteljuice, takes a lot of time iteration and testing though). Note the corresponding ini-parameters!

version 0.8.8 (22/9/2019)

  1. Bug fix: monthly rainfall did not show in top10 if the station was running ten or more months.
  2. Changed header of pwsFWI table: "Drought" was changed to "Consecutive days without rain"
  3. Ran spellchecker on this file

version 0.8.7 (21/9/2019)

  1. Functional change/Bug fix: The pwsFWI CSV-file now has a slightly different format. All figures are now floating point with max. two decimal accuracy (except for the drought period which are in days). This is generated without CultureInfo so, I assume the decimal period (or comma) is according to your machine setting (which is why I changed the comma separation to the semicolon). Let me know if this functions the wrong way.

version 0.8.6 (21/9/2019)

  1. Bug fix: During the updating of cumulusutils.ini erroneously Analysis was always reset to its default value.

version 0.8.5 (20/9/2019)

  1. Bug fix: high monthly rainfall in top10 table fixed if station runs less than 10 month. Top10 table now contains no entries for months without data.
  2. Dry period added to the pwsFWI table.
  3. Changed some table width.
  4. Exception handling now should be generic. IF(!) an exception occurs, the exceptions should always be handled such that the application recovers or ends with a graceful exit with enough info in the log file. The exception message is always printed in the log including a possible stackdump.
  5. The stations should have at least 30 days of days of data for top10. Otherwise this application will not run correctly. That has been taken care of.
  6. Analysis possibility for pwsFWI. See above in functionality.
  7. SysInfo page has now elaborate try/catch errorhandling on all system accesses, looking for information. If no information is found or in case of error, 'unknown' is written on the webpage. The variety within Linux/Unix is troublesome. Since there is no generic command to find the temperature of the processor, only for Raspberry it is known. Therefore I left that out.

version 0.7.5 (19/9/2019)

  1. All dayfile's can be used now, metric or imperial units will be handled and for the calculations of pwsFWI the conversions are automatically made. Let me know if you spot an anomaly.
  2. Headers of the top10 table now include the unit of measurement
  3. Headers of the top10 table now can be translated via the cumulusutils.ini
  4. some corrections and code cleanup

version 0.7.0 (18/9/2019)

  1. Made a ReadMe
  2. Finished the implementation of the ini-handling
  3. some corrections and code cleanup

version 0.6.5 (17/9/2019)

  1. Completed the System Info page which is now also available for Windows 10 (maybe also lower versions, if not, let me know).
  2. Reading of the Cumulus.ini is now complete. This means that a lot of information can now be used and the preparations for a cumulusutils.ini are finished.
  3. Minor changes everywhere. Cleaning up.

version 0.6.0 (16/9/2019)

  1. Added a System Info page for Unix/Linux. Run with command line parameter -ftp.

version 0.5.3 (16/9/2019)

  1. Solved a technical problem in pwsFWI which had a big functional effect.
  2. Added a factor to pwsFWI to account for the duration of a drought period. In future the weight of this factor may change slightly.

version 0.5.1

  1. Currently version 0.5.1 and the pwsFWI has now info with links and info. If you disagree and would like to see changes, please let me know.
  2. The executable now creates a cumulusutils.log. If any problems occur, please send it when you contact me, this may help out.
  3. I solved a rPi problem in converting the numbers from ascii to floats and doubles etc. C# is pretty tricky on this issue and there's a steep learning curve on my side. Hope I got it all right by now, but it is not impossible you see something strange on different machines.