dotnet / dotnet/wcf

Please make IAsyncCommunicationObject actually public

Open
#5,269 2 comments 0 reactions 1 assignee Claimed by @mconnew View on GitHub
feature request triaged
Dominant language
C#
Stars
1.8k
Forks
576
Avg merge
6d 9h
Merged PRs (30d)
2

Description

The `System.ServiceModel.IAsyncCommunicationObject` interface should be public.

Although [IAsyncCommunicationObject](https://github.com/dotnet/wcf/blob/v6.0.0-rtm/src/System.ServiceModel.Primitives/src/System/ServiceModel/ICommunicationObject.cs#L35) is public, it's nowhere in the `System.ServiceModel.Primitives.Ref` project, making it effectively unavailable to consumers of the NuGet package.

This even confuses JetBrains Rider. 😕

![Rider confused by IAsyncCommunicationObject](https://github.com/dotnet/wcf/assets/51363/70ce6b82-c661-4444-8064-c56f7d4263fb)

The files in the `System.ServiceModel.Primitives.Ref` project all have this line at the top.
> Changes to this file must follow the http://aka.ms/api-review process.

Does this still hold true? It seems that recent additions such as the introduction of `ITransportCompressionSupport` in 2c92580316c5152949f2d4fb2c50e13af56ae8b7 didn't [go through the API Review Process](https://github.com/search?q=repo%3Adotnet%2Fruntime+ITransportCompressionSupport).

Should I file an issue in the dotnet/runtime repository or is this very issue enough to discuss making the `IAsyncCommunicationObject` interface public?

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.