Jens-G opened a new pull request, #3832: URL: https://github.com/apache/thrift/pull/3832
`ApacheThrift.AspNetCore` currently targets `netstandard2.1;netstandard2.0;net8.0;net9.0;net10.0`. ASP.NET Core has not shipped for .NET Standard since 2.x — from .NET Core 3.0 on it lives in the `Microsoft.AspNetCore.App` shared framework — so the two netstandard legs forced the package to reference the standalone `Microsoft.AspNetCore.Http.Abstractions` 2.3.x instead. That was the last reference to those packages anywhere in the repository. This drops both, leaving `net8.0;net9.0;net10.0` with an unconditional `FrameworkReference` on `Microsoft.AspNetCore.App`. ### Impact The core `ApacheThrift` package is untouched and keeps `netstandard2.0`, so .NET Framework consumers of the library itself — sockets, named pipes, `THttpClientTransport`, the async servers — are unaffected. The dependency runs `ApacheThrift.AspNetCore` → `ApacheThrift` and never the other way round. The only .NET Framework scenario removed is hosting ASP.NET Core 2.x middleware, which ASP.NET Core 3.0 ended anyway; classic ASP.NET was never a consumer in the first place, since `THttpServerTransport` takes a `Microsoft.AspNetCore.Http.HttpContext` rather than a `System.Web` one. The broader removal is the `netstandard2.1` fallback that `netcoreapp3.1`, `net5.0`, `net6.0` and `net7.0` consumers were resolving; those now get `NU1202` at restore. All four are out of support, and the asset they resolved pulled the standalone ASP.NET Core 2.x packages into applications whose shared framework already provides them. `ApacheThrift.AspNetCore` 0.24.0 is on nuget.org carrying both netstandard assets, so this is a breaking change for that narrow set of consumers and should be called out in the 0.25.0 release notes. ### Verification There is no functional behaviour to test here — `THttpServerTransport` itself is unchanged. What was checked instead: - All three remaining targets build clean. - `dotnet pack` produces a package with exactly `lib/net8.0`, `lib/net9.0` and `lib/net10.0`, a `Microsoft.AspNetCore.App` framework reference in all three groups, and no `Microsoft.AspNetCore.Http.Abstractions` dependency left in any group. - `lib/netstd/Thrift.slnx` builds clean and `Thrift.Tests` passes 84/84. - `tutorial/netstd/Tutorial.slnx` — the only in-repo consumer of the package — builds clean. `test/netstd/ThriftTest.slnx` does not build in my environment: 15 pre-existing `CS0246` errors in `Client/Performance/TestDataFactory.cs`. The identical failures occur on unmodified `master`, and that project does not reference `Thrift.AspNetCore`. --- Investigated and written with AI assistance (Claude Opus 5); reviewed and submitted by Jens Geyer. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
