From OpenSCADAWiki
Jump to: navigation, search
Other languages:
English • ‎mRussian • ‎Українська
  • State: testing and post-building ...

The common releasing process for the users to estimate your expectations and for the developers to remind the tasks:
1. The preparing and building week:

  • Building the last Work SVN-revision for all environments of the irregular building to provide early and wide testing the coming LTS release.
  • Announcing the releasing process start:
  • Merging the Work branch changes or copying the whole Work branch tree to the LTS branch-tree.
  • Making some LTS specific changes about the version rise:
    • updating configure.ac for version of the release-update and core library;
    • updating data/*.spec and data/{debian,debian_mod}/changelog for the new version number and appending the files' changelog for new release-update entry.
  • Forming-appending the LTS ChangeLog by the changes from the Work ChangeLog, grouping the changes by the location and sorting them by the fixing status and the level, with combination new features under one item and without removing any different changes.
  • Copying the significant changes from the formed LTS ChangeLog to the related page of the release-update, taking the changes in the level more or even than "!!".
  • Translating the release-update page(s), updating the ToDo and RoadMap.
  • Generating the actual offline documentation using the service procedure "EXT: Off-line documentation".
  • Committing the LTS tree changes to the repository and building that.

2. The testing and post-building week(s):

  • Updating the Download page.
  • Announcing the release-update, also on FaceBook and LinkedIn.
  • Hot testing the release build.
  • Finishing and fixing the ChangeLog translating and the documentation.
  • Generating the actual offline documentation using the service procedure "EXT: Off-line documentation".
  • Committing the release fixes to the repository and building that for the second build, and for each week of appearing critical fixes — the first week without the critical fixes means the final of the LTS releasing, so, USERS — test closely the LTS release for do not complain to its final build!
  • Updating binary copies of standard OpenSCADA libraries: OscadaLibs.db, VcaBase.db, VcaElectroEls.db.

This update of the 0.9 LTS release fixes about 70 bugs and appends MANY improvements with several of significant-conceptual ones, which you can read wholly in the update ChangeLog.

Automation Linux distributive of the project OpenSCADA

  • updating TDE to 14.1.3 and building patched also for Debian 8,10 ARMHF;
  • restoring of starting nm-applet in the system tray and removing the "raspi-firmware" package from Debian 12 installations;
  • formalisation the partial TDE forking under the subproject — the Automation Linux distributive of the project OpenSCADA;
  • TDE > tdepowersave-trinity: Preventing of locking-sticking the sign "blacklisted_running" after running one blacklisted program.
  • TDE > basket-trinity: Fixing of no replacing selected blocks into note at pasting RTE, just appending before the block.
  • TDE > tdepim-trinity > KOrganizer: Preventing of appearing two dialogues of item editing and new item at double clicking on cell with items in the month view.
  • TDE > krusader-trinity: Fixing of refreshing source panel at moving operations.
  • TDE > tdebase-trinity > Konqueror: Preventing of items sometime doubling in the tab item "System (system:/)" through doubly call setOpen(true);
  • TDE > tdebase-trinity > QuickLauncher: Completing of fixing of appearance in QuickLauncher of empty-zero items after removing some item, what related with inserting already missing desktop-file (after uninstalling the application) from the popularity;
  • TDE > krusader-trinity: Preventing of force locking mounted media-folders after changing local directory to remote-virtual one, in a way of changing the local folder to Home. Also preventing the memory leakage on call the function getcwd(0, 0) without freeing its result;
  • TDE > krusader-trinity: Preventing of cleaning the panel with item list of a SMB share after item renaming through receiving second or third result() event from IO-Slave, that is the panel refresh is lagged now at 0.5 seconds after renaming;
  • TDE > tdebase-trinity > KDesktop: Preventing of complete freezing KDesktop on waiting the Saver Engine during about one minute after wake up, by not use sigsuspend() for waiting "mSaverProcessReady" where enough to call tqApp->processEvents();
  • TDE > tdelibs-trinity > DCOP: Switching internal interval timers on the modern "timespec" structure and the Monotonic clock in the base, that is made DCOP insensitivity to jumps of the real time, especially at waking up;
  • TDE > tqt3-trinity: Complete switching Qt3 interval timers (QTimer) on the modern "timespec" structure and the Monotonic clock in the base, that is made Qt3 insensitivity to jumps of the real time, especially at waking up;
  • TDE > kaffeine-trinity: Appending support the WEBM media format;
  • TDE > tdelibs-trinity > MIME: Appending support the WEBM media format;
  • xine-lib: Switching "display_queue.mutex" in Video out to the recursive mode for preventing hangs in xine_new_framegrab_video_port();
  • TDE > tdemultimedia-trinity > XineThumbnails: Audio Disabled by xine_new_framegrab_audio_port() and HUE corrected. In addition to preventing dead locks in Xine;
  • TDE > tdelibs-trinity > TDE IO: Setting the slave connection timeout of SLAVE_CONNECTION_TIMEOUT_MIN from 2 to 10 and SLAVE_CONNECTION_TIMEOUT_MAX from 10 to 30 for preventing errors of the FILE-slave missing on generally slow hardware and HDD/SSD with slow sectors;
  • TDE > tdeadmin-trinity > KPackage: Adding the menu "APT Specials" by items: "Clean (apt-get clean)", "Autoremove (apt-get autoremove)";
  • TDE > tqt3-trinity: Preventing hangs on rendering wrong char shapes in TQTextEngine, it was noticed in KCharSelect on page 15;
  • TDE > tdelibs-trinity: Fixing of substitution correct year in the kdatepicker corresponding to the selected Calendar System;
  • TDE > kdiff3-trinity: Switching URLs in the plugin's menu to the pretty view instead encoding UTF-8 chars of native locales;
  • TDE > tqt3-trinity: Softening an effect of high-whole CPU loading at flooding Pending events from the GLib interface to the X11 server, what is brightly appeared on digikam-showfoto, or qtwaittimer, what detected on kdesktop-screensaver at wake up, by appending short waiting on 1ms after processing the events;
  • TDE > amarok-trinity: Preventing of flooding with high CPU loading especially on old-slow systems during execution in the system tray and before opening the PlayList window, due to the analysers are wrongly started in the background at changing the animation period;
  • TDE > tdebase-trinity > MediaManager: Appending of switching the /etc/fstab using whether by a util of mounting like to udisks or the generic mount program. And that is suitable both for FD and CD/DVD/BLURAY due to udisks[2] doesn't mount them without an entry in /etc/fstab;
  • TDE > tdebase-trinity > MediaManager: Fixing nonconformity in icon names for CD-R and CD-RW in tdeioslave (14.0.10 on Debian 7);
  • TDE > kaffeine-trinity: Fixing of playing DVD with XINE versions which misunderstand URM "dvd://", only "dvd:/";
  • TDE > tdebase-trinity > Kate: Reverting broken sessions from 14.0.

Main WWW-resources, documentation of the project and subprojects

New and significantly updated parts

  • OpenSCADA Core: 3:14:0 => 3:15:0
(Implementing properties of the Control Objects, Implementing the custom ACLs to the control nodes, Implementing initiative connections, Expanding the project management, Messages Translation — fixes of the conceptual changes of the previous updates)
  • OpenSCADA "Transports" subsystem: 20 => 21
  • DAQ.DAQGate: 2.13 => 2.14
  • DAQ.JavaLikeCalc: 5.6 => 5.7
  • Archive.FSArch: 3.8 => 3.9
  • Transport.SSL: 4.5 => 5.1
(Unification and overriding the address resolving in different ways)
  • Transport.Sockets: 4.8 => 5.0
(Unification and overriding the address resolving in different ways)
  • Protocol.OPC_UA: 2.2 => 2.3
(True authentication with control the permission)
  • Protocol.HTTP: 3.8 => 3.9
  • UI.QTCfg: 6.0 => 6.1
  • UI.VCAEngine: 7.13 => 7.15
  • UI.Vision: 9.1 => 9.4
  • UI.WebUser: 1.6 => 2.0
(Expanding for support direct writing)
  • UI.WebVision: 6.9 => 6.13
  • UI.WebCfgD: 2.6 => 2.7
  • LibsDB.OscadaLibs.base: 2.2 => 2.3
  • initRemCntr: 1.1
  • fileServerHTTP: 1.0 => 1.2
  • LibsDB.OscadaLibs.LowDevLib: 1.5 => 1.6
  • 1W: 2.1
  • S1BP: 1.0
  • UC96: 1.0 => 1.2
  • LibsDB.OscadaLibs.DevLib: 3.0 => 3.1
  • ergomera125: 0.5
  • mbBase: 1.2 => 1.3
  • LibsDB.vcaBase.Main
  • storeHouse: 1.4 => 2.1
(Added file inclusion and image preview)
  • grph_panel: 1.5 => 1.6
  • doc_panel: 1.2 => 1.3
  • userManager: 1.6 => 1.7
  • LibsDB.vcaTest.test.docTestGasNodeDayRep: 1.0 => 1.1

CONCEPTUAL > Implementing properties of the Control Objects

  • SYS: TCntrNode:
    • Appending of the object properties in groups by prefixes for different parts of OpenSCADA: system (sys), user (usr), connection (con), security (sec), ... .
    • Adding a User API function property() of accessing the object properties from user context in additional to the direct-natural way.
  • Transports: Moving the connection parameters to the object properties in group "con".
  • DAQ: Moving the TValue flags resB1() and resB2() to the object properties in group "DAQ", that is removing such functions.

CONCEPTUAL > Implementing the custom ACLs to the control nodes

  • SYS:
    • TCntrNode:
      • new functions nodeAccess(), nodeLoadACL(), nodeLoadACLSnthHgl();
      • moving from static with some improving and adaption to ACL with compatibility of the direct rules for the functions of the control interface: ctrMkNode(), ctrMkNode2(), _ctrMkNode(), ctrChkNode();
      • new functions of the control interface for ACL: ctrMkNode3(), ctrChkNode2();
      • _ctrMkNode() switched to no exception at missing container nodes, just don't create and return NULL.
    • TFld: cntrCmdMake() added by an argument cntrO for linking with the Control Node, and all code adapted to that.
    • TConfig: cntrCmdMake() and cntrCmdProc() added by an argument cntrO for linking with the Control Node, and all code adapted to that.
  • Transports: TTransportS: cntrCmdPrm() added by an argument cntrO for linking with the Control Node, and all code adapted to that.
  • DAQ: Initial adaptation to ACLs in the description fields of the Controller and Parameter Objects, default owner-permition for the DAQ subsystem set to "root:DAQ"-0775.
  • Protocol.OPC_UA: Using ACL in checking the access.

CONCEPTUAL > Concentration the different OpenSCADA-hosts on the common server, both for IoT on OpenSCADA and not

  • LibsDB.OscadaLibs:
    • tmplib_base: Appended by a template "Control the remote initiative connections (initRemCntr)", with documenting and completed translation to Ukrainian.
    • Appended of the user "RemCntr" with password "RemCntr" and in the group DAQ for use in the initiative remote connections to the OpenSCADA server.
    • Appended of the disabled transports "RemCntr" to Transport.Sockets and Transport.SSL, that is when you want to provide data of your station, you just enable one of them.
  • ModelsDB/{AGLKS/oscada_AGLKS.xml,Boiler/oscada_Boiler.xml}: Removing system groups without users, than allow the groups specify in libraries.
  • FIX:Transports: TTransportOut appended by the function isFromInput() to detect automatically created objects from the input transport. The external initiative connections of the OpenSCADA hosts prevented from stop.

CONCEPTUAL > Expanding the project management

  • data/openscada-proj.in: Expanding by the commands snapshot, crash, cores with unification of preparing the crash reports also for the crashing processes from itself. Appending the crash-reports by "info thread" and "info sharedlibrary".
    • Refactoring the algorithm of processing the projects in the System and User directory, that is fixing of creation the project directory in the System directory at presence the System configuration file.
  • SYS: Enabled in processing the signals SIGFPE and SIGSEGV with call openscada-proj crash {ProjID} to prepare the crash report immediately for SIGFPE, SIGABRT and SIGSEGV.
    • The process return-exit result for success is forced to EXIT_SUCCESS and for fail to EXIT_FAILURE.

CONCEPTUAL > Messages Translation (fixes of the conceptual changes of the previous updates)

  • LibsDB.OscadaLibs: Automatic updating some translation.
  • LibsDB.vcaBase.wlb_Main:
    • Appended of the dynamic messages with Ukrainian translation for main ones of DiskSMART and UPS during representing by "Object properties (objProps)".
    • anShow,anShow1: Appended of translation dynamic messages from parameter attributes NAME and DESCR.
    • FIX:RootPgSo: The attribute "Procedure of the Demo play (demoPlayProc)" set to the type "Text (translate)".
  • SYS,DAQ,UI.VCAEngine: Implementing of disabling translation of string configuration fields, DAQ attributes, UI attributes at changing in the dynamic execution:
    • SYS,DAQ,DB.{FireBird,MySQL,ODBC,PostgreSQL,SQLite}: appending the unified method {TCfg,TVal}::isTransl() of checking translation the element, and moving on its everywhere;
    • TVal: appending the "mNoTransl" flag and functions of its treating: noTransl(), setNoTransl(), TValue::setNoTransl();
    • UI.VCAEngine::Attr: appending the "NoTransl" flag and its treating in isTransl();
    • translation is disabled:
      • at writing through links of implementation the templates in TPrmTempl::Impl::lnkOutput();
      • at the User API call TVal::set();
      • UI.VCAEngine: at Widget attribute change in the Session context for widgets in processing and at writing to DAQ attribute by links.
    • the DAQ Parameters added of restoring the translation of dynamically changed configuration fields at load.
  • FIX:SYS: TMess: Adding messages to the table "Trs" is enabled only in the messages level Debug, for preventing flooding to the table of any translated messages and not.
  • FIX:DAQ.OPC_UA,Protocol.HTTP,UI.{QTCfg,Vision}: Fixing and improving some original messages.
  • FIX:DAQ: Fixing-finishing the dynamic translation for title of the controller and parameter object.
    • FIX: Templates fixed-adapted to the dynamic translation in using the IO names.
    • FIX: Fixing-finishing the dynamic translation of values requesting in the Control Request TValue::"get:/serv/attr" for non archiving elements.
    • Parameter templates allowed in setting empty names for their translation clearing in the dynamic translation mode.
    • FIX:DAQGate: Some fixed in Ukrainian translation.
    • FIX:JavaLikeCalk: Some improved in the translation.
  • FIX:Protocol.OPC_UA: Adaption to the dynamic translation in data requests.
  • FIX:UI.{QTCfg,Vision}: The messages "Load from DB" and "Save to DB" renamed to "Load" and "Save" and with "storage" instead "DB" in full messages.
  • FIX:UI.VCAEngine: The session User API function this.attr() fixed in checking the translation flag TFld::TransltText.
    • FIX: Templates fixed-adapted to the dynamic translation in using the configuration template of the attributes.

OpenSCADA libraries and projects

  • FIX:LibsDB.OscadaLibs:
    • tmplib_DevLib: Appended by the template "Ergomera 125 (ergomera125)" with initial implementation the own protocol and documenting.
      • mbBase: Expanded for support Input Registers by function 4.
      • FIX:VSE002: Rewrote in the packages sequential reading mode, that is detection all packages with notifying unknown.
      • FIX:Incubator: Fixing value of the 'Transport (transport)' field.
    • tmplib_LowDevLib: Appended by the template "BT: ATORCH S1BP (S1BP)" with documenting and completed translation to Ukrainian.
      • Appended by the template "1-Wire (1W)", which merged from 1W_DS9097 and 1W_DS9097U before appending I2C Drivers and expanded by an option "Only add attributes at scan", with documenting and completed translation to Ukrainian. Adding of support the I2C Driver DS2482-100 and some improving with fixing.
      • UC96: Expanded for support ATORCH UD24. Expanded by reading: "Volts maximum (Vup)", "Volts minimum (Vdwn)", "Data+, V (Dplus)", "Data-, V (Dminus)".
    • FIX:tmplib_base.fileServerHTTP: Expanded of big data transferring in chunks by the direct writing function writeTo(). For that appended by the attributes: "Transport (tr)", "Protocol (prt)" and "Sender (sender)".
    • FIX:flb_doc.diagram: Adding of drawing non periodic direct data like months. Implementing of rounding big interval points by the Besier Cubic Curves.
  • LibsDB.vcaBase:
    • wlb_Main:
      • grph_panel,doc_panel: Adding of checking for activity the controlled trend or document, and closing at its inactivity. Moving in the size-depth field to the editable combobox with the digital number and human text multiplier, based on the new User API function time2str() and str2time(), that is removing the type field here.
      • docRepDay,docRepMonth,docUsersSet,docRepInstVals,docDin,docRep2WorkSh,docAlarmsRep,docMessRep: Adaptation to opening the document control panel after several seconds of starting-opening, that is for allowing the document control at displaying by QtWebengine.
      • grpGraph,grpCadr,doc_panel,grph_panel,prescrEdit,prescrRun,prescrRunSimple,accept,treeSelect,calendar,userManager,alarmsStReport,docRepDay,docRepMonth,docRepYear},wlb_prescr.{prescrEdit,prescrRun,prescrRunSimple: The variable ev_cur renamed to evCur.
      • storeHouse: Expanded by support of including files both to the MySQL LONGTEXT field and to FS. Appending preview the loaded images in the form and the item report.
      • FIX:grpGraph10: Fixed in the "geomZ" attribute for the included widgets "el9" and "el10".
      • FIX:RootPgSo: Improved by pause the demo-procedure's execution at no requests on WEB, so preventing of opening all pages before real close. The direct pages list append by checking the pages permission.
      • FIX:grpGraph: Fixed in the "geomZ" attribute for the "trnd1" and "arh" included widgets.
      • FIX:weather: Appending by icons of representing different states. Fixed in guaranty receiving the hourly data at the connection problems.
      • treeSelect: Updating icon of the frame with improving the name.
    • wlb_doc.docRepYear: Switching the direct data drawing on the diagram to the non periodic mode.
  • LibsDB.vcaTest.wlb_test.docTestGasNodeDayRep: Adaptation to opening the document control panel at setting the "pgOpen" attribute and not setting the "pgOpen" attribute in the panel, due to the document is archiving, that is for allowing the document control at displaying by QtWebengine.
  • ModelsDB.AGLKS:
    • wlb_doc.{docRepMonth,docRepDay}: Set to no process periodically.
    • wlb_test.docTestGasNodeDayRep: Set to process with period 10 seconds.

API
!!!!:Changes:

  • SYS: Type of the limit variables "limUserFile_SZ", "limUserIts_N" changed to unsigned.
    • TCntrNode: Moving from static with renaming some arguments: ctrMkNode(), ctrMkNode2(), _ctrMkNode(), ctrChkNode(). Changing prototype of the objPropSet() function in the "val" argument.
    • TVal: Moving to constant for fld().
    • TFld: cntrCmdMake() added by an argument "cntrO" with renaming some arguments.
    • TConfig: cntrCmdMake() and cntrCmdProc() added by an argument "cntrO" with renaming some arguments.
  • Security: Renaming the function TSecurity::access() argument "access" to "perm", also for User API.
  • Transports: TTransportS::cntrCmdPrm() added by an argument "cntrO".
  • DAQ: Moving the TValue flags resB1() and resB2() to the object properties in group "DAQ", that is removing such functions.

Appends:

  • SYS: Appending the sysTmJmp() function as a variant of sysTm().
    • Appended by the "DEF_HTaskPer" definition.
    • TError: New error "Tr_ErrUnknown".
    • TCfg,TVal: New unified method isTransl().
    • TVal: New functions: noTransl(), setNoTransl().
    • TValue: New function setNoTransl().
    • TCntrNode: New functions: nodeAccess(), nodeLoadACL(), nodeLoadACLSnthHgl(), ctrMkNode3(), ctrChkNode2(), property(), propertyClrGrp(). Adding a User API function property().
    • Appended by the limiting option "limObjDscr_SZ" for the description configuration fields (DESCR).
    • Adding function str2time() with parsing the human time from time2str(), which added also by the "inParts" argument.
    • Adding new User API functions with representing the system ones in the user space: time2str(), cpct2str(), str2time().
    • XMLNodeObj: getElementsBy() and its User API variant expanded by arguments "limit" and "from".
    • Mess: Adding the global label functions labTime(), labTimeSel().
  • Transports: TTransportOut appended by the function isFromInput().

SYS

  • Building:
    • configure.ac: Core library version risen to 3:15:0 and the program version risen to 0.9.8. The module version of the subsystem "Transports" risen to 21.
    • acinclude.m4: The autoconf macro AX_LIB_MYSQL added of using PKG_CONFIG when presence the configuration file, to build together MySQL in cross-compiling environments with binary mysql_config or mariadb_config. Removing the spare macroses: AX_LIB_SQLITE3, BNV_HAVE_QT. Some improving the macro AX_LIB_POSTGRESQL.
    • data/{debian,debian_mod}: Appending "openscada-server.service" and "openscada-plc.service", also as a commented entry "dh_installsystemd" in "rules", and that switched to use in Debian 12,11,10 and Ubuntu 24.04,22.04,20.04. Appending MySQL default dependency as "default-libmysqlclient-dev".
  • FIX:LibsDB.OscadaLibs.tmplib_base.fileServerHTTP,UI.WebVision: Unified in processing the data transferring in the sequence: ranges of media in the head, big data by chunks, simple single package for small data.
  • Archive.{MessArchive,MessArchiver,ValArchive},DAQ: Moving in the size-depth field of the Control Interface to the editable combobox with the digital number and human text multiplier, based on the new function time2str() and str2time().
  • .,DAQ.{BlockCalc,JavaLikeCalc},Protocol.{ModBus,OPC_UA,UserProtocol},UI.{VCAEngine,WebUser}: Appended by the limiting option "limObjDscr_SZ" for the description configuration fields (DESCR) with default value 1000 and range [300...1000000].
  • DAQ.{LogicLev,ModBus,OPC_UA,Siemens},UI.{QTCfg,WebCfgD}: Implementing of ordering value of the updating time of the configuration interface of the calculated objects, to update after the object processing.
  • FIX:Transports,Protocols: Unification of errors generation in calls messProtIO() and its User API variant messIO(XMLNodeObj req, string prt) in accordance the documentation, that is obligatory with the error code.
  • The commandline options appended by getting default value from the environment variable "OSCADA_{cmd}", what is enabled itself by the environment variable "OSCADA_CMD_EN".

DB

  • FIX:SQLite: The error code SQLITE_CORRUPT added for reconnection the DB file, since this error can be appeared with changing the DB-file structure from an external source.

DAQ

  • FIX: Fixed in remote archives detection for temporarily empty ones, that is no source.
  • DAQGate: Improving algorithm of the archives detection with providing an information field with list of the archieving attributes.
  • FIX:ModBus: Fixed in complete processing strings with encoding, that is registering all registers. The data requesting improved in the TCP variant for waiting tail to any first package size, that is not only the MBAP header in 7 bytes size.

Archives-History

  • The value archives appended of detection the doubly links and their all removing.
  • FSArch: The archives unpacking function appended by the error message unification and a possibility to remove error archives, currently only at checking the value archive files.

Transports

  • The IO log items appended by whole package (or aggregation) size and the aggregation default time set to 1 second. Using the variables "ReqTm", "ReqMode", "ToTmOut", "InBufSz", "ReqAnsw" moved to the individual space of the transport object.
  • Sockets,SSL: TTransSock::getAddr() renamed to TTransSock::addrGet() and the address resolving moved to a new function TTransSock::addrResolve() with direct resolving the static addresses and dynamic resolving by gethostbyname() due to getaddrinfo() has problems with reenteranting (on old systems) and global lock causes long hangs on all addresses at problems with DNS. Also appended a commandline option "--getaddrinfo" to enable it for yourself.
    • FIX: Resolving a hard-detected problem of substitution wrong addresses during the addresses resolving by getservbyname_r() from other thread, that is from GLibC 2.24 there forced using getaddrinfo() as more correct or inet_pton() + locked getservbyname_r() on old systems.
  • FIX:SSL: Fixed in processing responses of the output transports from initiative connections, especially for no response.
    • Appended of implementation TTransportIn::writeTo() with moving to map in holding the SSockIn structure.
    • Input part of the transports switched to use unified TTransSock::addrResolve() for precursory resolving all dynamic addresses and pass ready static addresses to BIO_new_accept().

Transport Protocols

  • OPC_UA: Implementing the true authentication with checking permission to the DAQ-Nodes for the user:
    • libOPC_UA: implementing the authentication through UA::Server::EP::sessActivate() and the property "identTkn", from which there is taken the user in the attribute "userAuthenticated" and that is written to "UA::Server::Sess::{user,idPolicyId}";
    • libOPC_UA: all data requests by reqData() appended in "req" by an attribute "sesTokId" with session identifier here and for accessing the user;
    • appending a configuration field "Anonymous user" for representing the anonymous authentication.
  • HTTP: Appended by the generic function of transition any method to WEB-modules — HTTP().

User Interface

  • FIX:Vision,WebVision: Implementing of rounding big interval points by the Besier Cubic Curves. Fixing of calculating bottom border for vertical scale.
  • VCAEngine,Vision,WebVision: The type Image of the primitive Media appended by the attribute "Keep aspect ratio at fitting (keepAspect)".
  • FIX:VCAEngine,Vision: Adding an option in the "Styles" tab of the projects with control the writing to styles in the execution context. And the writing to the styles disabled on the project side.
  • FIX:WebVision: Requesting data of the resources added by support chunks for big data and conversion only for small images. The Save type of the buttons appended by support the media ranges with storing the data in WebVision context for retries.
  • WebUser: Switched to the generic function HTTP() of transition from Protocol.HTTP. Appended by an optional attribute "Transport (tr)" of the processing procedures and templates, taken from the protocol object. The attribute "Result (rez)" allowed in empty value to prevent sending any response, that is meaning direct writing by TTransportIn::writeTo().
  • QTCfg: The Back and Forward buttons expanded by a menu of the direct items accessing.
  • FIX:Vision: Preventing fullscreen mode fault in some XOrg conditions, when the fullscreen Qt-flag occasionally cleared, that is the flag was doubled internally. Reproduced often with Qt6 on Debian 12.
  • WebCfgD: Expanding of call pageRefresh() by integrating the lag time.