fix(deps): update dependency node-opcua to v2.179.0 - #789
Open
renovate[bot] wants to merge 1 commit into
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
2.178.0→2.179.0Release Notes
node-opcua/node-opcua (node-opcua)
v2.179.0Compare Source
node-opcua 2.179.0
Compare:
v2.178.0...v2.179.0A robustness and performance release. The client's keep-alive and transaction handling no longer mistake a slow link for a dead server; the encoding path is measurably cheaper; and a family of lifecycle races in the server and address space was found and fixed after the test suite was moved to a parallel runner. Also a full biome pass across the monorepo (0 errors / 0 warnings) and a new CI gate for fixed test ports.
🚀 Features
BinaryStream
3cc5ad7]🐛 Fixes
Client — connection liveness
A connected client could conclude a healthy server had gone away, or quietly lose a request that was still in flight. These are one theme, fixed together:
d10f2aa]ServiceFaultis genuine server contact; treating it as silence could tear down a working session. [cce2c1a]9cbe6e9]1f4fb66]fc69569]BadSessionIdInvalid. [114785c]910bc68]ServiceFault, so the caller gets an answer rather than nothing. [65d3548]Encoding / dataTypes
FetchResultDataType,TransferResultErrorDataType,ParameterResultDataType,TransferResultDataDataType) were never registered at all. A client needing one of them failed far from the cause. The assert that would have caught this had been commented out with "in some circumstances like Euromap, this assert fails" — it was right to fail, and is restored. [cc88e24]2ac9951]f1bbad1]Variant.cloneis a true deep copy — the shallow copy leaked shared state between values. [66a4f01] plus the follow-up repair of what that exposed. [9e21a60]Server
suspendConnectionnow waits for the listener to be released. It called back whileclose()was still in flight, sorestoreConnectioncould re-listenon a port the old handle still held — anEADDRINUSEout ofresumeEndPoints, hit during certificate rotation. [f3154ec]createSessionrefuses withBadServerHaltedonce the engine is shutting down. A request already in flight could land after the address space was disposed and surface asCannot read properties of null (reading 'findDataType')from a promise nobody awaited — taking the process down rather than failing one request. [f3154ec]c647f70]writeAttributestatusCode toGoodinstead of rejecting. [00534f6]createSubscriptionDiagnosticsArraybrowseName and options [be070ca], and restore the explicit namespace-0 browseName forSubscriptionDiagnosticsArray. [a459eaf]Address space
UAVariable.readValueAsyncmust honourisAccessRestricted. [8f13f6a]_propagate_refnever installs back references forHasTypeDefinition/HasModellingRule— "because there are too many" — but removal did not mirror that, so detaching any node producedCannot find reference to remove. 101 of them in a single CI run. [0f43a1a]Identitiesto the store sobindRoleSetcannot shadow it. [08fb5a9]⚡ Performance
31818de]DataValue.cloneno longer copies its payload twice. [194cf15]168f87d]83ade33]; index the typed-array helper table numerically [ac06826].undefined. [d6fb939]memcpyinwriteArrayBufferrather than a byte loop. [2255ec3]Maps [21559ce]; stop the notification path re-cloning the sampled value [f16bfea].🧹 Chore / CI / internal
Most of the fixes above were found by this work, which is the reason it is worth listing.
pnpm -r run testworks again — it had been broken (the root.mocharc.jsrequiredts-node, which is not installed anywhere), and no CI job read those config files. Repairing it revealed 22 test files (~172 tests) that no runner had ever collected, plus two dependencies missing from a manifest. [217a89d] [177e3b0] [fd5c4ee] [0dd52a7]repro_specs, not onlytest_— 520 → 542 files. [7088422]check-mocharctool. Mocha does not merge configs, so a package wanting one different setting had to restate the loader list; 24 of them carried a relative path that only worked by accident of directory depth. [ccc6e2a]check-test-portsscanner, gating CI — collisions, ports pinned inside the ephemeral range, ports derived asport + 1(bound but written nowhere), and ports belonging to OPC UA itself (4840) or to services a developer is likely running (3000,5432, macOS AirPlay on5000). It found two live collisions nobody had hit yet. [45662a0] [397cbb0] [e6e7e11]setTimeouts. They now assert what is causally guaranteed and wait for the events themselves. [4ecaf82] [da436ed] [8069189] [d4268e2] [cb00093]c02a076] [95bbc44]80c6613] [709042e]8fd5090]cdb0f0d]; registercheck-debug-login the pnpm lockfile [6abc2d7].🙏 Contributors
Thanks to everyone who contributed to this release.
The Sterfive Team
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.