[release/9.2] Add RPC protocol compat check.#8604
Merged
danmoseley merged 5 commits intorelease/9.2from Apr 8, 2025
Merged
Conversation
* Add RPC protocol compat check. * Fix merge conflict. * Fix spelling. * Update DotNetCliRunner.cs Co-authored-by: David Fowler <davidfowl@gmail.com> * Improve error message with version info. --------- Co-authored-by: David Fowler <davidfowl@gmail.com>
Contributor
There was a problem hiding this comment.
Copilot reviewed 64 out of 68 changed files in this pull request and generated 2 comments.
Files not reviewed (4)
- eng/Signing.props: Language not supported
- eng/Versions.props: Language not supported
- playground/OpenAIEndToEnd/OpenAIEndToEnd.WebStory/OpenAIEndToEnd.WebStory.csproj: Language not supported
- playground/publishers/Publishers.AppHost/qots/Dockerfile: Language not supported
| private static readonly ActivitySource s_activitySource = new ActivitySource(nameof(AppHostHelper)); | ||
|
|
||
| internal static async Task<(bool IsCompatableAppHost, bool SupportsBackchannel)> CheckAppHostCompatabilityAsync(DotNetCliRunner runner, FileInfo projectFile, CancellationToken cancellationToken) | ||
| internal static async Task<(bool IsCompatableAppHost, bool SupportsBackchannel, string? AspireHostingSdkVersion)> CheckAppHostCompatabilityAsync(DotNetCliRunner runner, FileInfo projectFile, CancellationToken cancellationToken) |
There was a problem hiding this comment.
Consider renaming 'IsCompatableAppHost' to 'IsCompatibleAppHost' to correct the spelling throughout the compatibility check API.
Suggested change
| internal static async Task<(bool IsCompatableAppHost, bool SupportsBackchannel, string? AspireHostingSdkVersion)> CheckAppHostCompatabilityAsync(DotNetCliRunner runner, FileInfo projectFile, CancellationToken cancellationToken) | |
| internal static async Task<(bool IsCompatibleAppHost, bool SupportsBackchannel, string? AspireHostingSdkVersion)> CheckAppHostCompatabilityAsync(DotNetCliRunner runner, FileInfo projectFile, CancellationToken cancellationToken) |
| .StartAsync(":hammer_and_wrench: Building app host...", async context => { | ||
| await _runner.BuildAsync(effectiveAppHostProjectFile, cancellationToken).ConfigureAwait(false); | ||
| }); | ||
| if (!appHostCompatabilityCheck?.IsCompatableAppHost ?? throw new InvalidOperationException("IsCompatableAppHost is null")) |
There was a problem hiding this comment.
Consider renaming 'IsCompatableAppHost' to 'IsCompatibleAppHost' to maintain consistency and correct spelling in condition checks.
Suggested change
| if (!appHostCompatabilityCheck?.IsCompatableAppHost ?? throw new InvalidOperationException("IsCompatableAppHost is null")) | |
| if (!appHostCompatabilityCheck?.IsCompatibleAppHost ?? throw new InvalidOperationException("IsCompatibleAppHost is null")) |
Member
Author
There was a problem hiding this comment.
Internal .. going to leave it like this for now. Will fix in main.
* Fix --watch hangs. * Don't prebuild in watch mode. * Fix up merge.
davidfowl
approved these changes
Apr 7, 2025
danmoseley
approved these changes
Apr 8, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Manual backport of #8577 to release/9.2
Customer Impact
This PR introduces an API to the AppHost RPC target which allows the CLI to query for a set of capabilities. If the required capabilities are not available then the CLI can terminate with an error message indicating the missing required capability. At the moment there is only one capability
baseline.v0. This will also allow us to implement graceful fallback of behaviors in the future.Testing
Manual
Risk
Moderate
Regression?
No