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

[Proposal]: <preliminary> documentation element #8971

Open
DustinCampbell opened this issue Jan 6, 2025 · 0 comments
Open

[Proposal]: <preliminary> documentation element #8971

DustinCampbell opened this issue Jan 6, 2025 · 0 comments
Assignees
Milestone

Comments

@DustinCampbell
Copy link
Member

DustinCampbell commented Jan 6, 2025

Summary

I propose updating the C# language specification to define <preliminary> as a section-level documentation element. This element is valuable in versioning strategies where APIs may be included in published binaries prior to being declared stable. One recent example is the IOperation APIs used by Roslyn. Defining the <preliminary> element provides several benefits to library authors and users:

  • Library authors can validate the defined public API surface for both stable and preliminary APIs by updating PublicApiAnalyzer to account for <preliminary>
  • Library users can avoid using preliminary APIs by installing an analyzer capable of identifying preliminary APIs in a uniform manner
  • In cases where library users wish to use a preliminary API, analyzers can help users contain the usage scope to avoid possible negative impact on other parts of an application

🔗 preliminary (Sandcastle XML Comments Guide)
🔗 Breaking Changes Policy (Threading API Reference) (See the Preliminary Features section at the bottom)

@dotnet dotnet locked and limited conversation to collaborators Jan 6, 2025
@DustinCampbell DustinCampbell self-assigned this Jan 6, 2025
@DustinCampbell DustinCampbell added this to the Backlog milestone Jan 6, 2025
@DustinCampbell DustinCampbell added Proposal Proposal champion Blocked Waiting for a dependency and removed Proposal Blocked Waiting for a dependency labels Jan 6, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

1 participant