Files
lmxopcua/nuget-packages/ZB.MOM.WW.MxGateway.Client.0.2.0.nupkg
Joseph Doherty d14a75dfef
v2-ci / build (push) Successful in 4m39s
v2-ci / unit-tests (push) Failing after 16m0s
chore(deps): adopt Auth 0.2.0 and MxGateway.Client/Contracts 0.2.0
Audited every ZB.MOM.WW.* pin against what is actually published. Fifteen of
seventeen were already current; two were behind, for different reasons:

- Auth 0.1.5 -> 0.2.0 was published on the Gitea feed and simply not adopted.
- MxGateway 0.1.1 -> 0.2.0 was never adopted because these two packages resolve
  from the checked-in ./nuget-packages folder feed, not from Gitea, so a bump
  needs the .nupkg copied in from ~/Desktop/MxAccessGateway/dist/. Nothing
  reports the folder as stale; it just quietly keeps serving the old version.
  0.1.2 (MxSparseArray) was skipped over entirely for the same reason.

Both are purely additive at the API surface (diffed the shipped XML docs member
by member: zero removals; Contracts +19, Client +45).

Auth 0.2.0 adds LDAP endpoint failover -- an ordered FallbackServers list with
sticky endpoint preference. Its one new validation rule rejects a malformed
FallbackServers entry at boot, which cannot bite us: we never set the key and it
defaults to empty. Net behaviour change here is zero; the failover is available
if AdminUI login ever wants a backup DC.

MxGateway 0.2.0 adds sparse-array values, replay-gap stream items, secret
redaction helpers and a batch of session RPCs. Two notes on the value path:

- MxValueDecoder's `_ => null` fallback already absorbed an unknown MxValue kind,
  so a sparse array degrades to null on the old and new contracts alike -- the
  bump does not change what we decode, it only makes handling it possible. Same
  for MxEvent.ReplayGap, which EventPump ignores; we stream with
  afterWorkerSequence: 0 and re-prime from the subscription on reconnect rather
  than relying on replay. Both are open follow-ups, not regressions.
- Staying on 0.1.1 was never protection: the gateway decides what goes on the
  wire, and prod already runs a server past this contract.

We pin no gateway contract version anywhere, so there is no handshake to update.

Verified: restore clean, build 0 errors, and the warning census is unchanged
(the 20 CS0618 obsoletes are all OPC UA SDK calls, none from these packages).
Every project that references either package is green -- Galaxy 317, Galaxy
Browser 21, Security 89, Host 106, AdminUI 1499 = 2032 tests, 0 failures.

Not updating the scadaproj index: its OtOpcUa entry names the shared libraries
but records no version pins, and which libraries we consume has not changed.
2026-08-12 02:34:51 -04:00

70 KiB