Release Notes > Release Notes for ThingWorx Platform 9.5 > What's New in ThingWorx Platform 9.5.0
What's New in ThingWorx Platform 9.5.0
Platform
Namespace
Introduced a new field, Namespace. A namespace is a declarative region that provides a scope to the ThingWorx entities through their grouping using Projects. Namespaces are hierarchical and differentiated as internal hierarchical boundaries. A dot-separated nomenclature is used to display the hierarchy.
For more information, see Namespaces.
Media Entities
Media entities with dynamic content can now accept POST requests. This new functionality may be used to retrieve content from APIs that accept JSON parameters. POST requests made to Media Entity are forwarded to the destination URL, with the result streamed back through ThingWorx. For more information, see Media.
Importers User Group
A new Importers user group was added, allowing group members access to model import functionality. Administrators control which entity or entity types the Importers group can import using ThingWorx permissioning. Only model entities can be imported. This does not enable group members to import data or extensions. For more information, see Authorizing Nonadmin Imports.
Access Modifier
Introduced a new construct, Access Modifiers. An access modifier specifies the scope of accessibility for entities and characteristics. It allows developers to identify those artifacts (entities and their characteristics) that are protected from external use and those that can be consumed by end users for further customization or development including, extension, referencing, and reuse.
For more information, see Access Modifiers.
Building Block Project Type
Introduced anew project type, Building Block. A Building Block type project is a ThingWorx Project entity with entities that break down tightly coupled, bulky implementations into reusable, standardized, self-contained components with well-defined external interfaces and hiding internal implementations. For more information, see Project Type.
Deprecating Entities, Properties, and Services
Introduced a new feature for deprecating entities and characteristics. You deprecate the entities, which can be removed over the next few releases. All the entities and their characteristics can be deprecated.
Persistence Provider
To achieve better throughput with a fresh deployment, we have changed the default values for Influx2 PersistenceProviderPackage as follows:
Max Queue Size: from 500,000 to 1,000,000
Max number of Value Stream Writes in Process Block: from 2,500 to 25,000
Number of Processing Threads: from 5 to 10
Time for Write Timeout: from 10 to 20 seconds
ThingWorx Subscriptions Enhancement
The multi-events subscription capability enables customers to subscribe to more than one event for a single subscription. With this ability also comes the batch ingestion concept, which delivers more than one event to a subscription at a time, grouped based on the timestamp of updated properties.
Note, accessing eventData information through JavaScript is done with the event’s alias. A developer can no longer access eventData by event.eventData.newValue but must use the events[] level and alias unique name to access a specific eventData, such as events["AliasName"].eventData.newValue.value.
The ordered and stateful subscription (BETA) enables running subscription executions sequentially based on an event’s timestamp order.
For more information on the enhancements above, see Thing Subscriptions.
Value Stream Enhancement
Enhancement to the value-stream to support quality information: quality of saving, filtering by quality, and quality of returning.
Added quality and returnMetadata parameter to the following Value Stream services.
quality
AddBooleanValueStreamEntry
AddDateTimeValueStreamEntry
AddImageValueStreamEntry
AddInfoTableValueStreamEntry
AddIntegerValueStreamEntry
AddLocationValueStreamEntry
AddLongValueStreamEntry
AddNumberValueStreamEntry
AddStringValueStreamEntry
AddThingCodeValueStreamEntry
AddVec2ValueStreamEntry
AddVec3ValueStreamEntry
AddVec4ValueStreamEntry
QueryBooleanPropertyHistory
QueryDateTimePropertyHistory
QueryImagePropertyHistory
QueryInfoTablePropertyHistory
QueryIntegerPropertyHistory
QueryLocationPropertyHistory
QueryLongPropertyHistory
QueryNamedPropertyHistory
QueryNumberPropertyHistory
QueryPropertyHistory
QueryStringPropertyHistory
QueryThingCodePropertyHistory
QueryVec2PropertyHistory
QueryVec3PropertyHistory
QueryVec4PropertyHistory
returnMetadata
QueryNamedPropertyHistory
QueryPropertyHistory
Installers
ThingWorx Platform now supports Windows Server 2022.
Fix for Kepware to the ThingWorx Platform’s Race Condition Issue
Redesign of the current “Read From Edge” implementation to formalize the contract between the Edge and the Remote Thing for the startup sequence. This eliminates the possibility of Edge application implementations introducing cyclic dependencies, ensuring backward compatibility with the Edge implementations that use the current contract.
For more information,. see Connecting Devices.
Media Entities
To improve performance, ThingWorx, by default caches Media Entitles. When Dynamic Content is selected/true, Media entities are fetched from the server as they can change on any read. When converting to Dynamic Content from non-dynamic content, set this checkbox to true and perform a Hard Refresh of Media Entities to ensure you retrieve the latest content. A new checkbox, Validate Browser Cache With the Server, is added to the Media Entities. For more information, see Media.
Spring Security OAuth
Spring Security OAuth2 library (spring-security-oauth2-2.5.2.RELEASE.jar) is end-of-life and no longer supported.
As a result, we replaced it to remain in compliance for customers with the following jar-s:
spring-security-oauth2-client-5.6.9.jar
spring-security-oauth2-core-5.6.9.jar
spring-security-oauth2-jose-5.6.9.jar
spring-security-oauth2-resource-server-5.6.9.jar
From a customer's perspective, no change is required post-upgrade to ThingWorx Platform 9.5.
Upgrade
PTC environments were upgraded from Windows Server 2019 to Windows Server 2022 to utilize the latest security features and new functionality.
Mashup Builder
Button Widget
Added support for button size configuration, including a Fill option that enables you fill the available space inside a container with responsive positioning.
Added an IconPosition property that enables you to set the position of the button icon relative to the label.
For more information, see Button Widget (Themable).
Chip Based Data Filter Widget
Fixed the default value of the DateOrder property. In previous versions, this did not work correctly. When migrating to the 9.5 release, the default date order may change when the Automatic option is selected. For more information, see Chip Based Data Filter Widget (Themable).
Dynamic Panel Widget
Renamed the CollapsedByDefault property to Collapsed and added an out binding. You can use the property to set and retrieve the collapsed state of the dynamic panel in a mashup. For more information, see Dynamic Panel Widget (Themed).
Grid Widget
Changes to the grid, such as sorting and reordering columns now persist when the CacheRuntimeChanges property is enabled for multiple grids in a mashup. For more information, see Grid Widget.
Icon Widget
Added a SVGIcon property that enables you to display SVG icons from CDS-icon library. Unlike media entity icons, SVG icons scale without losing quality. For more information, see Icon Widget (Themable).
Web Component SDK
Migrated additional Web Components from Polymer to Lit. For more information, see the Web Component SDK Help Center.
Widget Layouts
Added a Boolean DisableCustomClassLegacyStyles property that enables you to disable legacy styles that are applied when a custom CSS class is applied to widgets with a fixed size like Button, Dropdown, Label, and more. For more information, see Disabling Legacy Custom CSS Class Styles.
End of Support Information
H2 Database
As part of a continuous re-evaluation of our third-party software requirements, we regularly add and remove support for certain softwares. As mentioned in the article End of Life (EOL) notification for ThingWorx persistence provider - H2 Database, from ThingWorx 9.5, support for H2 database has ended. For information on upgrade steps, see Upgrading ThingWorx.
H2 will be supported for the life of ThingWorx 9.3 and ThingWorx 9.4.
Was this helpful?