Skip to content

Syntax Changes

Although we are trying hard to keep the syntax stable between versions, it is sometimes necessary to break compatibility by introducing a new syntax. The following reasons can lead to a syntax change:

  • improving clarity: sometimes we realize that our naming or syntax leads too many users to struggle and find a much better naming/syntax that is clearer to all.
  • making room for the extension of some concepts: for example in order to support stacks of resampling algorithms, the syntax had to be adapted accordingly.
  • improving consistency between various components: although we try to name things the same way across MeteoIO, sometimes some inconsistencies slip in. In such cases, a renaming will be performed, usually together with other syntax changes.

The probability of a syntax change is usually much higher for recent features than for older, mature ones. New options, new filters, new plugins... don't count as syntax change as they only extend the syntax without breaking existing syntax.

Migrating INI files

In order to make it easier, here is a list of the syntax changes brought between releases. Moreover, we often implement checks for older syntax in order to alert the users and hint how to update the syntax.

Next release

This is what is currently in development, so what you get by taking the latest from master. Quite a few syntax changes had been postponed until after version 2.11, so expect a few things here!

  • the resampling algorithms can now be stacked, so instead of PSUM::resample = accumulate↵ PSUM::accumulate::period = 3600 it is now PSUM::RESAMPLE1 = ACCUMULATE↵ PSUM::ARG1::PERIOD = 3600;
  • generally, in the resampling algorithms WINDOW_SIZE has been renamed into MAX_GAP_SIZE for clarity. Some algorithms (like the new ARIMA) also use a WINDOW_SIZE option that defines the window over which the statistics are computed before starting gap-filling.
  • a new MOVE algorithm has been written that moves parameters between stations (for example to take TA_2 from station1 and move it as TA of station2).

release 2.11.0

release 2.10.0

  • All the low level "raw data editing" has been moved into a new [InputEditing] section. ALl the associated keys have been moved to this section and the AUTOMERGE key in the [Input] section has been replaced by the automerge InputEditing algorithm that has to be declared within the InputEditing algorithms stack. For example, you can replace [Input]↵ AUTOMERGE = TRUE by [InputEditing]↵ *::EDIT1 = AUTOMERGE.
  • the MOVE DataEditing algorithm has been renamed into a new RENAME algorithm.

release 2.9.0