Release Changelog: 8.3.2*-b20251110
Swing
Vision
IGN-13827: Vision Client Tag resource serialization format
Added XML encoding option for client tags alongside existing binary format
IGN-14520: During a redundancy upgrade in 8.3.0 to 8.3.1, Vision client doesn't auto restart
Vision Clients connected to redundant gateways now properly auto-restart when an Ignition upgrade requires it. These changes will apply to future upgrades starting with the upgrade to 8.3.3.
Gateway Network
Gateway Network
IGN-14465: Change Default EAM Send Stats Interval from 30 seconds to 45 seconds
Updated EAM Send Stats default interval to 45 seconds
IGN-14603: system.util.sendRequest call results in exception if the remote Gateway and calling Gateway are both on 8.3.x and the payload is an array or JSON object
Fixed issue where Python dictionaries and lists could not be sent from a Designer or Vision client to a remote gateway via the gateway network.
IGN-14146: Refactor gateway network servlet to run as async servlet
The gateway network now uses its own thread pool to process incoming messages. This will eliminate the issue of the gateway UI becoming unresponsive when handling a large volume of gateway network requests.
Note: any users that use a large hub-and-spoke gateway network system may need to tweak the new Data Channel Thread Pool Max Size on the hub gateway's General Gateway Network Settings page, especially if they have increased the "gateway.maxThreads" setting in gateway.xml in the past.
EAM & Redundancy
**IGN-14048: Backup Gateway Displays 2 Remote Gateways when only connected to the Master **
Fixed an issue where redundant network connections would result in the Diagnostics page reporting the wrong number of Remote Gateways.
IGN-13655: Forward Port: Remote Agent Upgrade > Use Alternate URLs should not use Gateway Network's HTTP Client
EAM remote upgrade task alternate URL function now uses gateway's installed certificates to download from SSL URLs
IGN-14445: EAM agent does not report upgrade download status to redundant controller
Fixed issue where controller gateway would not receive an "Upgrade Complete" message if the controller was part of a redundant pair.
IGN-11990: NPE migrating GATEWAYTASKRECORD
Prevent NPE during the migration of failed EAM tasks
IGN-13989: Redundant backup connection intermittently throws errors after connecting to master
Fixed intermittent "localServerAddress is null" errors on redundant master after nodes connect for the first time.
Perspective
Perspective
IGN-14397: Map: adding a geoJson point without a marker results in a broken icon
Fixed missing leaflet map default marker icon.
IGN-14461: Vessel Symbol: Liquid Appears Outside of Vessel When Using 'Mimic' Appearance
Shared Perspective Symbol renderer code has been refactored to improve maintainability and solve recent regressions relating to missing layers, missing animations, and incorrect transformations (such as the Vessel symbol's liquid level)
IGN-14588: Perspective custom themes: Empty index.css if original entrypoint has no associated theme folder (8.3.0-FINAL, 8.3.1-RC1)
Use the contents of a theme's root entry file if no theme directory entry file exists during migration.
IGN-14186: Icons: new warnings in the browser console
Fixed browser console warnings regarding icons.
IGN-14108: Make Dragging an Element Into a Group Easier
Drawing Editor - Elements Panel
Allows for multiple elements to be moved at once(previous 1 element at a time). If multiple elements are being moved, the drag ghost displays the number of elements being moved instead of the name of the element.
- When moving multiple elements, the descendants are filtered. ie if you have a group selected, and one or more descendants , it treats it as if you were just moving the group.
- Adds a visual indicator above, below, and to the left of an element in the elements panel to indicate where the element(s) will be placed. To the left indicates that it will be placed inside the group element (when the group element is not expanded or if the group element does not have any children).
- if a drag target is "invalid", ie dragging a group element into its child, then no indicator will be displayed, indicating that dropping it here will have no effect
- Adds an offset to the drag ghost to help indicate what level the element will be moved to. ie nested groups have more of an offset from the left
Also improves the Duplicate Element functionality to be more reliable and to place the duplicated elements into the correct positions.
IGN-14544: Drawing Editor: only the most recent Color and Fill change retained when Undo/Redo changes
Drawing Editor: Fill & Strokes' Color Picker Input's direct input element should now properly create an undo/redo point onBlur
IGN-11924: Dropdown Component Does Not Display All Options When wrapMultiSelectValues is Set to True
Fixed an issue where the form component's dropdown widget does not display all options when wrapMultiSelectValues is set to true.
IGN-14192: Form Component: Component Palette Thumbnail Images For The Grid View & Tooltip
Added palette images for form component variants.
IGN-14311: Post AuthChallengeCompleteEventImpl to the EventManager as AuthChallengeCompleteEvent
Updated AuthChallengeCompleteEventImpl instance posts to the the perspective session EventManager to utilize the 2-arg post method to specify the interface AuthChallengeCompleteEvent as the posting class.
Security
User Sources
IGN-14577: Setting Active Directory usersource with Password to None logs a NullPointerException
Fixed a NullPointerException in LDAPHelper.openContext() when the secret for the password is set to None.
IGN-14454: Provide User Source defaults via describe route
Added default profile and settings values to the user source profile describe route.
IGN-13245: AD User Source: Platform executor threads stuck indefinitely waiting on connect attempts, blocking other AD operations
Added ability to set connect timeout to AD, AD/DB and AD/Internal user sources to prevent thread deadlock when connecting.
Security
**IGN-13130: Cookies cause 401 unauthorized from the /data/app/session endpoint after HTTPS authorization **
Fixed an issue where users would be unable to log into the web UI after deleting the web server TLS certificate.
IGN-14624: When migrating AD/DB usersource from 8.1.49 to 8.3, property listUsersFromAD put in wrong scope in config.json
The listUsersFromAD setting on AD/DB Hybrid User Sources is now migrated properly during upgrades from 8.1
IGN-14400: Backup restore process restarts gateway before unpacking encryption keys, causing mismatch
Fixed an issue where the platform encryption keys from a GWBK were not set up early enough during a restore
IGN-14333: Improve message when updating HTTPS cipher settings
Changed the warning message when modifying HTTPS cipher suite settings to more be more descriptive.
Auditing
IGN-13872: Remove unnecessary options for the EdgeAuditProfile.
Disabled common resource menu actions that are not applicable to the Edge audit log. The only available menu item for Audit Profiles when deployed as Edge should now be "View Log."
Foundation
Installers
IGN-7335: Remove Vision Client Launchers from the cloud installers
Removed Vision Client Launcher executables from Cloud Edition as the Vision Module is not included there.
IGN-7985: M1 Macs terminating gateway on Uninstalling Ignition with the JVM
Ignition Gateway launchd services on Mac OS now actually wait for the process to exit instead of forcibly terminating the process. This resolves potential issues with gateway uninstalls and upgrades from the binary installer or shell scripting which caused the gateway to not properly respect its shutdown hooks.
Launchers
IGN-12097: Improve Launcher Multicast resilience
All Launchers do a better job guarding against errors when attempting to bind and unbind to receive broadcasts.
IGN-14457: The Designer Launchers "Import Launcher Config" does not import changes
Importing a launcher or Workstation configuration now overwrites all settings and applications for that launcher.
Web UI
Web UI
IGN-14668: Cannot create OAuth2 Email Profiles until adding additional values in the UI
Fixed OAuth2 Email Profile type form that was not allowing users to complete the form without interacting with non-required fields
IGN-14506: Dimension field is now required when importing a configuration file for a Micro800 device
Fixed the Dimension field being mistakenly required on the Micro800 tag page.
IGN-12938: Web UI: List Queries should use the sortBy parameter so that tables order things in a case-insensitive manner
DataGrids across most all systems now sort on the name field (or some alias) in ascending order by default, resulting in case-insensitive sorting across most pages.
IGN-11376: Refactor older pages to use the new ResourceModeDataGrid, Mass enable / disable
- Adds a mass enable / disable component to the main resource data grids
- Select All checkbox now selects inactive resources when they are shown
- Immutable resources cannot be selected. They are disabled and have a tooltip.
- Inactive item's enabled status now displays correctly in the show more menu.
IGN-14527: Refactor Threads page to use bespoke Threads metrics route
- Page updated to use new route for threads metric data.
- Improvements made to graph.
IGN-14345: Cannot Regenerate or Download OPC UA Certificates
Fixed bug that was preventing users from downloading or regenerating OPC UA Certificates
IGN-12281: Polish: EAM
Added missing success toasts to the EAM gateway configuration process as well as missing required fields to the Events Thresholds page
IGN-14554: Projects DataGrid is not displaying sorted data properly
The data grid on the Projects page now correctly loads its project items in alphabetical order by default
IGN-13675: Web UI doesn't restrict Edge Sync access per license
Fixed WebUI visibility issue with regard to certain Edge Edition licenses.
Comms
Drivers
IGN-14714: Mitsubishi OPC Device Timestamps are showing as 1601-01-01T00:00:00.000Z
Fixed a bug that caused timestamps received from OPC UA servers with a value of 1601-01-01T00:00:00.000Z to be treated as if they were valid instead of null.
**IGN-9869: Mitsubishi Driver - Change default max gap size to -1 **
Changed default max gap size to -1.
IGN-14648: Siemens Enhanced: Sigsegv caused by browsing optimized data blocks
Fixed an issue where a gateway crash could occur when reading or writing to a PLC tag with arbitrary quotes in the item path after browsing an array on the PLC that contained the same tag.
IGN-12675: LEAK: ByteBuf.release() was not called before it's garbage-collected.
Fixed a ByteBuf reference counting leak in TCP/UDP drivers.
OPC
IGN-14542: OPC UA: can't read values from servers with missing DataTypes in OPC UA address space (e.g. Red Lion)
Fixed an issue reading values from servers with incomplete datatype information in the address space, e.g. Red Lion servers.
IGN-14670: OPC Client Connections have race condition that can block the resource system
Fixed a race condition that could block OPC UA connection shutdown indefinitely.
IGN-14560: Milo 1.0.8
Updated Eclipse Milo to version 1.0.8
**IGN-14418: system.opc.browseServer - getElementType() returns NONE **
Fixed OPC browse getElementType() returning null in Designer and Vision Client.
IGN-14377: Some device connections don't have device details option in dropdown
Added missing View Details link to Modbus TCP, Modbus RTU-over-TCP, and Omron NJ drivers.
IGN-14378: Siemens Enhanced driver has device details option, but drawer nonfunctional
Removed link to non-existent device details page for Siemens Enhanced driver.
IGN-14269: Creating OPC Connection with empty endpoint URL results in infinite spinner, breaks discovery route when repeated
Fixed OPC UA discovery endpoint URL parameter validation.
IGN-11814: system.opc.browse doesn't handle brackets properly
Fixed system.opc.browse() treating brackets and other special characters in OPC item paths as regex patterns instead of literals.
Historian
Historian
IGN-13915: Edge sync does not store metadata to QuestDB
Fixed an issue where Edge Remote History Sync was not syncing metadata to remote history providers.
IGN-13732: Analog Deadband Style does not Historize Correctly when using QuestDB or SQLite
Fixed an issue where in certain cases the Core Historian and Internal Historian would not use the configured Deadband Style when querying.
IGN-13226: QuestDB tag history shows up with gaps on Easy Chart
Fixed an issue in the Core Historian where gaps could appear in Easy Chart trending when caching is enabled.
Internal Historian
IGN-14614: Internal Historian shows gaps in Vision Easy Chart
Fixed an issue in the Internal Historian where gaps could appear in Easy Chart trending when caching is enabled.
Platform Core
Databases
IGN-13066: JDBC Drivers should prevent classname collisions with other drivers
JDBC Drivers now prevent classname collisions when creating new JDBC Drivers to prevent load failures in the underlying subsystem.
Webserver
IGN-3497: Refactor /system/gwinfo endpoint to expose less sensitive information
Removed the GatewayAddress field from the response returned from /system/gwinfo as its no longer used by any Ignition resources.
IGN-14388: Invalid publicHTTPs & publicHTTP port configurations prevent gateway from starting with autodetect set to true
Fixed a Gateway startup failure when the Public Address settings were invalid and auto-detect is enabled.
Config Persistence
IGN-13920: ConfigurationManager Should Provide GWBK Restore vs Upgrade Context
Added a getStartupState to the ConfigurationManager which can be used to retrieve different Gateway startup states.
Backup & Restore
IGN-13217: GWBK - Restore Local with alternate metro-key password - first start fails with bad password
Fixes issue where metro keystore password was incorrect during gateway restore
IGN-13539: maxmemory Automatically Set to 1024MB Upon Restore of GWBK for 32-bit System
Stopped automatically adjusting gateway memory on restore on 32 bit systems.
Modules
IGN-14211: Modules don't upgrade if the filename is different than what is currently installed
Fixed a problem where when upgrading modules, if the filename differs from the currently installed module, that file was ignored.
Other
IGN-14507: 8.3: Upgrade Apache Commons IO to 2.14.0+
Upgraded xmlgraphics-commons from 2.7 to 2.11. Upgraded batik from 1.17 to 1.19.
Scripting
Expressions
IGN-14623: translate expression function needs to handle BCP-47 language tags
Fix issue where BCP-47 locale tags were no longer supported by Perspective translate() expressions
Scripting
IGN-14299: system.db.execUpdate assumes Integer return type
Fix issue where specifying the getKey = True option when updating a database via system.db.execUpdate(...) would throw an error.
Reporting
Reporting
IGN-14361: XYChart Pen style = Line with dash patterns: Vector Pen Style in legend is not the same as Raster Pen Style
Fixed a problem where strokes applied to lines were not correct for vectors.
IGN-14346: Strokes and Rectangle Shapes escape clipping area
Fixed problem for vector rendering where strokes and shapes were drawn outside of clip areas.
IGN-13893: Add RMGraphics2D vector printing
Added ability for Vector components to print vector graphics to printer.
IGN-10495: Vector Timeseries Chart
Timeseries Charts updated to include options for Vector output.
Cloud Connectors
Event Streams
IGN-13435: Tag Handler: Add tag browser button to expression panel
Added a Tag Browser button to the Tag Path expression field in Tag Handlers
IGN-12322: Event Stream Tag Handler doesn't handle numeric quality codes
Event Stream Tag Handler qualityCode expression field will now correctly handle Integer codes.
IGN-11553: Name of Event Stream is not validated in the UI TextFields when created
When creating event streams using either the popup dialog or the Welcome page for event streams, names will now be validated.
Tags
Tags & UDTs
IGN-13922: Default Tag Provider Should Not Be Created on GWBK restore
Fixed a problem where the Default Tag Provider was created when for Gateway upgrades.
Data & Logic
SFC
IGN-6508: SFC: Meeting Cancel Condition in Parallel Block Results in Chart Getting Stuck - Unable to Cancel
Fixed an issue where the chart may get stuck after meeting the cancel condition for a Parallel Element.
IGN-9266: SFC: Cancel execution mode in Enclosing Step causing SFC chart to be stuck in the canceling state
Fixed an issue where an enclosed chart may get stuck in the Canceling state when using an Enclosing Step with the Cancel Execution Mode.