Closed
Description
For .NET 6, we'd like to evaluate the APIs marked as obsolete and remove them if necessary. There's ~130 APIs marked as obsolete that are split up based on project area in the table below. The goal is to have these APIs removed by preview1 so we have time to get feedback on our decision early on in the release.
What to do
- If it should be removed
- Remove it
- Update any samples/tests that use the obsolete API.
- If it should not be removed:
- Add an inline comment explaining why and provide a timeline for removal if possible
- Ensure that the Obsolete description provides information about alternative APIs or guidelines on what the user should do otherwise.
- Provide an aka.ms link to the deprecation announcement.
Who is doing it
Area | Assigned | Done? |
---|---|---|
Azure AD | @HaoK, @JunTaoLuo, @javiercn | #27955 |
Hosting | @Tratcher, @halter73 | #27529 (comment) |
Http | @Tratcher, @jkotalik , @halter73 | #28890 |
Middleware | @Tratcher, @HaoK, @halter73 | #28893 |
MVC | @pranavkm, @javiercn, @captainsafia | #28337 |
Razor | @ajaybhargavb, @captainsafia | #28706 |
Servers | @jkotalik, @halter73 | #29275 |
SignalR | @BrennanConroy | #28100 |
Things to keep in mind
@halter73 and @captainsafia took a look at all the APIs and made the following list of things to consider when evaluating whether or not an Obsolete
d API should be removed.
- Outside of redundancy, is there another harm to having the API around? For example, it is not performant or not supported by other parts of the ecosystem.
- What's the maintenance cost of keeping the API around? This includes things like the number of issues reported by users, whether there's a lot of flaky tests associated with the API, etc.
- Does the
Obsolete
d API no longer work? - How common is the API that is being obsoleted? Is it likely a new user will inadvertently use it and run into issues?
- Is it actually a shipped API?
- When was the API obsoleted? If it was obsoleted in .NET 5, keep it around to make upgrading between LTS releases, from 3.1 to 6, easier for devs.
- Is this API commonly used by other packages?
Metadata
Metadata
Labels
Includes HostingIncludes: URL rewrite, redirect, response cache/compression, session, and other general middlewaresIncludes: MVC, Actions and Controllers, Localization, CORS, most templatesIncludes: SignalR clients and serversThis issue represents a design proposal for a different issue, linked in the descriptionIssues related to integration with Azure components (Azure App Service Logging, App Insights, etc.)