d14a75dfef
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.
199 lines
14 KiB
XML
199 lines
14 KiB
XML
<Project>
|
|
<PropertyGroup>
|
|
<ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
|
|
</PropertyGroup>
|
|
<ItemGroup>
|
|
<PackageVersion Include="Akka" Version="1.5.62" />
|
|
<PackageVersion Include="Akka.Cluster" Version="1.5.62" />
|
|
<PackageVersion Include="Akka.Cluster.Hosting" Version="1.5.62" />
|
|
<PackageVersion Include="Akka.Cluster.Tools" Version="1.5.62" />
|
|
<PackageVersion Include="Akka.Hosting" Version="1.5.62" />
|
|
<PackageVersion Include="Akka.Logger.Serilog" Version="1.5.60" />
|
|
<PackageVersion Include="Akka.Remote" Version="1.5.62" />
|
|
<PackageVersion Include="Akka.Remote.Hosting" Version="1.5.62" />
|
|
<PackageVersion Include="Akka.Streams" Version="1.5.62" />
|
|
<PackageVersion Include="Akka.Streams.TestKit" Version="1.5.62" />
|
|
<PackageVersion Include="Akka.TestKit.Xunit2" Version="1.5.62" />
|
|
<PackageVersion Include="Avalonia" Version="11.2.7" />
|
|
<PackageVersion Include="Avalonia.Controls.DataGrid" Version="11.2.7" />
|
|
<PackageVersion Include="Avalonia.Desktop" Version="11.2.7" />
|
|
<PackageVersion Include="Avalonia.Diagnostics" Version="11.2.7" />
|
|
<PackageVersion Include="Avalonia.Fonts.Inter" Version="11.2.7" />
|
|
<PackageVersion Include="Avalonia.Headless" Version="11.2.7" />
|
|
<PackageVersion Include="Avalonia.Svg.Skia" Version="11.2.0.2" />
|
|
<PackageVersion Include="Avalonia.Themes.Fluent" Version="11.2.7" />
|
|
<PackageVersion Include="Beckhoff.TwinCAT.Ads" Version="7.0.172" />
|
|
<PackageVersion Include="bunit" Version="2.0.33-preview" />
|
|
<PackageVersion Include="CliFx" Version="2.3.6" />
|
|
<PackageVersion Include="CommunityToolkit.Mvvm" Version="8.4.0" />
|
|
<PackageVersion Include="coverlet.collector" Version="6.0.4" />
|
|
<PackageVersion Include="FluentAssertions" Version="8.3.0" />
|
|
<PackageVersion Include="Google.Protobuf" Version="3.34.1" />
|
|
<PackageVersion Include="Grpc.AspNetCore" Version="2.76.0" />
|
|
<PackageVersion Include="Grpc.Core.Api" Version="2.76.0" />
|
|
<PackageVersion Include="Grpc.Net.Client" Version="2.76.0" />
|
|
<PackageVersion Include="Grpc.Tools" Version="2.76.0" />
|
|
<PackageVersion Include="libplctag" Version="1.5.2" />
|
|
<PackageVersion Include="MessagePack" Version="2.5.301" />
|
|
<PackageVersion Include="Microsoft.AspNetCore.Authorization" Version="10.0.7" />
|
|
<PackageVersion Include="Microsoft.AspNetCore.DataProtection" Version="10.0.7" />
|
|
<PackageVersion Include="Microsoft.AspNetCore.DataProtection.EntityFrameworkCore" Version="10.0.7" />
|
|
<PackageVersion Include="Microsoft.AspNetCore.Mvc.Testing" Version="10.0.0" />
|
|
<PackageVersion Include="Microsoft.AspNetCore.SignalR.Client" Version="10.0.0" />
|
|
<PackageVersion Include="Microsoft.AspNetCore.SignalR.Core" Version="1.2.0" />
|
|
<PackageVersion Include="Microsoft.AspNetCore.TestHost" Version="10.0.7" />
|
|
<!--
|
|
Roslyn analyzer packages pin to the same major version as the SDK's compiler.
|
|
.NET SDK 10.0.105 ships compiler 5.0.0.0. Microsoft.CodeAnalysis.CSharp 5.3.x emits
|
|
analyzer DLLs that reference compiler 5.3.0.0 and fail with CS9057 on the local SDK.
|
|
Pin to 5.0.0 (matches the compiler the SDK ships) until the SDK rolls to 10.0.110+.
|
|
-->
|
|
<PackageVersion Include="Microsoft.CodeAnalysis.CSharp" Version="5.0.0" />
|
|
<PackageVersion Include="Microsoft.CodeAnalysis.CSharp.Scripting" Version="4.12.0" />
|
|
<PackageVersion Include="Microsoft.CodeAnalysis.CSharp.Workspaces" Version="5.0.0" />
|
|
<PackageVersion Include="Microsoft.Data.SqlClient" Version="6.1.1" />
|
|
<PackageVersion Include="Microsoft.Data.Sqlite" Version="10.0.7" />
|
|
<PackageVersion Include="Microsoft.EntityFrameworkCore" Version="10.0.7" />
|
|
<PackageVersion Include="Microsoft.EntityFrameworkCore.Design" Version="10.0.7" />
|
|
<PackageVersion Include="Microsoft.EntityFrameworkCore.InMemory" Version="10.0.7" />
|
|
<PackageVersion Include="Microsoft.EntityFrameworkCore.SqlServer" Version="10.0.7" />
|
|
<PackageVersion Include="Microsoft.FASTER.Core" Version="2.6.5" />
|
|
<PackageVersion Include="Microsoft.Extensions.Configuration" Version="10.0.7" />
|
|
<PackageVersion Include="Microsoft.Extensions.Configuration.Abstractions" Version="10.0.7" />
|
|
<PackageVersion Include="Microsoft.Extensions.Configuration.Json" Version="10.0.7" />
|
|
<PackageVersion Include="Microsoft.Extensions.DependencyInjection" Version="10.0.7" />
|
|
<PackageVersion Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="10.0.7" />
|
|
<PackageVersion Include="Microsoft.Extensions.Hosting" Version="10.0.7" />
|
|
<PackageVersion Include="Microsoft.Extensions.Hosting.Abstractions" Version="10.0.7" />
|
|
<PackageVersion Include="Microsoft.Extensions.Hosting.WindowsServices" Version="10.0.7" />
|
|
<PackageVersion Include="Microsoft.Extensions.Http" Version="10.0.7" />
|
|
<PackageVersion Include="Microsoft.Extensions.Logging" Version="10.0.7" />
|
|
<PackageVersion Include="Microsoft.Extensions.Logging.Abstractions" Version="10.0.7" />
|
|
<PackageVersion Include="Microsoft.Extensions.Options" Version="10.0.7" />
|
|
<PackageVersion Include="Microsoft.Extensions.Options.ConfigurationExtensions" Version="10.0.7" />
|
|
<PackageVersion Include="Microsoft.IdentityModel.Tokens" Version="8.11.0" />
|
|
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="17.12.0" />
|
|
<PackageVersion Include="Microsoft.Playwright" Version="1.51.0" />
|
|
<PackageVersion Include="Moq" Version="4.20.72" />
|
|
<!--
|
|
MQTT client for the Mqtt / Sparkplug B driver. MQTTnet v5 is the first line shipping a
|
|
net10.0 TFM (lib/net10.0, and an EMPTY net10.0 dependency group — zero transitive
|
|
packages, so it cannot participate in a diamond under this repo's deliberately-OFF
|
|
CentralPackageTransitivePinningEnabled). Sparkplug B payloads are hand-rolled rather than
|
|
taken from SparkplugNet, whose newest release (1.3.10) still pins MQTTnet 4.3.6.1152 and
|
|
ships net6.0/net8.0 only.
|
|
-->
|
|
<PackageVersion Include="MQTTnet" Version="5.2.0.1603" />
|
|
<!-- Driver.MTConnect carries NO backend NuGet. The TrakHound MTConnect.NET-Common/-HTTP pins
|
|
Task 0 added were removed in Task 7 (2026-07-24): neither package can parse an MTConnect
|
|
document (the XML formatter ships in a third, unreferenced package) nor frame the /sample
|
|
multipart stream socket-free. The driver uses HttpClient + System.Xml.Linq only. See the
|
|
Task 0 CORRECTION block in docs/plans/2026-07-24-mtconnect-driver.md. -->
|
|
<!-- Fully managed PostgreSQL ADO.NET provider for the Sql poll driver's PostgresDialect
|
|
(NpgsqlFactory.Instance). No native libpq / client install — the same "managed only"
|
|
constraint that rules out Odbc. Referenced by Driver.Sql.Dialect alongside
|
|
Microsoft.Data.SqlClient; consumers inherit it transitively. Latest stable, shipping a
|
|
native lib/net10.0 TFM. -->
|
|
<PackageVersion Include="Npgsql" Version="10.0.3" />
|
|
<PackageVersion Include="Novell.Directory.Ldap.NETStandard" Version="3.6.0" />
|
|
<PackageVersion Include="OPCFoundation.NetStandard.Opc.Ua.Client" Version="1.5.378.106" />
|
|
<!-- Core carries Opc.Ua.StatusCodes, the oracle StatusCodeParityTests checks the drivers'
|
|
hard-coded uint constants against. Referenced by that TEST project only — the drivers
|
|
themselves stay SDK-free by design and keep spelling status codes as bare uints. -->
|
|
<PackageVersion Include="OPCFoundation.NetStandard.Opc.Ua.Core" Version="1.5.378.106" />
|
|
<PackageVersion Include="OPCFoundation.NetStandard.Opc.Ua.Configuration" Version="1.5.378.106" />
|
|
<PackageVersion Include="OPCFoundation.NetStandard.Opc.Ua.Server" Version="1.5.378.106" />
|
|
<!-- Fully managed ODP.NET Core for the Sql poll driver's OracleDialect
|
|
(OracleClientFactory.Instance). The ".Core" package is the 100%-managed driver — no Oracle
|
|
Instant Client / OCI native install, matching the Npgsql constraint above. Latest stable of
|
|
the 23.x (Oracle 23ai) line, which ships lib/net8.0 + netstandard2.1. -->
|
|
<PackageVersion Include="Oracle.ManagedDataAccess.Core" Version="23.26.300" />
|
|
<!-- OpenTelemetry.Api < 1.15.3 has GHSA-g94r-2vxg-569j (header-parsing memory DoS). The trio
|
|
is pulled transitively at 1.9.0; pin to 1.15.3 (matches the Extensions.Hosting pin below),
|
|
applied via a direct PackageReference in the Cluster project so the server stack inherits it. -->
|
|
<PackageVersion Include="OpenTelemetry" Version="1.15.3" />
|
|
<PackageVersion Include="OpenTelemetry.Api" Version="1.15.3" />
|
|
<PackageVersion Include="OpenTelemetry.Api.ProviderBuilderExtensions" Version="1.15.3" />
|
|
<PackageVersion Include="OpenTelemetry.Exporter.Prometheus.AspNetCore" Version="1.15.3-beta.1" />
|
|
<PackageVersion Include="OpenTelemetry.Extensions.Hosting" Version="1.15.3" />
|
|
<PackageVersion Include="Polly.Core" Version="8.6.6" />
|
|
<PackageVersion Include="S7netplus" Version="0.20.0" />
|
|
<PackageVersion Include="Serilog" Version="4.3.1" />
|
|
<PackageVersion Include="Serilog.AspNetCore" Version="10.0.0" />
|
|
<PackageVersion Include="Serilog.Extensions.Hosting" Version="10.0.0" />
|
|
<PackageVersion Include="Serilog.Formatting.Compact" Version="3.0.0" />
|
|
<PackageVersion Include="Serilog.Settings.Configuration" Version="10.0.0" />
|
|
<PackageVersion Include="Serilog.Sinks.Console" Version="6.0.0" />
|
|
<PackageVersion Include="Serilog.Sinks.File" Version="7.0.0" />
|
|
<PackageVersion Include="Shouldly" Version="4.3.0" />
|
|
<!--
|
|
Surgical transitive pin: Microsoft.Data.Sqlite pulls SQLitePCLRaw.bundle_e_sqlite3 2.1.11
|
|
(native lib.e_sqlite3 2.1.11 — the top of the CVE-2025-6965 / GHSA-2m69-gcr7-jv3q vulnerable
|
|
range, <= 2.1.11). 2.1.12 is the first fixed native bundle (embeds the SQLite 3.50.2+ patch).
|
|
A direct PackageReference in Core.AlarmHistorian promotes this to the resolved version,
|
|
clearing the advisory without CentralPackageTransitivePinningEnabled (which breaks the Roslyn split).
|
|
-->
|
|
<PackageVersion Include="SQLitePCLRaw.bundle_e_sqlite3" Version="2.1.12" />
|
|
<!--
|
|
Surgical transitive pin #2. Four NU1903 high-severity advisories (GHSA-23rf-6693-g89p,
|
|
GHSA-8q5v-6pqq-x66h, GHSA-cvvh-rhrc-wg4q, GHSA-g8r8-53c2-pm3f) landed in the NuGet audit
|
|
data against System.Security.Cryptography.Xml 10.0.7, which Microsoft.AspNetCore.DataProtection
|
|
10.0.7 pulls in transitively for its key storage. Under TreatWarningsAsErrors every FRESH
|
|
restore goes red — 204 NU1903 errors across the solution — while machines with cached audit
|
|
data keep building, so this surfaces first on a clean clone or a docker image build, not
|
|
locally. Verified 2026-07-21 by restoring a detached worktree.
|
|
|
|
10.0.10 is the patched version, pinned by direct PackageReference in Core.Configuration (the
|
|
one project where the DataProtection chain enters). Bumping the DataProtection parent to
|
|
10.0.10 instead was rejected in the sister repo for a reason that applies here too: it floors
|
|
Microsoft.Extensions.* and, through the EFCore adapter, Microsoft.EntityFrameworkCore at
|
|
10.0.10, forcing a family-wide servicing bump (NU1605 downgrade cascade) that deserves its own
|
|
reviewed change.
|
|
-->
|
|
<PackageVersion Include="System.Security.Cryptography.Xml" Version="10.0.10" />
|
|
<PackageVersion Include="System.CommandLine" Version="2.0.5" />
|
|
<PackageVersion Include="System.Data.SqlClient" Version="4.9.0" />
|
|
<PackageVersion Include="System.IdentityModel.Tokens.Jwt" Version="8.11.0" />
|
|
<PackageVersion Include="System.IO.Pipes.AccessControl" Version="5.0.0" />
|
|
<PackageVersion Include="System.Memory" Version="4.5.5" />
|
|
<PackageVersion Include="System.Threading.Tasks.Extensions" Version="4.5.4" />
|
|
<!-- Tmds.DBus.Protocol < 0.21.3 has GHSA-xrw6-gwf8-vvr9 (High); pulled transitively by
|
|
Avalonia.X11 (Linux desktop). Pin to the patched 0.21.3 in the same 0.x line.
|
|
Applied via a direct PackageReference in the consuming desktop project(s). -->
|
|
<PackageVersion Include="Tmds.DBus.Protocol" Version="0.21.3" />
|
|
<!-- xunit v2 pin: AdminUI.Tests / ControlPlane.Tests / Runtime.Tests are held on v2 by
|
|
Akka.TestKit.Xunit2 (no xunit.v3 TestKit ships as of Akka 1.5.62 — both candidate ids
|
|
Akka.TestKit.Xunit3 / Akka.TestKit.Xunit.v3 return BlobNotFound on nuget.org, verified
|
|
2026-07-13). All 44 other test projects are on xunit.v3 1.1.0. Remove this pin and migrate
|
|
the 3 holdouts when Akka ships an xunit.v3 TestKit. (R2-12 / 07/C-4.) -->
|
|
<PackageVersion Include="xunit" Version="2.9.3" />
|
|
<PackageVersion Include="xunit.runner.visualstudio" Version="3.0.2" />
|
|
<PackageVersion Include="xunit.v3" Version="1.1.0" />
|
|
<PackageVersion Include="ZB.MOM.WW.Health" Version="0.3.0" />
|
|
<!--
|
|
LocalDb: embedded SQLite node-local cache + optional 2-node gRPC replication. The core
|
|
package floors the native SQLitePCLRaw.lib.e_sqlite3 at 2.1.12, so consumers inherit the
|
|
CVE-2025-6965-fixed native binary without needing the surgical pin below.
|
|
-->
|
|
<PackageVersion Include="ZB.MOM.WW.LocalDb" Version="0.1.3" />
|
|
<PackageVersion Include="ZB.MOM.WW.LocalDb.Replication" Version="0.1.3" />
|
|
<PackageVersion Include="ZB.MOM.WW.Health.Akka" Version="0.3.0" />
|
|
<PackageVersion Include="ZB.MOM.WW.Health.EntityFrameworkCore" Version="0.3.0" />
|
|
<PackageVersion Include="ZB.MOM.WW.Telemetry" Version="0.1.0" />
|
|
<PackageVersion Include="ZB.MOM.WW.Telemetry.Serilog" Version="0.1.0" />
|
|
<PackageVersion Include="ZB.MOM.WW.MxGateway.Client" Version="0.2.0" />
|
|
<PackageVersion Include="ZB.MOM.WW.MxGateway.Contracts" Version="0.2.0" />
|
|
<PackageVersion Include="ZB.MOM.WW.Configuration" Version="0.1.0" />
|
|
<PackageVersion Include="ZB.MOM.WW.Auth.Abstractions" Version="0.2.0" />
|
|
<PackageVersion Include="ZB.MOM.WW.Auth.Ldap" Version="0.2.0" />
|
|
<PackageVersion Include="ZB.MOM.WW.Auth.AspNetCore" Version="0.2.0" />
|
|
<PackageVersion Include="ZB.MOM.WW.Secrets" Version="0.6.2" />
|
|
<PackageVersion Include="ZB.MOM.WW.Secrets.Abstractions" Version="0.6.2" />
|
|
<PackageVersion Include="ZB.MOM.WW.Secrets.Ui" Version="0.6.2" />
|
|
<PackageVersion Include="ZB.MOM.WW.Secrets.Replicator.AkkaDotNet" Version="0.6.2" />
|
|
<PackageVersion Include="ZB.MOM.WW.Audit" Version="0.1.0" />
|
|
<PackageVersion Include="ZB.MOM.WW.Theme" Version="0.4.1" />
|
|
<PackageVersion Include="ZB.MOM.WW.HistorianGateway.Client" Version="0.3.0" />
|
|
<PackageVersion Include="ZB.MOM.WW.HistorianGateway.Contracts" Version="0.3.0" />
|
|
</ItemGroup>
|
|
</Project> |