2b811477d1
Adds Directory.Packages.props (ManagePackageVersionsCentrally) and
Directory.Build.props (net10.0/nullable/implicit usings/LangVersion latest).
Strips Version attributes from every csproj PackageReference and consolidates
versions into the central file.
Side fixes (necessary to keep the build green on .NET SDK 10.0.105 on macOS):
- Microsoft.CodeAnalysis.CSharp{,.Workspaces}: 5.3.0 -> 5.0.0. The 5.3.0
analyzer DLL references compiler 5.3.0.0 and the local SDK ships compiler
5.0.0.0, producing CS9057 on every project that loaded the Analyzers
output. Master itself was broken on this machine pre-change.
- Server + Server.Tests pin OPCFoundation.NetStandard.Opc.Ua.{Configuration,
Client} to 1.5.374.126 via VersionOverride, matching Opc.Ua.Server's
pin. Mixing 1.5.378.106 Opc.Ua.Core transitively with 1.5.374.126
Opc.Ua.Server breaks CustomNodeManager2 override signatures
(CS0115 on LoadPredefinedNodes/Browse/HistoryRead*) and CS7069 in
the tests. The pin disappears when the legacy Server project is
deleted in Task 56.
- Client.UI + Client.UI.Tests: NuGetAuditSuppress for
GHSA-xrw6-gwf8-vvr9 (Tmds.DBus.Protocol 0.20.0 reaches both projects
transitively from Avalonia.Desktop on Linux/macOS only).
Deviation from the plan: TreatWarningsAsErrors=true is NOT set in
Directory.Build.props because the pre-v2 Admin/Server test projects carry
~240 xUnit1051 analyzer warnings that would fail the build. New v2 projects
opt in via their own csproj; the global flag can return once the legacy
projects are deleted in Task 56.
66 lines
3.1 KiB
XML
66 lines
3.1 KiB
XML
<Project Sdk="Microsoft.NET.Sdk">
|
|
|
|
<PropertyGroup>
|
|
<TargetFramework>net10.0</TargetFramework>
|
|
<Platforms>AnyCPU;x64</Platforms>
|
|
<Nullable>enable</Nullable>
|
|
<ImplicitUsings>enable</ImplicitUsings>
|
|
<LangVersion>latest</LangVersion>
|
|
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
|
|
<GenerateDocumentationFile>true</GenerateDocumentationFile>
|
|
<NoWarn>$(NoWarn);CS1591</NoWarn>
|
|
<RootNamespace>ZB.MOM.WW.OtOpcUa.Driver.Galaxy</RootNamespace>
|
|
</PropertyGroup>
|
|
|
|
<ItemGroup>
|
|
<ProjectReference Include="..\..\Core\ZB.MOM.WW.OtOpcUa.Core.Abstractions\ZB.MOM.WW.OtOpcUa.Core.Abstractions.csproj"/>
|
|
<ProjectReference Include="..\..\Core\ZB.MOM.WW.OtOpcUa.Core\ZB.MOM.WW.OtOpcUa.Core.csproj"/>
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<!-- Vendored mxaccessgw .NET client. Originally consumed via path-based
|
|
ProjectReference to the sibling repo, but the sibling repo restructured
|
|
and the MxGateway.Client.csproj path no longer exists. The DLLs in
|
|
libs/ are the last known-good build (May 2026); they reference proto
|
|
types from MxGateway.Contracts.dll using the pre-restructure namespace
|
|
(MxGateway.Contracts.Proto). See libs/README.md for the unwinding plan
|
|
once the sibling repo restores a client library or we migrate to the
|
|
new ZB.MOM.WW.MxGateway.Contracts.Proto namespace. -->
|
|
<Reference Include="MxGateway.Client">
|
|
<HintPath>libs\MxGateway.Client.dll</HintPath>
|
|
<Private>true</Private>
|
|
</Reference>
|
|
<Reference Include="MxGateway.Contracts">
|
|
<HintPath>libs\MxGateway.Contracts.dll</HintPath>
|
|
<Private>true</Private>
|
|
</Reference>
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<!-- Transitive deps the vendored MxGateway.Client.dll was actually built
|
|
against (verified by reflecting GetReferencedAssemblies on the DLL —
|
|
see libs/README.md). Versions align with the sibling mxaccessgw repo's
|
|
current Server / Worker projects so binary-compat stays close to what
|
|
the team uses elsewhere. Pre-Driver.Galaxy-016 the csproj declared
|
|
`Polly` (the v7 API) instead of `Polly.Core` (the v8 API the DLL was
|
|
built against) — a package-name mistake, not just a version skew —
|
|
which would surface as a runtime MissingMethodException the first
|
|
time the client's retry pipeline ran. -->
|
|
<PackageReference Include="Google.Protobuf" />
|
|
<PackageReference Include="Grpc.Core.Api" />
|
|
<PackageReference Include="Grpc.Net.Client" />
|
|
<PackageReference Include="Microsoft.Extensions.Logging.Abstractions" />
|
|
<PackageReference Include="Polly.Core" />
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<InternalsVisibleTo Include="ZB.MOM.WW.OtOpcUa.Driver.Galaxy.Tests"/>
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<NuGetAuditSuppress Include="https://github.com/advisories/GHSA-37gx-xxp4-5rgx"/>
|
|
<NuGetAuditSuppress Include="https://github.com/advisories/GHSA-w3x6-4m5h-cxqf"/>
|
|
</ItemGroup>
|
|
|
|
</Project>
|