dotnet / aspnetcore

ASP.NET Core is a cross-platform .NET framework for building modern cloud-based web applications on Windows, Mac, or Linux.
https://asp.net
MIT License
35.44k stars 10.02k forks source link

[Blazor] Throw meaningful exception for JSRuntime calls that timeout #21384

Open captainsafia opened 4 years ago

captainsafia commented 4 years ago

Capturing the direction on this into a new issue. We should throw a more meaningful exception to users if JS interop invocations timeout.

Ref: #18875 #21375

mkArtakMSFT commented 4 years ago

@captainsafia can you please fill in the details on what a solution would look like here? Thanks!

ghost commented 4 years ago

We've moved this issue to the Backlog milestone. This means that it is not going to be worked on for the coming release. We will reassess the backlog following the current release and consider this item at that time. To learn more about our issue management process and to have better expectation regarding different types of issues you can read our Triage Process.

captainsafia commented 4 years ago

The fix for this issue will need to be implemented in the ComponentBase class (ref).

Specifically, the exception handling logic that is in question is here. Currently, we ignore all exceptions that occur because a task was cancelled.

We need to add an additional check if the cancellation occurred due to a timeout and throw an exception with a specific message if that is the case.

ghost commented 3 years ago

We've moved this issue to the Backlog milestone. This means that it is not going to be worked on for the coming release. We will reassess the backlog following the current release and consider this item at that time. To learn more about our issue management process and to have better expectation regarding different types of issues you can read our Triage Process.

ghost commented 10 months ago

Thanks for contacting us.

We're moving this issue to the .NET 9 Planning milestone for future evaluation / consideration. We would like to keep this around to collect more feedback, which can help us with prioritizing this work. We will re-evaluate this issue, during our next planning meeting(s). If we later determine, that the issue has no community involvement, or it's very rare and low-impact issue, we will close it - so that the team can focus on more important and high impact issues. To learn more about what to expect next and how this issue will be handled you can read more about our triage process here.