Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Consider automatically hiding protocol methods when there is a convenience overload #4650

Open
JoshLove-msft opened this issue Apr 24, 2024 · 5 comments
Labels

Comments

@JoshLove-msft
Copy link
Member

The recommendation from .NET architects is to hide protocol methods via EBN if there is a corresponding convenience method. Ideally, this would be enforced by the generator so that devs don't have to remember to do this for each library.

@JoshLove-msft
Copy link
Member Author

Related docs issue - Azure/azure-sdk-for-net#43627

@ArcturusZhang
Copy link
Member

Since we have different method patterns on non-azure libraries, does this also apply to non-azure libraries?
Non-azure libraries do not have cancellationToken in their convenience methods, and it is required to use the corresponding convenience method when they need cancellation context in their invocation, would it be appropriate to hide the protocol methods there?

@lirenhe
Copy link
Contributor

lirenhe commented Apr 28, 2024

@JoshLove-msft, as you mentioned this idea is coming from .NET architects, do you have any meeting notes that you could share?
I would like to know more context about this decision.

cc @m-nash

@lirenhe lirenhe added the DPG label Apr 28, 2024
@JoshLove-msft
Copy link
Member Author

@JoshLove-msft, as you mentioned this idea is coming from .NET architects, do you have any meeting notes that you could share?
I would like to know more context about this decision.

This was from an informal discussion with @KrzysztofCwalina and @tg-msft regarding the new Event Grid library.

@KrzysztofCwalina
Copy link
Member

The context is that we keep seeing in UX studies that once convenience overloads are added, users have a hard time deciding which overload to use.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants