Repository navigation
Conversation
- Retarget net8.0/net9.0 projects to net10.0 - Bump Microsoft.AspNetCore.* and Microsoft.Extensions.* packages to 10.0.x - Bump Serilog.AspNetCore to 10.0.0 and Swashbuckle to 10.2.3 - Align Duende.IdentityServer (7.4.13), Duende.IdentityModel (8.1.0) and Duende.BFF.Yarp (3.1.1) - Migrate ContainerizedIdentityServer to the Duende.IdentityModel namespace and System.Buffers.Text.Base64Url - Update Dockerfiles, VS Code launch configs and READMEs to net10.0
- Retarget to net10.0 with Microsoft.AspNetCore.OpenApi 10.0.11 - Migrate to Microsoft.OpenApi 2.x (Readers package merged into core); port document combiner and parser from the BFF v4 sample - Move the parser to System.CommandLine 2.0.11 - Move the AppHost from Aspire 9.0.0 to Aspire.AppHost.Sdk 13.4.5 - Regenerate OpenApi.Api1/Api2 documents (OpenAPI 3.1)
Downstream APIs defining components with the same name (e.g. WeatherForecast) overwrote each other in the combined document, so operations referenced the wrong schema. Prefix each downstream document's component keys with a name derived from its local path and rewrite its $refs accordingly.
Superseded by the existing .NET 10 MAUI sample.
There was a problem hiding this comment.
🟡 Changes recommended
The System.CommandLine upgrade leaves invalid option names and synchronous invocation of an asynchronous action, causing runtime failures that prevent the offline document transformer from running.
2 open issues
What changed in this PR
Retires the BFF v2 samples for the planned November 10, 2026 retirement, removes the .NET 9 MAUI sample, and migrates retained samples and build tooling to .NET 10.
Changes:
- Removes legacy applications, configuration, UI, and assets.
- Updates frameworks, dependencies, Docker images, and debugger paths.
- Adapts OpenAPI, IdentityModel, and build-tool API usage.
This pull request requires changes.
Two critical issues remain in the dependency migration at BFF/v3/OpenApi/OpenApi.BffOpenApiDocumentParser/OpenApi.BffOpenApiDocumentParser.csproj:10:
- The four
Option<string>constructors inProgram.csuse descriptions as option names. Stable System.CommandLine rejects their whitespace, preventing startup even for--help. Use identifiers such as--input-file, preserve short aliases, and move explanatory text toDescription. parseResult.Invoke()cannot execute the asynchronous action registered withSetActionunder stable System.CommandLine 2.x. Change the entry point toasync Task<int> Mainand returnawait parseResult.InvokeAsync().
| File | Description |
|---|---|
various/JwtSecuredAzureFunction/Client/Client.csproj |
Targets .NET 10. |
various/clients/Maui/net9/MauiApp1/Resources/Raw/AboutAssets.txt |
Removes asset guidance. |
various/clients/Maui/net9/MauiApp1/Resources/AppIcon/appicon.svg |
Removes application icon. |
various/clients/Maui/net9/MauiApp1/Properties/launchSettings.json |
Removes launch configuration. |
various/clients/Maui/net9/MauiApp1/Platforms/Windows/App.xaml.cs |
Removes Windows startup code. |
various/clients/Maui/net9/MauiApp1/Platforms/Windows/App.xaml |
Removes Windows application markup. |
various/clients/Maui/net9/MauiApp1/Platforms/Windows/app.manifest |
Removes Windows manifest. |
various/clients/Maui/net9/MauiApp1/Platforms/Tizen/tizen-manifest.xml |
Removes Tizen manifest. |
various/clients/Maui/net9/MauiApp1/Platforms/Tizen/Main.cs |
Removes Tizen entry point. |
various/clients/Maui/net9/MauiApp1/Platforms/MacCatalyst/Program.cs |
Removes Mac Catalyst entry point. |
various/clients/Maui/net9/MauiApp1/Platforms/MacCatalyst/Entitlements.plist |
Removes Mac Catalyst entitlements. |
various/clients/Maui/net9/MauiApp1/Platforms/MacCatalyst/AppDelegate.cs |
Removes Mac Catalyst delegate. |
various/clients/Maui/net9/MauiApp1/Platforms/iOS/Program.cs |
Removes iOS entry point. |
various/clients/Maui/net9/MauiApp1/Platforms/iOS/AppDelegate.cs |
Removes iOS delegate. |
various/clients/Maui/net9/MauiApp1/Platforms/Android/WebAuthenticationCallbackActivity.cs |
Removes Android authentication callback. |
various/clients/Maui/net9/MauiApp1/Platforms/Android/Resources/values/colors.xml |
Removes Android colors. |
various/clients/Maui/net9/MauiApp1/Platforms/Android/MainApplication.cs |
Removes Android application class. |
various/clients/Maui/net9/MauiApp1/Platforms/Android/MainActivity.cs |
Removes Android launcher activity. |
various/clients/Maui/net9/MauiApp1/Platforms/Android/AndroidManifest.xml |
Removes Android manifest. |
various/clients/Maui/net9/MauiApp1/MauiProgram.cs |
Removes application and OIDC setup. |
various/clients/Maui/net9/MauiApp1/MauiAuthenticationBrowser.cs |
Removes authentication browser adapter. |
various/clients/Maui/net9/MauiApp1/MainPage.xaml |
Removes main-page markup. |
various/clients/Maui/net9/MauiApp1/AppShell.xaml.cs |
Removes shell initialization. |
various/clients/Maui/net9/MauiApp1/AppShell.xaml |
Removes shell markup. |
various/clients/Maui/net9/MauiApp1/App.xaml.cs |
Removes application initialization. |
various/clients/Maui/net9/MauiApp1/App.xaml |
Removes application resources. |
various/clients/Maui/net9/MauiApp1.slnx |
Removes legacy MAUI solution. |
build/Program.cs |
Uses asynchronous Bullseye execution. |
build/build.csproj |
Updates framework and build dependencies. |
BFF/v3/Vue/Vue.Bff/Vue.Bff.csproj |
Updates framework and ASP.NET dependencies. |
BFF/v3/Vue/Vue.Api/Vue.Api.csproj |
Updates framework and API dependencies. |
BFF/v3/TokenExchange/TokenExchange.IdentityServer/TokenExchange.IdentityServer.csproj |
Updates framework and Serilog. |
BFF/v3/TokenExchange/TokenExchange.Bff/TokenExchange.Bff.csproj |
Updates framework and BFF dependencies. |
BFF/v3/TokenExchange/TokenExchange.Api/TokenExchange.Api.csproj |
Updates framework and API dependencies. |
BFF/v3/TokenExchange/README.md |
Updates documented v3 versions. |
BFF/v3/TokenExchange/.vscode/launch.json |
Updates debugger output paths. |
BFF/v3/SplitHosts/README.md |
Updates documented v3 versions. |
BFF/v3/SplitHosts/FrontendHost/FrontendHost.csproj |
Targets .NET 10. |
BFF/v3/SplitHosts/BackendHost/BackendHost.csproj |
Updates framework and OIDC package. |
BFF/v3/SplitHosts/BackendApiHost/BackendApiHost.csproj |
Updates framework and JWT package. |
BFF/v3/SplitHosts/.vscode/launch.json |
Updates debugger output paths. |
BFF/v3/React/React.Bff/React.Bff.csproj |
Updates framework and OIDC package. |
BFF/v3/React/React.Api/React.Api.csproj |
Updates framework and JWT package. |
BFF/v3/React/.vscode/launch.json |
Updates debugger output paths. |
BFF/v3/Quickstarts/BlazorBffApp/BlazorBffApp/BlazorBffApp.csproj |
Updates Blazor server framework and package. |
BFF/v3/Quickstarts/BlazorBffApp/BlazorBffApp.Client/BlazorBffApp.Client.csproj |
Updates Blazor client framework and package. |
BFF/v3/OpenApi/OpenApi.DevServer.ServiceDefaults/Extensions.cs |
Adapts OpenAPI namespaces and interfaces. |
BFF/v3/OpenApi/OpenApi.DevServer.AppHost/OpenApi.DevServer.AppHost.csproj |
Updates framework and Aspire SDK declaration. |
BFF/v3/OpenApi/OpenApi.BffOpenApiDocumentParser/OpenApi.BffOpenApiDocumentParser.csproj |
Updates framework and parser dependencies; migration has two critical blockers. |
BFF/v3/OpenApi/OpenApi.Bff/Program.cs |
Removes obsolete OpenAPI imports. |
BFF/v3/OpenApi/OpenApi.Bff/OpenApiResponseTransform.cs |
Removes obsolete OpenAPI import. |
BFF/v3/OpenApi/OpenApi.Bff/OpenApi.Bff.csproj |
Updates framework and OpenAPI dependencies. |
BFF/v3/OpenApi/OpenApi.Api2/OpenApi.Api2.json |
Updates generated OpenAPI schema. |
BFF/v3/OpenApi/OpenApi.Api2/OpenApi.Api2.csproj |
Updates framework and document-generation package. |
BFF/v3/OpenApi/OpenApi.Api1/OpenApi.Api1.json |
Updates generated OpenAPI schema. |
BFF/v3/OpenApi/OpenApi.Api1/OpenApi.Api1.csproj |
Updates framework and OpenAPI packages. |
BFF/v3/JsBffYarpSample/FrontendHost/FrontendHost.csproj |
Updates framework and OIDC package. |
BFF/v3/JsBffYarpSample/BackendApiHost/BackendApiHost.csproj |
Updates framework and JWT package. |
BFF/v3/JsBffYarpSample/.vscode/launch.json |
Updates debugger output paths. |
BFF/v3/JsBffSample/FrontendHost/FrontendHost.csproj |
Updates framework and OIDC package. |
BFF/v3/JsBffSample/BackendApiHost/BackendApiHost.csproj |
Updates framework and JWT package. |
BFF/v3/JsBffSample/.vscode/launch.json |
Updates debugger output paths. |
BFF/v3/DPoP/DPoP.Bff/DPoP.Bff.csproj |
Updates framework and BFF dependencies. |
BFF/v3/DPoP/DPoP.Api/DPoP.Api.csproj |
Updates framework and API dependencies. |
BFF/v3/DPoP/.vscode/launch.json |
Updates debugger output paths. |
BFF/v3/docker/FrontendHost/FrontendHost.csproj |
Updates framework and OIDC package. |
BFF/v3/docker/FrontendHost/Dockerfile |
Uses .NET 10 container images. |
BFF/v3/docker/ContainerizedIdentityServer/Pages/TestUsers.cs |
Uses Duende.IdentityModel namespace. |
BFF/v3/docker/ContainerizedIdentityServer/Pages/ExternalLogin/Callback.cshtml.cs |
Uses Duende.IdentityModel namespace. |
BFF/v3/docker/ContainerizedIdentityServer/Pages/Diagnostics/ViewModel.cs |
Updates Base64URL decoding API. |
BFF/v3/docker/ContainerizedIdentityServer/Pages/Consent/Index.cshtml.cs |
Uses Duende.IdentityModel namespace. |
BFF/v3/docker/ContainerizedIdentityServer/Pages/Account/Logout/Index.cshtml.cs |
Uses Duende.IdentityModel namespace. |
BFF/v3/docker/ContainerizedIdentityServer/Dockerfile |
Uses .NET 10 container images. |
BFF/v3/docker/ContainerizedIdentityServer/ContainerizedIdentityServer.csproj |
Updates framework and server dependencies. |
BFF/v3/BlazorWasm/Shared/BlazorWasm.Shared.csproj |
Targets .NET 10. |
BFF/v3/BlazorWasm/Server/BlazorWasm.Server.csproj |
Updates framework and server packages. |
BFF/v3/BlazorWasm/Client/BlazorWasm.Client.csproj |
Updates framework and WebAssembly packages. |
BFF/v3/BlazorAutoRendering/BlazorAutoRendering/BlazorAutoRendering.csproj |
Updates framework and server packages. |
BFF/v3/BlazorAutoRendering/BlazorAutoRendering.Client/BlazorAutoRendering.Client.csproj |
Updates framework and WebAssembly package. |
BFF/v3/BlazorAutoRendering/BlazorAutoRendering.Api/BlazorAutoRendering.Api.csproj |
Updates framework and API dependencies. |
BFF/v3/Angular/Angular.Bff/Angular.Bff.csproj |
Updates framework and BFF package. |
BFF/v3/Angular/Angular.Api/Angular.Api.csproj |
Updates framework and JWT package. |
BFF/v2/TokenExchange/TokenExchange.slnx |
Removes retired solution. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/wwwroot/lib/bootstrap/LICENSE |
Removes bundled license file. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/wwwroot/js/signout-redirect.js |
Removes logout redirect script. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/wwwroot/js/signin-redirect.js |
Removes login redirect script. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/wwwroot/duende-logo.svg |
Removes logo asset. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/wwwroot/css/site.scss |
Removes stylesheet source. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/wwwroot/css/site.min.css |
Removes minified stylesheet. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/wwwroot/css/site.css |
Removes stylesheet. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/TokenExchange.IdentityServer.csproj |
Removes retired server project. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Properties/launchSettings.json |
Removes launch configuration. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Program.cs |
Removes server startup code. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Shared/_ValidationSummary.cshtml |
Removes validation partial. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Shared/_Nav.cshtml |
Removes navigation partial. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Shared/_Layout.cshtml |
Removes page layout. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Redirect/Index.cshtml.cs |
Removes redirect handler. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Redirect/Index.cshtml |
Removes redirect page. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Index.cshtml.cs |
Removes home-page handler. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Index.cshtml |
Removes home page. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Home/Error/ViewModel.cs |
Removes error view model. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Home/Error/Index.cshtml.cs |
Removes error handler. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Home/Error/Index.cshtml |
Removes error page. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Grants/ViewModel.cs |
Removes grant view models. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/ExternalLogin/Challenge.cshtml |
Removes external challenge page. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/ExternalLogin/Callback.cshtml |
Removes external callback page. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Extensions.cs |
Removes page helper methods. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Diagnostics/ViewModel.cs |
Removes diagnostics view model. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Diagnostics/Index.cshtml.cs |
Removes diagnostics handler. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Device/ViewModel.cs |
Removes device view models. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Device/Success.cshtml.cs |
Removes device-success handler. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Device/Success.cshtml |
Removes device-success page. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Device/InputModel.cs |
Removes device input model. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Device/DeviceOptions.cs |
Removes device-flow options. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Device/_ScopeListItem.cshtml |
Removes device-scope partial. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Consent/ViewModel.cs |
Removes consent view models. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Consent/InputModel.cs |
Removes consent input model. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Consent/ConsentOptions.cs |
Removes consent options. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Consent/_ScopeListItem.cshtml |
Removes consent-scope partial. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Ciba/ViewModel.cs |
Removes CIBA view models. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Ciba/InputModel.cs |
Removes CIBA input model. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Ciba/Index.cshtml.cs |
Removes CIBA request handler. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Ciba/Index.cshtml |
Removes CIBA request page. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Ciba/ConsentOptions.cs |
Removes CIBA consent options. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Ciba/All.cshtml.cs |
Removes pending-request handler. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Ciba/All.cshtml |
Removes pending-request page. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Ciba/_ScopeListItem.cshtml |
Removes CIBA scope partial. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Account/Logout/LogoutOptions.cs |
Removes logout options. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Account/Logout/LoggedOutViewModel.cs |
Removes logout view model. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Account/Logout/LoggedOut.cshtml.cs |
Removes logged-out handler. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Account/Logout/LoggedOut.cshtml |
Removes logged-out page. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Account/Logout/Index.cshtml |
Removes logout confirmation page. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Account/Login/ViewModel.cs |
Removes login view model. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Account/Login/LoginOptions.cs |
Removes login options. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/Account/Login/InputModel.cs |
Removes login input model. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/_ViewStart.cshtml |
Removes shared layout selection. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Pages/_ViewImports.cshtml |
Removes shared Razor imports. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Extensions.cs |
Removes server configuration helpers. |
BFF/v2/TokenExchange/TokenExchange.IdentityServer/Config.cs |
Removes identity-resource and client configuration. |
BFF/v2/TokenExchange/TokenExchange.Bff/wwwroot/StyleSheet.css |
Removes BFF stylesheet. |
BFF/v2/TokenExchange/TokenExchange.Bff/TokenExchange.Bff.csproj |
Removes retired BFF project. |
BFF/v2/TokenExchange/TokenExchange.Bff/Properties/launchSettings.json |
Removes launch configuration. |
BFF/v2/TokenExchange/TokenExchange.Bff/LocalApiController.cs |
Removes local API controller. |
BFF/v2/TokenExchange/TokenExchange.Api/TokenExchange.Api.csproj |
Removes retired API project. |
BFF/v2/TokenExchange/TokenExchange.Api/Properties/launchSettings.json |
Removes launch configuration. |
BFF/v2/TokenExchange/TokenExchange.Api/EchoController.cs |
Removes echo controller. |
BFF/v2/SplitHosts/SplitHosts.slnx |
Removes retired solution. |
BFF/v2/SplitHosts/FrontendHost/wwwroot/StyleSheet.css |
Removes frontend stylesheet. |
BFF/v2/SplitHosts/FrontendHost/Properties/launchSettings.json |
Removes launch configuration. |
BFF/v2/SplitHosts/FrontendHost/Program.cs |
Removes frontend startup code. |
BFF/v2/SplitHosts/FrontendHost/FrontendHost.csproj |
Removes frontend project. |
BFF/v2/SplitHosts/BackendHost/Properties/launchSettings.json |
Removes launch configuration. |
BFF/v2/SplitHosts/BackendHost/FrontendHostReturnUrlValidator.cs |
Removes return-URL validator. |
BFF/v2/SplitHosts/BackendHost/BackendHost.csproj |
Removes backend project. |
BFF/v2/SplitHosts/BackendHost/appsettings.json |
Removes backend settings. |
BFF/v2/SplitHosts/BackendHost/appsettings.Development.json |
Removes development settings. |
BFF/v2/SplitHosts/BackendApiHost/Properties/launchSettings.json |
Removes launch configuration. |
BFF/v2/SplitHosts/BackendApiHost/Program.cs |
Removes API startup code. |
BFF/v2/SplitHosts/BackendApiHost/BackendApiHost.csproj |
Removes API project. |
BFF/v2/React/React.slnx |
Removes retired solution. |
BFF/v2/React/react.client/src/main.jsx |
Removes React entry point. |
BFF/v2/React/react.client/src/index.css |
Removes stylesheet file. |
BFF/v2/React/react.client/src/components/NavMenu.css |
Removes navigation styles. |
BFF/v2/React/react.client/src/components/Layout.jsx |
Removes layout component. |
BFF/v2/React/react.client/src/App.jsx |
Removes application routing. |
BFF/v2/React/react.client/src/App.css |
Removes application styles. |
BFF/v2/React/react.client/README.md |
Removes client template documentation. |
BFF/v2/React/react.client/react.client.esproj |
Removes JavaScript project. |
BFF/v2/React/react.client/package.json |
Removes client dependency manifest. |
BFF/v2/React/react.client/nuget.config |
Removes NuGet configuration. |
BFF/v2/React/react.client/index.html |
Removes client HTML entry point. |
BFF/v2/React/react.client/.vscode/launch.json |
Removes browser launch configuration. |
BFF/v2/React/react.client/.gitignore |
Removes client ignore rules. |
BFF/v2/React/react.client/.eslintrc.cjs |
Removes ESLint configuration. |
BFF/v2/React/React.Bff/React.Bff.csproj |
Removes retired BFF project. |
BFF/v2/React/React.Bff/Properties/launchSettings.json |
Removes launch configuration. |
BFF/v2/React/React.Bff/appsettings.json |
Removes BFF settings. |
BFF/v2/React/React.Bff/appsettings.Development.json |
Removes development settings. |
BFF/v2/React/React.Api/React.Api.csproj |
Removes retired API project. |
BFF/v2/React/React.Api/Properties/launchSettings.json |
Removes launch configuration. |
BFF/v2/React/React.Api/Program.cs |
Removes API startup code. |
BFF/v2/React/React.Api/appsettings.json |
Removes API settings. |
BFF/v2/React/React.Api/appsettings.Development.json |
Removes development settings. |
BFF/v2/React/.vscode/tasks.json |
Removes build tasks. |
BFF/v2/React/.vscode/launch.json |
Removes debugger configurations. |
BFF/v2/JsBffYarpSample/JsBffYarpSample.slnx |
Removes retired solution. |
BFF/v2/JsBffYarpSample/FrontendHost/YarpConfigurator.cs |
Removes proxy configuration. |
BFF/v2/JsBffYarpSample/FrontendHost/wwwroot/StyleSheet.css |
Removes frontend styles. |
BFF/v2/JsBffYarpSample/FrontendHost/Properties/launchSettings.json |
Removes launch configuration. |
BFF/v2/JsBffYarpSample/FrontendHost/FrontendHost.csproj |
Removes frontend project. |
BFF/v2/JsBffYarpSample/BackendApiHost/Properties/launchSettings.json |
Removes launch configuration. |
BFF/v2/JsBffYarpSample/BackendApiHost/Program.cs |
Removes API startup code. |
BFF/v2/JsBffYarpSample/BackendApiHost/BackendApiHost.csproj |
Removes API project. |
BFF/v2/JsBffYarpSample/.vscode/tasks.json |
Removes build tasks. |
BFF/v2/JsBffYarpSample/.vscode/launch.json |
Removes debugger configurations. |
BFF/v2/JsBffSample/JsBffSample.slnx |
Removes retired solution. |
BFF/v2/JsBffSample/FrontendHost/wwwroot/StyleSheet.css |
Removes frontend styles. |
BFF/v2/JsBffSample/FrontendHost/Properties/launchSettings.json |
Removes launch configuration. |
BFF/v2/JsBffSample/FrontendHost/FrontendHost.csproj |
Removes frontend project. |
BFF/v2/JsBffSample/BackendApiHost/Properties/launchSettings.json |
Removes launch configuration. |
BFF/v2/JsBffSample/BackendApiHost/Program.cs |
Removes API startup code. |
BFF/v2/JsBffSample/BackendApiHost/BackendApiHost.csproj |
Removes API project. |
BFF/v2/JsBffSample/.vscode/tasks.json |
Removes build tasks. |
BFF/v2/JsBffSample/.vscode/launch.json |
Removes debugger configurations. |
BFF/v2/DPoP/DPoP.slnx |
Removes retired solution. |
BFF/v2/DPoP/DPoP.Bff/wwwroot/StyleSheet.css |
Removes BFF styles. |
BFF/v2/DPoP/DPoP.Bff/Properties/launchSettings.json |
Removes launch configuration. |
BFF/v2/DPoP/DPoP.Bff/LocalApiController.cs |
Removes local API controller. |
BFF/v2/DPoP/DPoP.Bff/DPoP.Bff.csproj |
Removes BFF project. |
BFF/v2/DPoP/DPoP.Api/Properties/launchSettings.json |
Removes launch configuration. |
BFF/v2/DPoP/DPoP.Api/EchoController.cs |
Removes echo controller. |
BFF/v2/DPoP/DPoP.Api/DPoP/IReplayCache.cs |
Removes replay-cache interface. |
BFF/v2/DPoP/DPoP.Api/DPoP/DPoPServiceCollectionExtensions.cs |
Removes DPoP service registration. |
BFF/v2/DPoP/DPoP.Api/DPoP/DPoPProofValidatonContext.cs |
Removes proof-validation context. |
BFF/v2/DPoP/DPoP.Api/DPoP/DPoPOptions.cs |
Removes DPoP options. |
BFF/v2/DPoP/DPoP.Api/DPoP/DPoPMode.cs |
Removes DPoP mode enumeration. |
BFF/v2/DPoP/DPoP.Api/DPoP/DefaultReplayCache.cs |
Removes replay-cache implementation. |
BFF/v2/DPoP/DPoP.Api/DPoP/ConfigureJwtBearerOptions.cs |
Removes JWT/DPoP configuration. |
BFF/v2/DPoP/DPoP.Api/DPoP.Api.csproj |
Removes API project. |
BFF/v2/DPoP/.vscode/tasks.json |
Removes build tasks. |
BFF/v2/DPoP/.vscode/launch.json |
Removes debugger configurations. |
BFF/v2/BlazorWasm/Shared/WeatherForecast.cs |
Removes shared forecast model. |
BFF/v2/BlazorWasm/Shared/BlazorWasm.Shared.csproj |
Removes shared project. |
BFF/v2/BlazorWasm/Server/Properties/launchSettings.json |
Removes server launch configuration. |
BFF/v2/BlazorWasm/Server/Pages/Error.cshtml.cs |
Removes error handler. |
BFF/v2/BlazorWasm/Server/Pages/Error.cshtml |
Removes error page. |
BFF/v2/BlazorWasm/Server/Controllers/WeatherForecastController.cs |
Removes forecast controller. |
BFF/v2/BlazorWasm/Server/BlazorWasm.Server.csproj |
Removes server project. |
BFF/v2/BlazorWasm/Server/appsettings.json |
Removes server settings. |
BFF/v2/BlazorWasm/Server/appsettings.Development.json |
Removes development settings. |
BFF/v2/BlazorWasm/Client/wwwroot/index.html |
Removes browser entry page. |
BFF/v2/BlazorWasm/Client/wwwroot/css/open-iconic/ICON-LICENSE |
Removes bundled icon license. |
BFF/v2/BlazorWasm/Client/Shared/SurveyPrompt.razor |
Removes survey component. |
BFF/v2/BlazorWasm/Client/Shared/RedirectToLogin.razor |
Removes login redirect component. |
BFF/v2/BlazorWasm/Client/Shared/NavMenu.razor |
Removes navigation component. |
BFF/v2/BlazorWasm/Client/Shared/MainLayout.razor |
Removes client layout. |
BFF/v2/BlazorWasm/Client/Shared/LoginDisplay.razor |
Removes login display. |
BFF/v2/BlazorWasm/Client/Shared/CurrentSession.razor |
Removes session display. |
BFF/v2/BlazorWasm/Client/Properties/launchSettings.json |
Removes client launch configuration. |
BFF/v2/BlazorWasm/Client/Program.cs |
Removes client service setup. |
BFF/v2/BlazorWasm/Client/Pages/Index.razor |
Removes client home page. |
BFF/v2/BlazorWasm/Client/Pages/FetchData.razor |
Removes forecast page. |
BFF/v2/BlazorWasm/Client/Pages/Counter.razor |
Removes counter page. |
BFF/v2/BlazorWasm/Client/BlazorWasm.Client.csproj |
Removes client project. |
BFF/v2/BlazorWasm/Client/BFF/AntiforgeryHandler.cs |
Removes CSRF header handler. |
BFF/v2/BlazorWasm/Client/App.razor |
Removes application router. |
BFF/v2/BlazorWasm/Client/_Imports.razor |
Removes shared Razor imports. |
BFF/v2/BlazorWasm/BlazorWasm.slnx |
Removes retired solution. |
BFF/v2/Angular/Angular.slnx |
Removes retired solution. |
BFF/v2/Angular/angular.client/tsconfig.spec.json |
Removes test TypeScript configuration. |
BFF/v2/Angular/angular.client/tsconfig.json |
Removes TypeScript configuration. |
BFF/v2/Angular/angular.client/tsconfig.app.json |
Removes application TypeScript configuration. |
BFF/v2/Angular/angular.client/src/styles.css |
Removes global stylesheet. |
BFF/v2/Angular/angular.client/src/proxy.conf.js |
Removes development proxy configuration. |
BFF/v2/Angular/angular.client/src/main.ts |
Removes Angular bootstrap code. |
BFF/v2/Angular/angular.client/src/index.html |
Removes browser entry page. |
BFF/v2/Angular/angular.client/src/assets/.gitkeep |
Removes asset-directory placeholder. |
BFF/v2/Angular/angular.client/src/app/user-session/user-session.component.ts |
Removes session component. |
BFF/v2/Angular/angular.client/src/app/user-session/user-session.component.spec.ts |
Removes session component test. |
BFF/v2/Angular/angular.client/src/app/user-session/user-session.component.html |
Removes session template. |
BFF/v2/Angular/angular.client/src/app/user-session/user-session.component.css |
Removes session stylesheet. |
BFF/v2/Angular/angular.client/src/app/todos/todos.component.css |
Removes todo stylesheet. |
BFF/v2/Angular/angular.client/src/app/nav-menu/nav-menu.component.ts |
Removes navigation component. |
BFF/v2/Angular/angular.client/src/app/nav-menu/nav-menu.component.css |
Removes navigation styles. |
BFF/v2/Angular/angular.client/src/app/home/home.component.ts |
Removes home component. |
BFF/v2/Angular/angular.client/src/app/home/home.component.html |
Removes home template. |
BFF/v2/Angular/angular.client/src/app/csrf-header.interceptor.ts |
Removes CSRF interceptor. |
BFF/v2/Angular/angular.client/src/app/app.server.module.ts |
Removes server-rendering module. |
BFF/v2/Angular/angular.client/src/app/app.module.ts |
Removes application module. |
BFF/v2/Angular/angular.client/src/app/app.component.ts |
Removes root component. |
BFF/v2/Angular/angular.client/src/app/app.component.html |
Removes root template. |
BFF/v2/Angular/angular.client/src/app/app.component.css |
Removes root styles. |
BFF/v2/Angular/angular.client/README.md |
Removes client documentation. |
BFF/v2/Angular/angular.client/nuget.config |
Removes NuGet configuration. |
BFF/v2/Angular/angular.client/karma.conf.js |
Removes test-runner configuration. |
BFF/v2/Angular/angular.client/aspnetcore-https.js |
Removes development certificate script. |
BFF/v2/Angular/angular.client/angular.client.esproj |
Removes JavaScript project. |
BFF/v2/Angular/angular.client/.vscode/tasks.json |
Removes client development tasks. |
BFF/v2/Angular/angular.client/.vscode/launch.json |
Removes browser launch configuration. |
BFF/v2/Angular/angular.client/.vscode/extensions.json |
Removes editor recommendations. |
BFF/v2/Angular/angular.client/.gitignore |
Removes client ignore rules. |
BFF/v2/Angular/angular.client/.editorconfig |
Removes editor configuration. |
BFF/v2/Angular/Angular.Bff/Properties/launchSettings.json |
Removes BFF launch configuration. |
BFF/v2/Angular/Angular.Bff/appsettings.json |
Removes BFF settings. |
BFF/v2/Angular/Angular.Bff/appsettings.Development.json |
Removes development settings. |
BFF/v2/Angular/Angular.Bff/Angular.Bff.csproj |
Removes BFF project. |
BFF/v2/Angular/Angular.Api/Properties/launchSettings.json |
Removes API launch configuration. |
BFF/v2/Angular/Angular.Api/Program.cs |
Removes API startup code. |
BFF/v2/Angular/Angular.Api/appsettings.json |
Removes API settings. |
BFF/v2/Angular/Angular.Api/appsettings.Development.json |
Removes development settings. |
BFF/v2/Angular/Angular.Api/Angular.Api.csproj |
Removes API project. |
BFF/v2/Angular/.vscode/tasks.json |
Removes build tasks. |
BFF/v2/Angular/.vscode/launch.json |
Removes debugger configurations. |
Review effort: Balanced
- Use option names (--input-file etc.) instead of descriptions as the option name; whitespace in names throws at startup, even for --help - Move the explanatory text to Description, keeping the short aliases - Make Main async and await InvokeAsync so the async action runs Applies to both the BFF v3 and v4 OpenApi samples.
Microsoft.OpenApi 2.x only registers a JSON reader by default, and the
1.x Microsoft.OpenApi.Readers package (which handled YAML) was removed in
the upgrade. The BFF still proxies /openapi/{document}.yaml, so those
responses failed to parse.
- Add Microsoft.OpenApi.YamlReader 2.12.0 and register it via
OpenApiReaderSettings.AddYamlReader()
- Handle documents without components (now null in 2.x) instead of
throwing a NullReferenceException
- Fail with the reader diagnostics when a document can't be read
Applies to both the BFF v3 and v4 OpenApi samples.
|
Addressed the YAML finding from the latest review in ede847d: Microsoft.OpenApi 2.x only reads JSON by default, so I added |
There was a problem hiding this comment.
🔵 Needs a closer look
The .NET 10 migration spans authentication, rendering, Aspire, and containers, while build-only CI leaves login/logout, token exchange, and DPoP flows without runtime integration validation.
No open issues 🎉
2 resolved since last review
Review effort: Balanced

No description provided.