The following table provides a summary of features, improvements, and changes added in Release 10.3.0.
Module
|
New feature or improvement
|
Automation 5.0.6000
|
- New JSON editor component is added for ANY type data content in order to enable the user with proper input area and JSON string validation.
|
BACnet 1.3.0
|
- The BACnet Endpoint Configurator functional item is introduced to manage a set of device templates for configuring BACnet end points (devices + device items). This feature is an extension of the device filtering model with a static JSON config file, offering a flexible and dynamic mechanism for local and remote management and controlling device templates. Learn more at Filtering BACnet Endpoints.
- Filtering BACnet functional item polling properties allows for fine-grained control over the set of device item per BACnet object (or group of objects on device level) which will be polled periodically by the Device Access polling mechanism.
- The BACnet adapter configuration is extended with a new configuration property - Enable/disable BACnet COV subscription service (enableSubscribeCOV). Provides the possibility to configure whether the COV service subscription is enabled. Learn more at BACnet configuration.
- The network number is removed from the BACnet device and device item UID representation. [Affects Migration]
Old device UID format: da:device:BACnet:<network_number>_<instance_number> New device UID format: da:device:BACnet:<instance_number>
- A number of network optimizations were introduced:
- The BACnet device state polling is reset after a COV for property is received.
- The separate WhoIs requests for devices with continuous instance numbers are aggregated into a single one when discover the stored BACnet devices after adapter bundle restart.
- The property list per BACnet object is cached on the first read attempt.
- A number of performance optimizations were introduced:
- The BACnet stack concurrency model is improved by enabling parallel initialization of multiple BACnet devices.
- Prevented some potential race conditions by guaranteed order of handling of the BACnet device lifecycle changes.
|
Core 1.4.3000
|
- The following Bouncy Castle libraries in the Key Manager were upgraded from version 1.60 to 1.64:
- bcprov-jdk15on
- bcpkix-jdk15on
- For bundles that use com.prosyst.util.ref.Log instances we no longer create a related OSGi Configuration and the LogService logs every message that comes from com.prosyst.util.ref.Log. It is recommended for these bundles to avoid usage of the com.prosyst.util.ref.Log and SLF4J loggers together because the configuration needed for SLF4J may not be created.
|
Database 3.2.3000
|
- SQLite updated from version 3.32.3 to 3.33
|
External 1.7.0, TEE 2.0.7000
|
The following library was updated:
- org.junit, from version 4.12 to 4.13.1
|
External 1.7.0, Scripting 1.1.0
|
The following bundle was added:
- graaljs-scriptengine, version 20.2.0
|
External 1.7.0
|
The following bundles are updated:
- org.kxml2, from version 2.3.0 to 2.4.2
- conscrypt-uber-jar, from version 2.4.0 to 2.5.1
- org.objectweb.asm, from version 7.3.1 to 9.0
- Guava, from version 19.0 to 30.1-jre
The following Jetty bundles are updated from version 9.4.30.v20200611 to 9.4.35.v20201120:
- jetty-util
- jetty-http
- jetty-io
- jetty-security
- jetty-server
- jetty-servlet
- jetty-alpn-conscrypt-server
- jetty-alpn-java-server
- jetty-alpn-openjdk8-server
- jetty-alpn-server
- jetty-http2-common
- jetty-http2-hpack
- jetty-http2-server
- jetty-osgi-alpn
- websocket-api
- websocket-common
- websocket-server
- websocket-servlet
|
External 1.7.0, mDNS 1.3.2000
|
The following bundle is updated:
- Javax.jmdns, from version 3.5.4 to 3.5.6
|
External 1.7.0
|
- There was a memory usage improvement in the websocket-servlet library. It was in the destroy() method in the org.eclipse.jetty.servelt.WebSocketServlet class; An attribute in the ServletContext there was previously not being removed and now it has been patched.
- There were some uncleared classloader references and related issues in the jetty-util nundle, which could lead to increased memory usage. They have been patched.
- In the org.apache.aries.spifly bundle, there was a missing removal of bundle references from the consumerRestrictions Map in the org.apache.aries.spifly.BaseActivator class, which could lead to increased memory usage. It has been patched.
- There was a potential memory usage increase in the javax.servlet bundle because of a missing clean up of servlets' configurations when destroy() was called for them. It was patched.
|
FIM 2.5.0
|
- Groups special support added to the FIM Web Admin in order to provide UI with more convenient representation of groups hierarchy, management of functional items that are added to a group and execution of bulk operations over group items.
- FIM Web Admin is extended with a new editor component that provides input text area with JSON content formatting and validation. It meets the need for larger data content view when the currently provided text field is not sufficient.
- The group bulk operations over sub-groups are enabled. If a bulk operation is invoked, it reflects any group item, no matter if it is also a group or not. For example if a 'tags' property change is invoked over a group item, its sub-groups' tags will be also updated.
- Vorto tooling is deprecated. FIM to Vorto Converter will be removed in the future with no replacement and a new FIM to Vorto JSON Generator will be announced in order to provide self-contained JSON representations as Vorto modeling language artifacts. Vorto to FIM Converter will be removed in the future with no replacement.
|
Framework 8.6.3000
|
- Added support for javax.net.ssl.KeyManager and javax.net.ssl.TrustManager to Certificate manager. Both interfaces are registered as OSGi services with implementation based on framework keystore.
- Memory usage was reduced by fixing some memory leaks in class loading, resolver, comms and services manager.
|
ONVIF 1.6.0
|
- Added support for ONVIF Pull Point subscription, an event mechanism with request- response behavior. Using this pull eventing mechanism, the user will not be required to open an HTTP port for an event notifications (which is used in the WS-Base Notification), therefore stands for more security. For more information visit ONVIF Pull Point subscription.
- Introducing a new ONVIF Events Device Access Configuration which is used for automatically registering detectors for each notification topic. The functional items registered with this configuration are working for both PullPoint Subscription and WS-Base Notification.
- Pull Point Factory Configuration allows controlling the Pull Point subscription by creating different configuration per device. It allows to create multiple subscriptions per device as well, each with different filter and pulling behavior.
- Added support for all ONVIF Profile T Events which have simple items descriptions. For all event topics, specified within the ONVIF Events Device Access Configuration, which are boolean and simple types, a detector functional items are registered automatically.
- Added support for fetching the MAC address. The MAC address is now part of the Device attributes. The MAC address that we have already is the one used in the OnvifDiscoveredDevice object and it is available only in the pre-register phase and it is not included in the attributes. The mentioned MAC Address is fetched with request to the Camera after the registration.
- Removed default functional item tags. ONVIF is using default tags for its functional items. Those tags were planned for removal for this version and the functional items are now registered without tags.
- The following attributes are now transferred from the device functional item to all of the registered functional items:
- serial.number
- onvif.device.id
- model
- device.address
- Improved the error messages logging when device cannot be registered. Improved the error message logging when TLS Authentication is used with incorrect settings and changed the default values in the ONVIF TLS Configuration.
- ONVIF peripheral dependency for MAC address part of the DiscoveredDevice is optional. ONVIF Discovery MAC address is now optional. In order to have MAC address part of the discovered device, a Peripheral bundle has to be installed.
- WS-Base Notification mechanism is now disabled by default. Additional system property is introduced to enable the mechanism. The functional item which was registered for the motion detection has changed UID and it is part of the new functional items which are registered based on the ONVIF Events Device Access Configuration.
- Now online/offline status mechanism is improved.
|
OSGi 1.9.0
|
- OSGi metadata now can be versioned, using an external file. This allows update of OSGi metadata, in a similar way as it is possible with metadata described in Bosch proprietary format. For more information visit Specifying metadata versions.
- Metatype configuration loader events are now dispatched upon processing installed bundles for metadata content. This allows other system or third-party bundles to track closely metatype configuration loading and synchronize their operations, if needed.
- Added HTTP/2 Server Push Demo com.prosyst.mbs.osgi.http2.push-demo demonstrating how to do HTTP/2 server push its performance over HTTP/2 without server push and HTTP/1.1.
- Logging configuration is not created by default if OSGi log service is used through com.prosyst.util.ref.Log util. This allows users to use ManagedLog or own specific configuration in order to adjust log levels. [Affects Migration]
- Configurations from properties files are created each time their bundle becomes installed, in case they had been deleted, by default. This allows consistent behavior upon multiple install/uninstall operations and ensures that a configuration will always be available when needed. User can explicitly disable this behavior, i.e. for backwards compatibility, by adding #reload=false comment in configuration file. [Affects Migration]
- A new configurable timeout property subscribe.time.out.cp is provided for the re-subscription to events from a UPnP device. For more information refer to the Configuration Properties guide.
- Memory usage was reduced by fixing a significant memory leak in the Service Component Runtime (SCR) and some minor leaks in Configuration Admin, metatype and subsystem bundles.
|
OSGi Things Agent 1.1.0
|
- OSGi bundle filtering is now possible in order to control which bundles will appear in the bundle thing (edge:services:bundles things). No Bundle functional items are registered by default. Such functionality helps decrease the thing size by using LDAP filters for the following properties:
- OSGi configuration filtering is now possible in order to control which configurations will appear as features in the configuration thing (edge:services:configurations). No Configuration functional items are registered by default. Such functionality helps decrease the thing size by using LDAP filters for the following properties:
|
REST 2.1.3000
|
- JAXRS Connector now uses the highest ranking http service available.
|
Scripting 1.1.0
|
- GraalJS support for use with Java v15 and above was added.
|
SPINE 2.6.2000
|
- Aligned SPINE console commands with the commands from the other groups. Two new commands (subscribe/unsubscribe) are implemented to replace the previous events command that is removed.
|
Zigbee 4.11.0
|
- Added possibility to configure the maximum number of device initializations at a time via the initializationSlot property in zigbee.hdm.adapter.pid configuration. It could be used to avoid coordinator overload during start-up.
|