From OpenSCADAWiki
Jump to: navigation, search
Other languages:

This update of the 0.8 LTS release fixes about 50 bugs and appends some improvements, which you can read wholly in the update ChangeLog.


  • Archive: Result to function TMArchivator::put() is added for accomplish writing control.
  • SYS.Mess,Archive.DBArch: The messages level type into structure TMess::SRec changed from Type to int8_t for fix negative level into DB.MySQL.
  • SYS.XMLNode: Into function load() argument "full" replaced "flg" with flags: 0x01 - full mode; 0x02 - no remove spaces for begin and end tag's text.
  • Transport: External hosts configuration improved for allow modes "User", "System", "User and System" select into single table. Functions removed: sysHost(), setSysHost(). Functions change: extHostList(), extHostGet(), extHostSet(), extHostDel().
  • DAQ: API function "void vlSet();" expanded for same set value pass and prevent lost values.


  • SYS: New resources allocation objects MtxAlloc and MtxString is added.
  • To ResAlloc is added lock() and unlock().
  • TCntrNode: Base function _ctrMkNode() and specific for arguments set function ctrMkNode2() to original ctrChkNode() is added.
  • "TSYS::i{bits}_LE()", "TSYS::i{bits}_BE()", "floatBE{rev}()", "doubleBErev()" functions is added for endians processing.
  • Added new global simple functions into OSCADA namespace: tm2s(), s2i() and s2r().
  • TArrayObj: New direct access functions arGet() and arSet() is added, for fast access from internal.
  • XMLNodeObj: New function "childGet( string name, int num = 0 )" is added.
  • Transport,Transport.*: To output transports virtual functions timings() and setTimings() is added.


  • AGLKS.St.db: KeepAlive timeout of input transport OPC_UA set to 60, Client's and Server's certificate is generated for all demands resolve and address set to


  • *.core files process adapted.
  • TConfig,TValue,UI.{VCAEngine,Vision}: Editable listed configure fields and DAQ attributes by TFld::SelEdit support is added.
  • User's API functions gmtime(), timegm(), strftimegm(), strptimegm() for time into GMT(UTC) processing allow.
  • DB,TVariant,DAQ.JavaLikeCalc,Special.FLibSYS: Direct access, into backend, to user space object TArrayObj is set.


  • FIX:DB.{SQLite,MySQL,PostgreSQL,FireBird}: Keys miss into DB check is fixed for fieldSeek() and fieldSet().
  • DB.{SQLite,FireBird,PostgreSQL,MySQL}: Connection for network DB restore mechanism is changed to enabling for toEnable() and disabled DB into transactions check cycle.
    • Complex tests pass for lost connections restore and generic test of module Special.SystemTests.
    • MTable::fieldDel() is adapted to remove fields with keys real miss into the DB's table.
  • MySQL: Transaction support and using is added, for performance rise on some DB storages.


  • BlockCalc: To blocks' output links optional writing by changes is added. Field "VAL" size for block's IO table increased from 20 to 10000 and "LNK" from 50 to 100.
  • JavaLikeCalc.Array: Direct access to object's properties set for some performance rise. FIX: Insert object's item to Array into this creation by "new Array(0, 1, 2, ar[0])" is fixed.
  • FIX:LogicLev: Reflection type is fixed and expanded for connection to target parameter, update and attributes list sync into calc period.
  • ModBus: Remove connection try from controller's object start().
  • OPC_UA.{*,LibOPC_UA}: LGPL COPYING file is added to the library.
    • FIX: libOPC_UA is fixed for client's service Write respond and yet ten of other critical fixes.
    • OPC_UA namespaces made unified and NS_OPC_UA(0), NS_SERVER(1), OpenSCADA_DAQ_NS(2) is added.
    • Session lifetime process is added.
    • SubscriptionId and MonitoredItemId grow start from '1', for exclude invalid value '0'.
    • User and password auth data set is added to client part and test program. Secure policy set is added to test program.
    • Inline nodes browser is added to client's parameter object for insert selected nodes to processing list.
  • FIX:System: New DA-type "UPS", by NUT-protocol is added. Active DA check and creation is fixed for same origin parameters test, no the parameter identifiers.
  • BFN,DAQGate,ModBus,OPC_UA: Alarms for connection state to remote sources is made unified.


  • TMArchivator: Reimplemented messages archivation for allow the messages into the buffer resend at the messages storage connection restore.
  • FIX:Archive.*,Special.FLibSYS: Prevent for set negative period values into buffer. TValBuf::vOK() expand for check aligned to the buffer period. setVals() is adapted for allow write unaligned border [beg:end] to period by round here.
  • *,DBArch: To TVArchEl::setValsProc() added result for allow archive's buffer's part write control, used for rewrite to network DB by DBArch. Allow start Values and Messages archivators for DB error, predict restore the connection.
  • *,UI.{Vision,WebVision}: Service "/serv/val" is adapted for return EVAL_STR as EVAL for all string representing data modes.


  • {SSL,Sockets}: KeepAlive parameters of input transport is made unifical and descriptions append. Default value of KeepAliveTm set to 60 for prevent input connections hang.


  • QTCfg: Check and change current page at it rename. Rows and collumns of a table adjust mechanism set like from UI.Vision primitive FormEl view "Table". Group-selected fields set support is added.
  • Vision:
    • FIX: "Text" primitive update font size is fixed at it's scale change.
    • To session object plain resources allocation dataM (pthread_mutexattr_t) is added and used for mOpen, mStProp.
    • FIX: Service <openlist path="/serv/pg"> is fixed for errors at page's widgets miss and recreate session try.
    • Set transparent background palette for the pages included to container.
  • UI.{QTStarter,QTCfg,Vision}: Adapted for Qt5, exclude Phonon.
  • VCAEngine,Vision,WebVision: The primitives "Text", "Protocol", "Document", "Diagram" are moved to indexes from types.h.
  • VCAEngine,Vision: New view "Table" of primitive "FormEl" is added.
  • Vision,WebVision: To primitive "Diagram" and "Protocol" set trace time to real data time is allowed.


  • FLibSYS: Unified CRC() calculation function is added.