Changelog and Upgrade Guide¶
This page lists all relevant changes in regular version updates.
What has changed in 1.0.24?¶
Another regular maintenance release for the beginning of the year, bringing some bugfixes for OPC UA Server and improving the recently added Focas protocol.
Update NodeJS to version 12.20.1, including security updates
All protocols: Switch base image of protocol-mapper from alpine linux to debian (buster-slim) to avoid compatibility issues with musl-libc and now just use standard glibc
MQTT Broker: Upgrade VerneMQ to version 1.11, fixing issues with overly consuming disk space
OPC UA Server: Fix for Mismatch of UserIdentityTokens, fixing some connection problems from specific OPC UA clients.
Focas protocol: Make Focas connection asynchronous again
Focas protocol: Fix crash on return value conversion of pmc_rdpmcrng method
Documentation: Fix modbus example files to always define a dataType property on all endpoints
What has changed in 1.0.23?¶
This regular bugfix update improves stability and scalability, but also brings new features. The release includes ingress routes to custom service containers now not only for HTTP protocol connections but also for general TCP/IP connections. Also, the Focas protocol for Fanuc CNC machines has been added.
Admin UI: Service catalog display page is updated with categories and more pointers on how to create and deploy further services
Modbus protocol: connection status not updating on half-open TCP socket
OPCUA Server: Increase large number of nodes that can be created
Documentatino: Update docs to reflect actual default for QOS on mappings
Admin-UI: Fix double upload needed on license upload
Admin UI: Fix system status page reload
OPC UA Server: fix OPC UA Server’s different endpoint specification preventing some client access
Commissioning files: Fix bug in circular dependency detection algorithm
What has changed in 1.0.22?¶
Add local caching of valid license file so that offline instances can restart without additional license file handling
OPC UA Server: Added 64-bit integer number support
ADS protocol: Added data type conversion directly in endpoints
Docker: Change docker image tags to version number instead of git commit hash
OPC UA Server Historical Access: Use the original data timestamp when writing to influx database
OPC UA Server Historical Access: Improved retention policy handling
OPC UA Server: fixing server behavior if MQTT broker is reconnecting
SQL protocol (MariaDB): Fix sql insertion when template variables contain non-ascii characters
OPC UA Server: Fix error on influx setup preventing OPC UA access at all
What has changed in 1.0.21?¶
This regular bugfix update improves the stability of the new OPC UA server considerably. Also, issues with MQTT connections, in Heidenhain protocol, and in the user interface have been fixed. And the first beta version of the Service Catalog for downloading services online from the Cybus Portal has been added - more content will be added there over the upcoming weeks and months.
Admin UI: Added first draft of Service Catalog for installing services online from the portal
Docker resources: Add properties to limit CPU and memory usage
OPC UA Server: enable OPC UA secure channel by default. BREAKING CHANGE: Connectivity to OPC UA Server is now only possible by “SecuritySetting: Basic256Sha256, SecurityMode: SignAndEncrypt”
Modbus protocol: Improved error messages in case of modbus server disconnect
Update some npm dependencies packages
OPC UA Server: Fix for nonexposure of Namespace metadata for cybus namespace
OPC UA Server: Fixed errors when more than one root node is specified
OPC UA Server: Fix error with array datatypes
OPC UA Server: Fix initialValue 0 not accepted
OPC UA Server: Fix slow endpoint creation if service contains also nodes
OPC UA Server: Catch errors and exceptions on starting OPC UA server if e.g. port is in use
MQTT and GenericVRPC protocols: Fix mqtt-package dependency to non-broken version 6.7.0 where the previous version 6.6.0 caused “Error: Invalid length” exceptions. The erroneous dependency affected Connectware 1.0.18, 1.0.19, and 1.0.20.
Heidenhain protocol: Fix endpoint schema to allow function call parameters on subscribe
Admin UI: Fix unsorted service overview table
Admin UI: Fix various mui-datatables deprecation warnings
Admin UI: Fix blank screen for service details if agent is offline
Admin-UI: Fix wrong character encoding on downloading commissioning files with non-ascii characters
Managed Appliances: Fix missing NODE_ENV in balena docker-compose file
What has changed in 1.0.20?¶
Another regular bugfix update of the Connectware. This time, some EtherNet/IP and MsSQL protocol issues have been fixed, some structure improvements with the OPC UA Server were added, and several overall stability improvements were implemented.
Admin-UI: On a Balena managed appliance, show a different link for updating
Agent performs version check upon connecting to central broker, for now just printing a clear log message on version mismatch, but in the future more automatic actions are being prepared.
OPC UA Server: Simplify configuration to only define server and node, no more “parent node” resources. Various other configuration clarifications.
OPC UA Server: Several unhandled promise exceptions are fixed. Deviation tracking is fixed, too, and also UI representation.
Mssql protocol: Fixed host parameter which could not be changed on subsequent connection attempts.
EtherNet/IP protocol: Fix unhandled promise rejection on errors in scanning process
REST API: Fix client registration behaviour if username already exists
Authentication: Fix errors with username and rolename with spaces
Container handling: Fix annoying log error messages about unhandled promise rejections after containers have been restarted
Admin-UI: Fix crashing UI on deleting service in service overview
What has changed in 1.0.19?¶
This week’s bugfix update improves some issues in SQL (MariaDB) and Beckhoff ADS protocols, along with further stability improvements.
Admin-UI: Let distributed agents show their versions in the Agent overview page
SQL protocol (MariaDB): Extend error reporting for when a query validation fails
Beckhoff ADS protocol: Adding id, timestamp and value to protocol output
ADS protocol: User documentation improved by explaining input/output message format in detail
Admin-UI: Make endpoint overview page faster for large number of endpoints
Admin-UI: Improve display refresh of system health page
Beckhoff ADS protocol: Fix occasional segmentation fault on disconnect
What has changed in 1.0.18?¶
This week’s update release brings stability improvements and bugfixes, especially regarding service commissioning files with larger number of endpoints. Additionally, some user interface improvements were implemented, such as an improved license handling and some minor usability improvements when no services are installed yet, to get started even easier.
OPC UA Server: New OPC UA server is added, available as Cybus::Server resource, using port 4841, along with historical access (using an InfluxDB internally). Documentation is still in preparation.
REST: Added /api/system/health endpoint which returns information about the connectware system container.
License file handling improved and better connected with Cybus Portal management interface
Admin-UI: Some UX improvement on empty connectware
Bacnet: Updated bacnet code for improved stability and reliability
Service files: Enable enabling of a large number of endpoints (2000-3000 endpoints)
Service files: Fix cleanup on service rollback if service cannot be installed or updated
Service files: Fixed mapping resource validation on error
EtherNet/IP: programName property can now be null
EtherNet/IP: Optimized connectivity by removing watchdog in favor of reconnection logic in the scanning.
Beckhoff ADS: Fix problems with larger number of endpoints
What has changed in 1.0.17?¶
This week’s regular update release brings again several bugfixes, in particular related to the Beckhoff ADS protocol. Additionally, some user interface improvements were added, such as a notice about newer version availability on the Home section of the Admin-UI.
Admin-UI: Improve user experience for Internet Connectivity checking
Admin-UI: Display available newer versions on Home page
Admin-UI: Improve display of hostname in agent overview
MsSQL: Extend mssql read function to use templates, similar to mssql write function
MsSQL: Add property to skip SQL query format validation, to enable using specific MsSQL syntax variants
Installer: Add extra operation mode for installer to prepare offline installation files
ADS: Fix Beckhoff crash by adding missing delete of async handler
ADS: Fixed subscriptions by choosing the correct subscribe mode
ADS: Update ADS client library from github
OPC DA: Improve wording for OPC DA error messages
Installer: Let the installer not logout if it was logged in before
Services: Fix missing termination condition when setting up state checking, related to the noted bugs
Services: On failing service update, improve cleaning up of resources for rollback
Startup: Fix blocked start-up of system-control-server by fixing an erroneous awk command in bootstrap script
Startup: Fix postgresql error message when User.read is called with empty userId
What has changed in 1.0.16?¶
Next regular update release with several bugfixes, in particular fixing an issue with resource persistance and also for OPC UA reconnection stability. Additionally, another new protocol OPC DA has been added, and plenty of small bugfix improvements make life easier in production use of the Connectware.
Commissioning files: Allow more characters in serviceId and resourceId. For backward compatibility reasons, the rule for auto-generation of a serviceId is kept unchanged, so that an auto-generated serviceId is still all lowercase.
Admin-UI: Implement more details overview of currently used Connectware license
All protocols: Introduce versioning in protocol-mapper so that distributed agents can check for compatible versions
Installer: Improve installer script to self-contain the docker-compose file so that no extra download is needed anymore
Severe bugfix in Admin-UI: Fix erroneous removal of listeners from service instances, causing breaking persistance of resources and unexpectedly restore of older resource versions on Connectware restart
Admin-UI: Fill the host/port field in the Authorize dialog and the Connection overview and detail pages for all protocols
Admin-UI: In the Grant Client Registry dialog, also display the requested roles
All protocols: Improve logging statements in protocol-mapper to let all contain context
All protocols: Fix partly broken subscription restore on reconnect by improving the Connection base class API, especially for OPC UA
OPC UA: Fix remaining issues with OPC UA reconnection behaviour to be much more stable
Pfannenberg: Fix polling data access, improve stability of subscribe data access
Modbus: Fix boolean datatype in modbus data
What has changed in 1.0.15?¶
A new regular update with several bugfixes, some performance improvements in the user interface, and even more stability in working with services. Also, a general SQL connection protocol has been added for connecting the MariaDB database.
LDAP: Security and stability update. LDAP UTF-8 filter values now strictly required to be escaped following the XX hex notation (see LDAP Filters Documentation).
Admin-UI: Fixing buttons in service detail page to appear automatically after enabling the service
Fixed buttons on service detail page that were broken after re-start
Admin-UI: In connection overview and connection detail page, show IP address also for various protocols like Heidenhain and Bacnet
Docker: Improve error message on failing docker image pull
GenericVRPC: Fixing issues with deleting resources
Beckhoff: Fix subscribe/unsubscribe in Beckhoff ADS
Fix race condition that caused corrupt resource persistence storage by ensuring that all persistence access is protected against race conditions
Admin-UI: fix missing error message display on volume deletion
Sinumerik: Fixed writing of Sinumerik teethCount parameter
Fix container-manager memory leak
Modbus: Fix typo preventing processing discrete input
Service Manager: Fixed instabilities after restart by improving resource polling for deviation detection
Service Manager: Fix endpoints to not get stuck in enabling state
Service Manager: Fix confusing short user/role deviation display at service startup
Fix sopas reconnecting
User docs: Fix spelling of protocol names in docs
What has changed in 1.0.14?¶
A new weekly regular update with several bugfixes, some performance improvements in the user interface, and much speed-up of enabling and disabling of services.
Make resource creation and deletion in parallel, and fix delete order. This significantly accelerates enabling and disabling of services
Clarify, clean up and improve parse rule in RuleEngine
Admin-UI: Improve UI performance for Endpoints
Update nodejs version to 12.18.4
User docs: Improved documentation for MQTT_ROOT
User docs: The documented REST API health endpoint was not working as expected, but instead /api/system/info is available to be used for health checking, which is now documented better.
Admin-UI: Fix endpoint deletion in overview page
Improved genericVrpc to be resilient against instantiation order
Admin-UI: let all tables in the ui keep their local state to fix disappearing selection on state changes
Distributed agents: Fixed resource deletion on agents
SHDR: Fix endpoint key mismatch
Bacnet: Fix TypeError crash
Let persistence of objects ignore files with parsing errors
Pfannenberg: Fix crashes on mismatching object declarations
What has changed in 1.0.13?¶
Next weekly regular update with several bugfixes and performance improvements. Also, this release now includes the Pfannenberg protocol.
Admin-UI: Fix connection and endpoint pages when Agents get offline
Admin-UI: Fix container overview page selections by only updating on data change
Admin-UI: Fix toolbar button availability if multiple services are selected
Mapping: Further fix potential message duplication when multiple Mapping resources were subscribing to the same topic
Improve connection cleanup on endpoint disable by removing event listeners on state change
Bacnet: decrease verbosity in normal operation
RuleEngine: Fix parse rule for boolean values
ADS: removing unnecessary verbose error message
What has changed in 1.0.12?¶
The next weekly regular update with several bugfixes and performance improvements.
Improve stability at docker container handling by preventing race conditions on docker calls
Update node-red to 1.1.3
OPC UA: Some bugfix at reconnection handling
Installer: Fix problems at removing old bootstrap container and image
Fix erroneous generation of default serviceId which allowed only a very restricted character set for metadata.name.
Admin-UI: In service detail view, make sure to show only matching connection, endpoint, mapping, not ones from other services.
Admin-UI: Fix missing parameter default value 0 which was not displayed in the configuration dialog
Fix resourceId parsing which is now allowed to start with a number, too.
Remove any mention of old log-server and device-dispatcher, fixing spurious DNS queries for those outdated hostnames.
Bacnet: Bugfix in logging statements
What has changed in 1.0.11?¶
Another regular update is published which brings further performance improvements and bugfixes. In particular, an annoying problem with duplicate messages after disabling and enabling services with mappings has been fixed. Also, the explorer window is working much faster right now, and more issues have been fixed, too.
Improved internal communication performance by switching internal mqtt connections to bestEffort (qos=0) usage, except for the non-local connection of a protocol-mapper agent to the connectware
Increased performance of explorer view
Fix remaining duplicate subscriptions after disabling and enabling again any Mapping resource with more than one mapping
Fix wrong tooltips in toolbar of connection overview, and also fix endpoint and connection button functions
fixed installer in silent mode to be really silent
What has changed in 1.0.10?¶
This regular update release brings further performance improvements and bugfixes. The bootstrap container has been removed and its functions have been integrated into other containers. The new protocol Ethernet/IP has been added. The user documentation contains all example commissioning files as direct downloads.
Move bootstrap functionality into system-control-server, removing bootstrap container completely
Auth-server: improve SQL queries for the user and role model to improve auth-server performance even more
User docs: Add hint about required license if examples use Docker image from Cybus registry
Implement license validation in system control server
Improve container log file download
Admin-UI: improvement for success and failure messages on service state changes
Admin-UI: Service deviation information is now aggregated in backend instead of frontend to improve performance and response time in UI
What has changed in 1.0.9?¶
With this release, performance for complex systems has been improved significantly. Additionally, numerous improvements in the Admin-UI and overall stability fixes have been included. Also, the installer will now remove old unused Docker images of previous Connectware versions, decreasing disk size usage and improving stability, too.
UI Explorer view: Data values which are JSON objects can be copied to clipboard by clicking on a newly introduced Clipboard icon, see Copying Data to Clipboard
Installer: Add removal of old docker images after pulling the newest ones.
Update vrpc to 2.1.6 which also improves instance creation performance, so that now at least 200 endpoints can be handled quickly, with more to come
Improved API of genericVrpc protocol (subscribe now uses id instead of callback)
Improve change-of-value (cov) filter behavior. The COV Filter should now work as expected, independently from its position in the rule chain.
Use the native redsocks instead of our custom container in Balena release
The qos level for all internal MQTT connection was set to default 0 (zero) to improve overall connection performance.
Admin-UI: hide private (internal) roles in user overview upon sorting
Admin-UI: List view sorting and selection is not reset quickly anymore
Admin-UI: fix UI hang in resource/connection view if internal connection exists
Admin-UI: Fix log time display to use range 0..23 hours instead of 1..24
Installer: fix erroneous usage of curl if only wget is available
Mappings: fix incomplete removal of mappings causing duplicate connections (“zombie connections”)
Protocol Mapper: Endpoint waiting for connection now works more than once
What has changed in 1.0.8?¶
This release includes various stability and ease of life improvements as well as slightly more compact file size of the docker images of the Connectware.
Reduce connectware networks to only one. Also, change default network mask to a slightly less common IP range 172.30.0.0/24
Improve error log message on endpoint creation if endpoint does not find its connection, to simplify debugging
OPC UA protocol: OpcuaEndpoint allows either nodeId or browsePath, where it previously required nodeId alone, but now allows either of both.
Mapping: Fix MQTT message handling with named wildcards, which previously stopped working after the first message, but now works correctly.
Fix erroneous deviation message on user or role permissions which contain pseudo-parameters
Admin-UI: fix various UI problems when deleting individual resources: Fix delete button of connections, fix deletion of endpoints, fix display update of volume list after deleting a volume
Documentation: Fix explanation of parameter section in commissioning file
What has changed in 1.0.7?¶
This release brings a large number of stability improvements and better explanations in the user documentation.
HTTP protocol: Added options to configure client certificates (SSL) and certificate policy
Licensefile can be uploaded to system control server by REST endpoint
Sinumerik protocol: Data point “number of teeth” added
User documentation improved for protocols Http, Modbus, Sopas, and for Connection resource
Admin-UI: User interface has been refactored and improved for better performance in Service, Connection, Endpoint, Mapping view
Update node.js to latest 12.18.3
Admin-UI: Fixed displaying of information when an external broker is involved during mapping
User documentation: HTTP permission explanation improved
Fix integer type interpretation of Cybus::MqttPort parameter
Admin-UI: serviceId parameter description fixed in configuration dialog
Admin-UI: favicon size set correctly in manifest
Admin-UI: button tooltips added where missing
Admin-UI: fixed issues with role names from commissioning file
Fix yaml schema to allow qos and retain options at mapping and endpoint resources
Fix missing docker label at bootstrap container
Performance fix when creating larger number of services
Fix authorization of REST calls with query string
What has changed in 1.0.6?¶
This release includes various stability and ease of life improvements as well as new features regarding service updates and configuration as well as agent tracking.
Enabled in-place update of service parameters and/or commissioning files
Agents are being tracked and emit messages on deviation
Possibility to specify qos and retain options for MQTT within mapping configuration
Documentation regarding Connectware users and services has been improved
Sinumerik initial compatibility checking of OPC UA server has been improved
Node.js updated to 12.18.2, node-red workbench updated to 1.1.0
Fixed authentication limitations under load (PostgreSQL communication improved)
Fixed issue with subscribe topic resolution on wildcard ‘#’ mapping when published on parent
Fixed UI problem when pressing escape key in roles dropdown
Fixed issues with API calls to POST /services when used in combination with targetState: enabled
Fixed problems on disabling or deleting mappings in UI
What has changed in 1.0.5?¶
This release was skipped due to QA issues. The changes are listed in the 1.0.6 release.
What has changed in 1.0.4?¶
Feature updates and maintenance: Two new protocols have been added, Sinumerik and Beckhoff ADS. Also, many stability improvements have been implemented, along with regular bug fixes and UI improvements.
Improve date/time format in filename of log download
Prohibit deletion of admin user and connectware-admin role in admin-ui and REST API
REST API call correlation-id is renamed to id according to JSON-RPC
user documentation: sample commissioning files improved
S7 protocol write method was dropping data on high load, now fixed
Fix selection of correct service in admin-ui service view
Fix burst rule in rule engine
user documentation: fix missing parts of Heidenhain protocol
Fix auth-server lock-up due to issues with PostgreSQL connection handling
Fix issues on disabling Werma connections
REST API service delete is fixed
Fixed issue in incomplete disabling of mapping resources
What has changed in 1.0.3?¶
The Heidenhain protocol has been added and further stability improvements have been implemented, along with regular bug fixes and UI improvements.
Heidenhain protocol has been added and completed in 1.0
Log files can be downloaded as .csv files from UI
Installer script has alternative offline installation mode
Node-RED version in workbench updated to current 1.0.6
More npm dependencies have been updated to current versions
Updated CI pipeline with Balena OS VM images build and push
Fix all warnings from react in admin-web-app
Fix problem with topic construction on unsubscribe
Installer script checks even more for potentially missing Internet connection
What has changed in 1.0.2?¶
Stability improvements with some bug fixes.
The node.js version is upgraded to 12.18.0 which includes security updates
Service count number on home page view is fixed
REST API-based creation and deletion of services is now integrated correctly with admin ui
Topic generation in BACnet is fixed
OPC UA re-subscription which failed in certain re-connection scenarios is now fixed
S7 data write format is fixed
What has changed in 1.0.1?¶
Minor bug fixes with improved stability.
Added Rest API for Cybus::Link resource at /services/links
Addded Agent view in Admin Web App so users can view currently connected agents
Fixed general bugs in Cybus services swagger files
Fixed issues with 0 or false values in default parameters in service files
Fixed issues with protocol mapper with a number of issues fixed in the MSSQL protocol
What has changed in 1.0.0?¶
This is the first 1.0 stable release in the 1.0 series of the Connectware! Data governance and connectivity from the shopfloor to the enterprise is now easier and more reliable than ever.
This Changelog describes the incremental changes between each different patch version.
Changes from last beta version¶
Unify swagger filenames to swagger.yaml everywhere
Update node.js in protocol-mapper to 12.16.x
Clarified constraints on username/password length in UI and REST API
Improved OPC UA reconnect behaviour
Mapping resource to respect the state of external MQTT connections
Fix erroneous handling of service id in REST API
Improved SOPAS sopas reconnection behaviour
Fixed performance of frontend adding separate event-backends in react-vrpc, unmounting views not seen in details view, filtering results in parent components and separating state changes into smaller components