[Server] Make SubscriptionManagement Methods Async & Fix Publishing of GoodSubscriptionTransferred Message#3350
Conversation
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## master #3350 +/- ##
==========================================
+ Coverage 51.86% 60.00% +8.14%
==========================================
Files 370 371 +1
Lines 78618 78217 -401
Branches 13650 13600 -50
==========================================
+ Hits 40779 46938 +6159
+ Misses 33705 26976 -6729
- Partials 4134 4303 +169 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Pull Request Overview
This PR modernizes the OPC UA .NET Standard Server subscription management by converting synchronous methods to async/await patterns and replacing Lock with SemaphoreSlim for better async compatibility. The changes enable proper async operation throughout the subscription lifecycle while fixing a bug that prevented publishing Good status codes for subscription transfer notifications.
Key Changes:
- Replaced
LockwithSemaphoreSliminSubscriptionManagerfor async-compatible synchronization - Converted subscription lifecycle methods (
StartupAsync,ShutdownAsync,RestoreSubscriptionsAsync, etc.) to async - Removed synchronous wrapper methods from
MasterNodeManagerthat used blocking calls on async methods - Fixed
SessionPublishQueue.TryPublishCustomStatusto properly handle Good status codes by returning null subscription instead of throwing an exception
Reviewed Changes
Copilot reviewed 9 out of 9 changed files in this pull request and generated 6 comments.
Show a summary per file
| File | Description |
|---|---|
| Stack/Opc.Ua.Core/Opc.Ua.Core.csproj | Removed OPCUA_EXCLUDE flags to enable async methods for subscription-related operations |
| Tests/Opc.Ua.Server.Tests/ServerTestServices.cs | Updated test service methods to call async server methods directly instead of using sync wrappers |
| Libraries/Opc.Ua.Server/Subscription/SubscriptionManager.cs | Replaced Lock with SemaphoreSlim; converted lifecycle methods to async; updated synchronization patterns |
| Libraries/Opc.Ua.Server/Subscription/Subscription.cs | Added RestoreAsync factory method; converted ConditionRefresh and SetMonitoringMode methods to async |
| Libraries/Opc.Ua.Server/Subscription/SessionPublishQueue.cs | Fixed TryPublishCustomStatus to handle Good status codes by returning null instead of throwing |
| Libraries/Opc.Ua.Server/Subscription/ISubscriptionManager.cs | Updated interface signatures to async methods |
| Libraries/Opc.Ua.Server/Subscription/ISubscription.cs | Updated interface signatures to async methods |
| Libraries/Opc.Ua.Server/Server/StandardServer.cs | Converted subscription and node management methods to async; updated to return response objects directly |
| Libraries/Opc.Ua.Server/NodeManager/MasterNodeManager.cs | Removed sync wrapper methods; added cancellation token parameter to ShutdownAsync |
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…5.378.145 (#7) This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [OPCFoundation.NetStandard.Opc.Ua](https://github.com/OPCFoundation/UA-.NETStandard) | `1.5.375.457` → `1.5.378.145` |  |  | --- ### Release Notes <details> <summary>OPCFoundation/UA-.NETStandard (OPCFoundation.NetStandard.Opc.Ua)</summary> ### [`v1.5.378.145`](https://github.com/OPCFoundation/UA-.NETStandard/releases/tag/1.5.378.145): OPC UA 1.05 Maintenance Update [Compare Source](OPCFoundation/UA-.NETStandard@1.5.378.134...1.5.378.145) Maintenance Release for fixing bugs found on the main374 development branch + new 1.5.07 Nodesets + generated code. #### Released packages [OPCFoundation.NetStandard.Opc.Ua](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua/1.5.378.145) [OPCFoundation.NetStandard.Opc.Ua.Core](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Core/1.5.378.145) [OPCFoundation.NetStandard.Opc.Ua.Security.Certificates](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Security.Certificates/1.5.378.145) [OPCFoundation.NetStandard.Opc.Ua.Configuration](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Configuration/1.5.378.145) [OPCFoundation.NetStandard.Opc.Ua.Server](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Server/1.5.378.145) [OPCFoundation.NetStandard.Opc.Ua.Client](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Client/1.5.378.145) [OPCFoundation.NetStandard.Opc.Ua.Client.ComplexTypes](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Client.ComplexTypes/1.5.378.145) [OPCFoundation.NetStandard.Opc.Ua.Bindings.Https](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Bindings.Https/1.5.378.145) [OPCFoundation.NetStandard.Opc.Ua.PubSub](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.PubSub/1.5.378.145) #### What's Changed - Fix a bug where a Task.Delay is left over infinitely. by [@​gailjkm](https://github.com/gailjkm) in [#​3690](OPCFoundation/UA-.NETStandard#3690) - 1.05.07 release final by [@​randy-armstrong](https://github.com/randy-armstrong) in [#​3689](OPCFoundation/UA-.NETStandard#3689) - Fix for crash when processing invalid eventFilter: WhereClause does not contain operand on master378 by [@​mrsuciu](https://github.com/mrsuciu) in [#​3715](OPCFoundation/UA-.NETStandard#3715) - Add opc ua mit license text to nugets instead of license expression (… by [@​marcschier](https://github.com/marcschier) in [#​3725](OPCFoundation/UA-.NETStandard#3725) - \[Client] Fixed excessive tasks spawning during session connection loss (cherry pick PR [#​3707](OPCFoundation/UA-.NETStandard#3707)) by [@​AnatolyKochnev](https://github.com/AnatolyKochnev) in [#​3738](OPCFoundation/UA-.NETStandard#3738) - Port two targeted fixes from master to master378: Filter certificate validation StatusCodes and Fix 'moreNotifications' handling by [@​mrsuciu](https://github.com/mrsuciu) in [#​3742](OPCFoundation/UA-.NETStandard#3742) - Remove OptionalPlaceHolders on NodeState Instances by [@​mrsuciu](https://github.com/mrsuciu) in [#​3573](OPCFoundation/UA-.NETStandard#3573) - Hot fix 1.05.07 2026 05 01 by [@​opcfoundation-org](https://github.com/opcfoundation-org) in [#​3773](OPCFoundation/UA-.NETStandard#3773) - Prepare 1.5.378 release by [@​mrsuciu](https://github.com/mrsuciu) in [#​3792](OPCFoundation/UA-.NETStandard#3792) **Full Changelog**: <OPCFoundation/UA-.NETStandard@1.5.378.134...1.5.378.145> ### [`v1.5.378.134`](https://github.com/OPCFoundation/UA-.NETStandard/releases/tag/1.5.378.134): OPC UA 1.05 Maintenance Update [Compare Source](OPCFoundation/UA-.NETStandard@1.5.378.106...1.5.378.134) Maintenance Release for fixing bugs found on the main374 development branch. #### Released packages [OPCFoundation.NetStandard.Opc.Ua](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua/1.5.378.134) [OPCFoundation.NetStandard.Opc.Ua.Core](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Core/1.5.378.134) [OPCFoundation.NetStandard.Opc.Ua.Security.Certificates](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Security.Certificates/1.5.378.134) [OPCFoundation.NetStandard.Opc.Ua.Configuration](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Configuration/1.5.378.134) [OPCFoundation.NetStandard.Opc.Ua.Server](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Server/1.5.378.134) [OPCFoundation.NetStandard.Opc.Ua.Client](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Client/1.5.378.134) [OPCFoundation.NetStandard.Opc.Ua.Client.ComplexTypes](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Client.ComplexTypes/1.5.378.134) [OPCFoundation.NetStandard.Opc.Ua.Bindings.Https](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Bindings.Https/1.5.378.134) [OPCFoundation.NetStandard.Opc.Ua.PubSub](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.PubSub/1.5.378.134) #### What's Changed - Respect configured RSA minimum certificate key size when creating RSA app certificates by [@​mrsuciu](https://github.com/mrsuciu) in [#​3513](OPCFoundation/UA-.NETStandard#3513) - Improve logging and fix UserNameIdentityToken to return BadIdentityTokenInvalid for failed verification by [@​romanett](https://github.com/romanett) in [#​3514](OPCFoundation/UA-.NETStandard#3514) - fix minor xml docs copy error by [@​richterr](https://github.com/richterr) in [#​3518](OPCFoundation/UA-.NETStandard#3518) - Ignore 0 references in data dictionary and provide better logging. by [@​marcschier](https://github.com/marcschier) in [#​3521](OPCFoundation/UA-.NETStandard#3521) - Hook lookup of symbol in types project and set hook in opc ua core on assembly loading by [@​marcschier](https://github.com/marcschier) in [#​3520](OPCFoundation/UA-.NETStandard#3520) - Code clean up and improvements by [@​marcschier](https://github.com/marcschier) in [#​3532](OPCFoundation/UA-.NETStandard#3532) - \[CTT / ConsoleReferenceServer] Enforce numeric DataTypes for AnalogItem variables. by [@​romanett](https://github.com/romanett) in [#​3530](OPCFoundation/UA-.NETStandard#3530) - add FindIssuerCAByKeyIdentifierAsync by [@​KircMax](https://github.com/KircMax) in [#​3535](OPCFoundation/UA-.NETStandard#3535) - add throwing serviceresultexception with stacktrace by [@​KircMax](https://github.com/KircMax) in [#​3539](OPCFoundation/UA-.NETStandard#3539) - \[Server] Fix generation of UserTokenPolicyIDs by [@​raserle](https://github.com/raserle) in [#​3525](OPCFoundation/UA-.NETStandard#3525) - Cherry pick Bugfixes from 1.6 to 1.5.378 by [@​romanett](https://github.com/romanett) in [#​3572](OPCFoundation/UA-.NETStandard#3572) - Backport changes from master to master378 by [@​mrsuciu](https://github.com/mrsuciu) in [#​3632](OPCFoundation/UA-.NETStandard#3632) - Backport reconnect user token policy reuse to master378 by [@​mrsuciu](https://github.com/mrsuciu) in [#​3640](OPCFoundation/UA-.NETStandard#3640) - Prepare release 1.5.378 from master378 by [@​mrsuciu](https://github.com/mrsuciu) in [#​3638](OPCFoundation/UA-.NETStandard#3638) #### New Contributors - [@​richterr](https://github.com/richterr) made their first contribution in [#​3518](OPCFoundation/UA-.NETStandard#3518) - [@​raserle](https://github.com/raserle) made their first contribution in [#​3525](OPCFoundation/UA-.NETStandard#3525) **Full Changelog**: <OPCFoundation/UA-.NETStandard@1.5.378.134...1.5.378.134> ### [`v1.5.378.106`](https://github.com/OPCFoundation/UA-.NETStandard/releases/tag/1.5.378.106): OPC UA 1.05 Maintenance Update [Compare Source](OPCFoundation/UA-.NETStandard@1.5.378.65...1.5.378.106) Maintenance Release fixing regressions introduced with 1.5.378 - Client Reconnect: [Could not reconnect because transport channel is null for reverse connect](OPCFoundation/UA-.NETStandard#3470) - [\[Server\] TransportChannel Response BadServiceUnsupported is never sent due to unhandled Exception when constructing EndpointIncomingRequest](OPCFoundation/UA-.NETStandard#3504) - [OperationLimits remark does not match FetchOperationLimitsAsync functionality](OPCFoundation/UA-.NETStandard#3501) - [FormatException during ApplicationUri certificate validation prevents rejected-store entry (Session.OpenAsync, 1.5.378.65)](OPCFoundation/UA-.NETStandard#3468) - [\[Client\] PUBLISH x - Unhandled error 0x80850000 during Publish. --> Client should handle BadPublishTimeout code from the Server gracefully](OPCFoundation/UA-.NETStandard#3459) - [StatusCode cast from boxed value (object) does not work, but is expected to work in the encoders](OPCFoundation/UA-.NETStandard#3444) - Fix SourceTimestamp for variables without explicit timestamps in BaseVariableState - \[Client] Fix two bugs in MonitoredItem by [@​tobiasfrick](https://github.com/tobiasfrick) in [#​3447](OPCFoundation/UA-.NETStandard#3447) - \[Client] Fix format string in ValidateServerCertificateApplicationUri by [@​wxmayifei](https://github.com/wxmayifei) in [#​3441](OPCFoundation/UA-.NETStandard#3441) - \[Client] Fix Session.Save to only save specified subscriptions by [@​tobiasfrick](https://github.com/tobiasfrick) in [#​3446](OPCFoundation/UA-.NETStandard#3446) Also some smaller refactorings or features were done: - \[Server] Introduced new Interfaces for IConfigurationNodeManager, IDiagnosticsNodeManager & IMasterNodeManager, those will be used in the next release that **1.6 that also introduces SemanticVersioning** - \[Server] TrustList now also uses async callbacks - \[Server] Refactor for full async subscription management - \[GDS] Add configurable validation limits for trust list file read/write operations #### Released packages [OPCFoundation.NetStandard.Opc.Ua](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua/1.5.378.106) [OPCFoundation.NetStandard.Opc.Ua.Core](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Core/1.5.378.106) [OPCFoundation.NetStandard.Opc.Ua.Security.Certificates](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Security.Certificates/1.5.378.106) [OPCFoundation.NetStandard.Opc.Ua.Configuration](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Configuration/1.5.378.106) [OPCFoundation.NetStandard.Opc.Ua.Server](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Server/1.5.378.106) [OPCFoundation.NetStandard.Opc.Ua.Client](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Client/1.5.378.106) [OPCFoundation.NetStandard.Opc.Ua.Client.ComplexTypes](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Client.ComplexTypes/1.5.378.106) [OPCFoundation.NetStandard.Opc.Ua.Bindings.Https](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Bindings.Https/1.5.378.106) [OPCFoundation.NetStandard.Opc.Ua.PubSub](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.PubSub/1.5.378.106) #### What's Changed - Add long-running connection stability test with dynamic token renewal by [@​Copilot](https://github.com/Copilot) in [#​3424](OPCFoundation/UA-.NETStandard#3424) - Bump Roslynator.Analyzers from 4.14.1 to 4.15.0 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​3433](OPCFoundation/UA-.NETStandard#3433) - Bump NUnit3TestAdapter from 6.0.0 to 6.0.1 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​3432](OPCFoundation/UA-.NETStandard#3432) - Bump NUnit.Console from 3.21.0 to 3.21.1 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​3431](OPCFoundation/UA-.NETStandard#3431) - Bump System.Text.Json from 10.0.0 to 10.0.1 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​3438](OPCFoundation/UA-.NETStandard#3438) - Bump System.Formats.Asn1 from 10.0.0 to 10.0.1 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​3437](OPCFoundation/UA-.NETStandard#3437) - Bump System.Collections.Immutable from 10.0.0 to 10.0.1 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​3436](OPCFoundation/UA-.NETStandard#3436) - Bump Roslynator.Formatting.Analyzers from 4.14.1 to 4.15.0 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​3435](OPCFoundation/UA-.NETStandard#3435) - \[CI] Stabilize Connection stability test: Only run test on net 10, only print per node status in debug runs by [@​romanett](https://github.com/romanett) in [#​3439](OPCFoundation/UA-.NETStandard#3439) - \[GDS] Add configurable validation limits for trust list file read/write operations by [@​Copilot](https://github.com/Copilot) in [#​3411](OPCFoundation/UA-.NETStandard#3411) - Bump NUnit.Console from 3.21.1 to 3.22.0 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​3440](OPCFoundation/UA-.NETStandard#3440) - \[Client & Server] Remove all usages of SoftwareCertificates by [@​romanett](https://github.com/romanett) in [#​3443](OPCFoundation/UA-.NETStandard#3443) - \[Server] Refactor for full async subscription management by [@​romanett](https://github.com/romanett) in [#​3442](OPCFoundation/UA-.NETStandard#3442) - \[Client] Fix format string in ValidateServerCertificateApplicationUri by [@​wxmayifei](https://github.com/wxmayifei) in [#​3441](OPCFoundation/UA-.NETStandard#3441) - Fix Session.Save to only save specified subscriptions by [@​tobiasfrick](https://github.com/tobiasfrick) in [#​3446](OPCFoundation/UA-.NETStandard#3446) - \[Client] Fix two bugs in MonitoredItem by [@​tobiasfrick](https://github.com/tobiasfrick) in [#​3447](OPCFoundation/UA-.NETStandard#3447) - \[Server] Add several interfaces to improve testability & prepare for Dependency Injection by [@​romanett](https://github.com/romanett) in [#​3448](OPCFoundation/UA-.NETStandard#3448) - Fix ObjectDisposedException in SubscriptionManager background tasks on shutdown by [@​Copilot](https://github.com/Copilot) in [#​3456](OPCFoundation/UA-.NETStandard#3456) - Fix Server/ServerStatus/State SourceTimestamp. Fix Reference Server config, not loading OperationLimits due to wrong order. by [@​romanett](https://github.com/romanett) in [#​3454](OPCFoundation/UA-.NETStandard#3454) - Handle BadRequestTimeout gracefully in Publish error handling by [@​Copilot](https://github.com/Copilot) in [#​3460](OPCFoundation/UA-.NETStandard#3460) - Suppress expected keepalive errors during test shutdown by [@​Copilot](https://github.com/Copilot) in [#​3458](OPCFoundation/UA-.NETStandard#3458) - Bump Microsoft.AspNetCore.Http from 2.3.0 to 2.3.9 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​3462](OPCFoundation/UA-.NETStandard#3462) - Bump NUnit3TestAdapter from 6.0.1 to 6.1.0 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​3467](OPCFoundation/UA-.NETStandard#3467) - Bump Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets from 2.3.0 to 2.3.9 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​3466](OPCFoundation/UA-.NETStandard#3466) - Allow status code variant creation from uint by [@​marcschier](https://github.com/marcschier) in [#​3472](OPCFoundation/UA-.NETStandard#3472) - Fix session reconnect handler by [@​marcschier](https://github.com/marcschier) in [#​3471](OPCFoundation/UA-.NETStandard#3471) - Set correct target framework for long running test by [@​marcschier](https://github.com/marcschier) in [#​3474](OPCFoundation/UA-.NETStandard#3474) - Change license reference in copilot agents file by [@​marcschier](https://github.com/marcschier) in [#​3479](OPCFoundation/UA-.NETStandard#3479) - Fix SourceTimestamp for variables without explicit timestamps in BaseVariableState by [@​Copilot](https://github.com/Copilot) in [#​3451](OPCFoundation/UA-.NETStandard#3451) - Document certificate validation workflow with chain building and configuration details by [@​Copilot](https://github.com/Copilot) in [#​3481](OPCFoundation/UA-.NETStandard#3481) - Bump Microsoft.Extensions.Configuration and Microsoft.Extensions.Configuration.EnvironmentVariables by [@​dependabot](https://github.com/dependabot)\[bot] in [#​3487](OPCFoundation/UA-.NETStandard#3487) - Bump Microsoft.AspNetCore.Server.Kestrel and Microsoft.AspNetCore.Server.Kestrel.Core by [@​dependabot](https://github.com/dependabot)\[bot] in [#​3485](OPCFoundation/UA-.NETStandard#3485) - Bump System.Collections.Immutable from 10.0.1 to 10.0.2 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​3490](OPCFoundation/UA-.NETStandard#3490) - Bump Microsoft.Extensions.Logging from 10.0.1 to 10.0.2 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​3488](OPCFoundation/UA-.NETStandard#3488) - Add async callback support to TrustList implementation by [@​Copilot](https://github.com/Copilot) in [#​3483](OPCFoundation/UA-.NETStandard#3483) - Extend NodeSet Export by [@​koepalex](https://github.com/koepalex) in [#​3491](OPCFoundation/UA-.NETStandard#3491) - Change DebugCheck conditional compilation from DEBUG to CHECKED by [@​Copilot](https://github.com/Copilot) in [#​3496](OPCFoundation/UA-.NETStandard#3496) - \[Server] Use Classes instead of Interfaces for NodeManagers to ensure compatibility for 1.5.378 by [@​romanett](https://github.com/romanett) in [#​3497](OPCFoundation/UA-.NETStandard#3497) - \[Server] Fix TransportChannel Response BadServiceUnsupported is never sent due to unhandled Exception when constructing EndpointIncomingRequest by [@​romanett](https://github.com/romanett) in [#​3505](OPCFoundation/UA-.NETStandard#3505) - \[Client] Modified Publish error handling to raise publish error events for BadNoSubscription if there are active subscriptions by [@​romanett](https://github.com/romanett) in [#​3502](OPCFoundation/UA-.NETStandard#3502) - Fix OperationLimits to apply min(client, server) logic per documentation by [@​Copilot](https://github.com/Copilot) in [#​3503](OPCFoundation/UA-.NETStandard#3503) - revert breaking changes for 1.5.378 by [@​romanett](https://github.com/romanett) in [#​3508](OPCFoundation/UA-.NETStandard#3508) - Merge master into 1.5.378 by [@​romanett](https://github.com/romanett) in [#​3499](OPCFoundation/UA-.NETStandard#3499) #### New Contributors - [@​wxmayifei](https://github.com/wxmayifei) made their first contribution in [#​3441](OPCFoundation/UA-.NETStandard#3441) - [@​tobiasfrick](https://github.com/tobiasfrick) made their first contribution in [#​3446](OPCFoundation/UA-.NETStandard#3446) **Full Changelog**: <OPCFoundation/UA-.NETStandard@1.5.378.65...1.5.378.106> ### [`v1.5.378.65`](https://github.com/OPCFoundation/UA-.NETStandard/releases/tag/1.5.378.65): OPC UA 1.05 Maintenance Update [Compare Source](OPCFoundation/UA-.NETStandard@1.5.377.22...1.5.378.65) This release is based on the 1.05.06 Nodeset [#​3299](OPCFoundation/UA-.NETStandard#3299). It contains important bug fixes which were found after the last 1.05.378-preview release. Please consider all changes from the [1.5.378.10-preview](https://github.com/OPCFoundation/UA-.NETStandard/releases/tag/1.5.378.10-preview) release notes. This release changes the Lincensing of the Project to MIT ##### Features: - Add Event to Update Session (Server) when diagnostics counters changes by [@​Lessi30](https://github.com/Lessi30) - Add optional Parent Child linking when importing NodeSet2.xml - Add Client Based NodeSet2 Export - Add Support for restoring triggered Monitored Items on Subscription recreation - Make Network Socket in UdpPubSubConnection reachable ##### Fixes: ``` - Fix ApplicationConfiguration serialization/deserialization for deprecated/modern settings. - Fix Add OPCUA_EXCLUDE_AccessLevelExType to Opc.Ua.Core.csproj - Restore clean console output in ConsoleReferenceServer and ConsoleReferenceClient. - Fix client returning BadUserAccessDenied when SecurityPolicy or SecurityMode not matching - Fix MinNonceLength for SecurityPolicies.Basic128Rsa15 - Fix race condition causing duplicate MonitoredItems in concurrent CreateItemsAsync - Fix SourceTimestamp and ServerTimestamp mismatch in ServerStatus children - Reduce Allocations by @​RicoSuter - Fix KeyFrame not sent if no changed values - Fix: Allow calling methods with only output parameters - Remove localhost restriction from LDS registration certificate validation - Normalize distinguished name field abbreviations for platform compatibility of attribute State/ProvinceName ``` #### Released packages [OPCFoundation.NetStandard.Opc.Ua](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua/1.5.378.65) [OPCFoundation.NetStandard.Opc.Ua.Core](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Core/1.5.378.65) [OPCFoundation.NetStandard.Opc.Ua.Security.Certificates](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Security.Certificates/1.5.378.65) [OPCFoundation.NetStandard.Opc.Ua.Configuration](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Configuration/1.5.378.65) [OPCFoundation.NetStandard.Opc.Ua.Server](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Server/1.5.378.65) [OPCFoundation.NetStandard.Opc.Ua.Client](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Client/1.5.378.65) [OPCFoundation.NetStandard.Opc.Ua.Client.ComplexTypes](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Client.ComplexTypes/1.5.378.65) [OPCFoundation.NetStandard.Opc.Ua.Bindings.Https](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Bindings.Https/1.5.378.65) [OPCFoundation.NetStandard.Opc.Ua.PubSub](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.PubSub/1.5.378.65) #### What's Changed - Fix CI for Netstandard 2.0 & net 9 Tests by [@​romanett](https://github.com/romanett) in [#​3347](OPCFoundation/UA-.NETStandard#3347) - Bump Microsoft.Extensions.Configuration from 9.0.10 to 10.0.0 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​3345](OPCFoundation/UA-.NETStandard#3345) - \[Server] Make SubscriptionManagement Methods Async & Fix Publishing of GoodSubscriptionTransferred Message by [@​romanett](https://github.com/romanett) in [#​3350](OPCFoundation/UA-.NETStandard#3350) - Bump actions/checkout from 5 to 6 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​3355](OPCFoundation/UA-.NETStandard#3355) - Bump Microsoft.Extensions.Configuration.EnvironmentVariables from 9.0.10 to 10.0.0 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​3356](OPCFoundation/UA-.NETStandard#3356) - Normalize distinguished name field abbreviations for platform compatibility of attribute State/ProvinceName by [@​mrsuciu](https://github.com/mrsuciu) in [#​3358](OPCFoundation/UA-.NETStandard#3358) - Remove localhost restriction from LDS registration certificate validation by [@​Copilot](https://github.com/Copilot) in [#​3352](OPCFoundation/UA-.NETStandard#3352) - Fix GetDataTypeId to return specific DataTypeId for IEncodeable types by [@​Copilot](https://github.com/Copilot) in [#​3353](OPCFoundation/UA-.NETStandard#3353) - Fix: Allow calling methods with only output parameters by [@​Copilot](https://github.com/Copilot) in [#​3354](OPCFoundation/UA-.NETStandard#3354) - Added security policy benchmarks by [@​mrsuciu](https://github.com/mrsuciu) in [#​3357](OPCFoundation/UA-.NETStandard#3357) - Bump BenchmarkDotNet from 0.15.6 to 0.15.8 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​3364](OPCFoundation/UA-.NETStandard#3364) - \[Server] Make EndpointIncomingRequest a ReadonlyStruct & pool ValueTaks by [@​romanett](https://github.com/romanett) in [#​3363](OPCFoundation/UA-.NETStandard#3363) - Downgrade PublishNetworkMessage log level from Information to Debug by [@​Copilot](https://github.com/Copilot) in [#​3365](OPCFoundation/UA-.NETStandard#3365) - Use temp folder for GDS test certificate storage by [@​Copilot](https://github.com/Copilot) in [#​3368](OPCFoundation/UA-.NETStandard#3368) - Fix KeyFrame not sent if no changed values by [@​Copilot](https://github.com/Copilot) in [#​3367](OPCFoundation/UA-.NETStandard#3367) - Add provisioning mode support for certificate provisioning and initial server configuration by [@​Copilot](https://github.com/Copilot) in [#​3375](OPCFoundation/UA-.NETStandard#3375) - Remove hardcoded Retain=true in ConditionState.UpdateStateAfterEnable by [@​Copilot](https://github.com/Copilot) in [#​3370](OPCFoundation/UA-.NETStandard#3370) - Add comprehensive documentation for ComplexTypes library by [@​Copilot](https://github.com/Copilot) in [#​3373](OPCFoundation/UA-.NETStandard#3373) - performance: Reduce allocations (logger factory reuse, check enabled) by [@​RicoSuter](https://github.com/RicoSuter) in [#​3387](OPCFoundation/UA-.NETStandard#3387) - Add reverse connect command line support to ConsoleReferenceServer by [@​Copilot](https://github.com/Copilot) in [#​3376](OPCFoundation/UA-.NETStandard#3376) - Include failed value in XmlDecoder error messages by [@​Copilot](https://github.com/Copilot) in [#​3374](OPCFoundation/UA-.NETStandard#3374) - Fix BaseEventState.MemberwiseClone() to pass Parent to Activator.CreateInstance by [@​Copilot](https://github.com/Copilot) in [#​3361](OPCFoundation/UA-.NETStandard#3361) - Fix console reference client cli args conflict by [@​mohdfareed](https://github.com/mohdfareed) in [#​3389](OPCFoundation/UA-.NETStandard#3389) - Update headers and license files by [@​marcschier](https://github.com/marcschier) in [#​3388](OPCFoundation/UA-.NETStandard#3388) - Make Network Socket in UdpPubSubConnection reachable by [@​Copilot](https://github.com/Copilot) in [#​3385](OPCFoundation/UA-.NETStandard#3385) - Fix BaseVariableState to return correct BuiltInType for Byte arrays vs ByteString by [@​Copilot](https://github.com/Copilot) in [#​3384](OPCFoundation/UA-.NETStandard#3384) - Fix: State helper methods now update timestamps and clear change masks by [@​Copilot](https://github.com/Copilot) in [#​3371](OPCFoundation/UA-.NETStandard#3371) - Fix: Enable historical data access for historizing nodes in Reference Server by [@​Copilot](https://github.com/Copilot) in [#​3383](OPCFoundation/UA-.NETStandard#3383) - Fix ExtractValueFromVariant method call condition by [@​Copilot](https://github.com/Copilot) in [#​3382](OPCFoundation/UA-.NETStandard#3382) - Add support for restoring triggered monitored items on session reconnect by [@​Copilot](https://github.com/Copilot) in [#​3377](OPCFoundation/UA-.NETStandard#3377) - Add support for private encodeable factory in server initialization by [@​Copilot](https://github.com/Copilot) in [#​3366](OPCFoundation/UA-.NETStandard#3366) - Fix SourceTimestamp and ServerTimestamp mismatch in ServerStatus children by [@​Copilot](https://github.com/Copilot) in [#​3386](OPCFoundation/UA-.NETStandard#3386) - Bump NUnit.Console from 3.20.2 to 3.21.0 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​3390](OPCFoundation/UA-.NETStandard#3390) - Add client-based NodeSet2 export functionality by [@​Copilot](https://github.com/Copilot) in [#​3400](OPCFoundation/UA-.NETStandard#3400) - Add comprehensive OPC UA Profiles and Facets documentation by [@​Copilot](https://github.com/Copilot) in [#​3397](OPCFoundation/UA-.NETStandard#3397) - Fix race condition causing duplicate MonitoredItems in concurrent CreateItemsAsync calls by [@​Copilot](https://github.com/Copilot) in [#​3399](OPCFoundation/UA-.NETStandard#3399) - Fix CallMethodResult.InputArgumentResults to comply with OPC UA Part 4 Section 5.12 by [@​Copilot](https://github.com/Copilot) in [#​3398](OPCFoundation/UA-.NETStandard#3398) - Add optional parent-child linking when importing NodeSet2.xml by [@​Copilot](https://github.com/Copilot) in [#​3396](OPCFoundation/UA-.NETStandard#3396) - Disable mac os github actions runs by [@​marcschier](https://github.com/marcschier) in [#​3404](OPCFoundation/UA-.NETStandard#3404) - Bump NUnit3TestAdapter from 5.2.0 to 6.0.0 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​3391](OPCFoundation/UA-.NETStandard#3391) - Only treat an actual StatusCode value equal to Good as null to avoid mis-encoding by [@​mrsuciu](https://github.com/mrsuciu) in [#​3403](OPCFoundation/UA-.NETStandard#3403) - Fix thread pool exhaustion with many MQTT writer groups by [@​Copilot](https://github.com/Copilot) in [#​3395](OPCFoundation/UA-.NETStandard#3395) - Remove BouncyCastle dependency from GDS Server by [@​Copilot](https://github.com/Copilot) in [#​3393](OPCFoundation/UA-.NETStandard#3393) - Fix MinNonceLength for SecurityPolicies.Basic128Rsa15 by [@​romanett](https://github.com/romanett) in [#​3410](OPCFoundation/UA-.NETStandard#3410) - Fix client returning BadUserAccessDenied when SecurityPolicy or SecurityMode not matching by [@​Copilot](https://github.com/Copilot) in [#​3270](OPCFoundation/UA-.NETStandard#3270) - Restore clean console output in ConsoleReferenceServer and ConsoleReferenceClient by [@​Copilot](https://github.com/Copilot) in [#​3409](OPCFoundation/UA-.NETStandard#3409) - Bump Microsoft.Extensions.Configuration and Microsoft.Extensions.Configuration.EnvironmentVariables by [@​dependabot](https://github.com/dependabot)\[bot] in [#​3418](OPCFoundation/UA-.NETStandard#3418) - Add event to update session when diagnostic counters changes by [@​Lessi30](https://github.com/Lessi30) in [#​3407](OPCFoundation/UA-.NETStandard#3407) - Bump actions/upload-artifact from 5 to 6 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​3416](OPCFoundation/UA-.NETStandard#3416) - Add OPCUA\_EXCLUDE\_AccessLevelExType to Opc.Ua.Core.csproj by [@​opcfoundation-org](https://github.com/opcfoundation-org) in [#​3421](OPCFoundation/UA-.NETStandard#3421) - Refactor ApplicationConfiguration serialization for deprecated/modern settings and add tests for configuration behavior by [@​mrsuciu](https://github.com/mrsuciu) in [#​3415](OPCFoundation/UA-.NETStandard#3415) - Bump Microsoft.Extensions.Logging from 10.0.0 to 10.0.1 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​3419](OPCFoundation/UA-.NETStandard#3419) - Bump Microsoft.Extensions.Logging.Abstractions from 10.0.0 to 10.0.1 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​3420](OPCFoundation/UA-.NETStandard#3420) - Update version from 1.5.378-preview to 1.5.378 by [@​mrsuciu](https://github.com/mrsuciu) in [#​3422](OPCFoundation/UA-.NETStandard#3422) #### New Contributors - [@​RicoSuter](https://github.com/RicoSuter) made their first contribution in [#​3387](OPCFoundation/UA-.NETStandard#3387) - [@​mohdfareed](https://github.com/mohdfareed) made their first contribution in [#​3389](OPCFoundation/UA-.NETStandard#3389) - [@​Lessi30](https://github.com/Lessi30) made their first contribution in [#​3407](OPCFoundation/UA-.NETStandard#3407) **Full Changelog**: <OPCFoundation/UA-.NETStandard@1.5.378.10-preview...1.5.378.65> ### [`v1.5.377.22`](https://github.com/OPCFoundation/UA-.NETStandard/releases/tag/1.5.377.22): OPC UA 1.05 Maintenance Update [Compare Source](OPCFoundation/UA-.NETStandard@1.5.377.21...1.5.377.22) This maintenance release scope is to fix an important memory leak found in release 1.5.377.21 #### Released packages [OPCFoundation.NetStandard.Opc.Ua](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua/1.5.377.22) [OPCFoundation.NetStandard.Opc.Ua.Core](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Core/1.5.377.22) [OPCFoundation.NetStandard.Opc.Ua.Security.Certificates](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Security.Certificates/1.5.377.22) [OPCFoundation.NetStandard.Opc.Ua.Configuration](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Configuration/1.5.377.22) [OPCFoundation.NetStandard.Opc.Ua.Server](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Server/1.5.377.22) [OPCFoundation.NetStandard.Opc.Ua.Client](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Client/1.5.377.22) [OPCFoundation.NetStandard.Opc.Ua.Client.ComplexTypes](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Client.ComplexTypes/1.5.377.22) [OPCFoundation.NetStandard.Opc.Ua.Bindings.Https](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Bindings.Https/1.5.377.22) [OPCFoundation.NetStandard.Opc.Ua.PubSub](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.PubSub/1.5.377.22) #### What's Changed - Cherry Pick 'fix memory leak of Monitored Items ([#​3324](OPCFoundation/UA-.NETStandard#3324))' by [@​romanett](https://github.com/romanett) in [#​3325](OPCFoundation/UA-.NETStandard#3325) **Full Changelog**: <OPCFoundation/UA-.NETStandard@1.5.377.21...1.5.377.22> ### [`v1.5.377.21`](https://github.com/OPCFoundation/UA-.NETStandard/releases/tag/1.5.377.21): OPC UA 1.05 Maintenance Update [Compare Source](OPCFoundation/UA-.NETStandard@1.5.376.244...1.5.377.21) #### Breaking Changes: ##### Server - IMonitoredItem Interface extended & used instead of MonitoredItem Class - New ISession Interface instead of Session Class - ISesssionManager, ISubscriptionManager, ISubscription & IServerInternal interfaces extended ##### Core - ICertificateStore Async Methods now have async suffixes, old names deprecated - All obsolete Methods removed ##### Client - All sync methods are now marked as deprecated - DataTypeDictionaries moved into the ComplexTypes Package. If the helper methods of the Session were used we recommend to use the complex type system as a replacement that can handle all servers from OPC UA Spec 1.0 - 1.0.05. - NodeCache now has an async interface (to have access to the ITypeTable interface use the .TypeTree property or AsNodeTable method ##### ApplicationInstance - Methods Returning a task have asyny suffixes ##### GDS Client - sync apis marked as deprecated #### Bug Fixes: ##### Server - Fix Subscription Keepalive being sent on first publish - Handle unsent requests on closed SecureChannel to be sent on new channel of the same session ##### Client - Disable Subscription cleanup if subscriptions are being created - Fix subscription leaking due to not completed PublishResponseMessageWorkerAsync tasks - Fix subscription leaking due to not completed PublishResponseMessageWorkerAsync tasks #### New features: ##### Server - Support for async method calls by implementing IAsyncNodeManager interface (see [ConfigurationNodeManager](https://github.com/OPCFoundation/UA-.NETStandard/blob/1.5.377.21/Libraries/Opc.Ua.Server/Configuration/ConfigurationNodeManager.cs) for an example usage) - New Task based Request Queue - New generated Code with async Method Call handlers & async Service Calls - New extended CustomNodeManager with support for SamplingGroup Mechanism ##### GDS Client - exposes async APIS and marks sync apis as deprecated ##### Client - New LRU NodeCache added & used in ComplexType System #### Released packages [OPCFoundation.NetStandard.Opc.Ua](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua/1.5.377.21) [OPCFoundation.NetStandard.Opc.Ua.Core](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Core/1.5.377.21) [OPCFoundation.NetStandard.Opc.Ua.Security.Certificates](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Security.Certificates/1.5.377.21) [OPCFoundation.NetStandard.Opc.Ua.Configuration](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Configuration/1.5.377.21) [OPCFoundation.NetStandard.Opc.Ua.Server](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Server/1.5.377.21) [OPCFoundation.NetStandard.Opc.Ua.Client](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Client/1.5.377.21) [OPCFoundation.NetStandard.Opc.Ua.Client.ComplexTypes](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Client.ComplexTypes/1.5.377.21) [OPCFoundation.NetStandard.Opc.Ua.Bindings.Https](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.Bindings.Https/1.5.377.21) [OPCFoundation.NetStandard.Opc.Ua.PubSub](https://www.nuget.org/packages/OPCFoundation.NetStandard.Opc.Ua.PubSub/1.5.377.21) #### What's Changed - Update GDS Client to use async Client API and deprecate sync Calls. by [@​romanett](https://github.com/romanett) in [#​3164](OPCFoundation/UA-.NETStandard#3164) - Bump actions/checkout from 4 to 5 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​3165](OPCFoundation/UA-.NETStandard#3165) - Fix nuget and official build and additional smaller analzyer fixes by [@​marcschier](https://github.com/marcschier) in [#​3166](OPCFoundation/UA-.NETStandard#3166) - remove sync client calls from async client tests by [@​romanett](https://github.com/romanett) in [#​3168](OPCFoundation/UA-.NETStandard#3168) - Make GDS Tests use ECC for connection. Update Certificate wait check to use polling mechanism. by [@​romanett](https://github.com/romanett) in [#​3167](OPCFoundation/UA-.NETStandard#3167) - removing strong namer which does not work and fork async add auto and… by [@​marcschier](https://github.com/marcschier) in [#​3175](OPCFoundation/UA-.NETStandard#3175) - \[Tests] Remove net 462 CI / Add TestContext Logging support for GDS Tests / Fix Tests for netstandard by [@​romanett](https://github.com/romanett) in [#​3170](OPCFoundation/UA-.NETStandard#3170) - Make sync client api obsolete by [@​marcschier](https://github.com/marcschier) in [#​3174](OPCFoundation/UA-.NETStandard#3174) - Optimize reflection-based lookups using caches by [@​marcschier](https://github.com/marcschier) in [#​3179](OPCFoundation/UA-.NETStandard#3179) - Move newly introduced AsyncNodeTable and AsyncTypeTree interfaces to core by [@​marcschier](https://github.com/marcschier) in [#​3182](OPCFoundation/UA-.NETStandard#3182) **Full Changelog**: <OPCFoundation/UA-.NETStandard@1.5.376.244...1.5.377.21> </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - Between 12:00 AM and 03:59 AM (`* 0-3 * * *`) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yMTYuMiIsInVwZGF0ZWRJblZlciI6IjQzLjIxNi4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Reviewed-on: https://codeberg.org/umati/connect/pulls/7
Proposed changes
Related Issues
Types of changes
Checklist