Closed
Description
This meta issue captures the roadmap for API Compat and Package Validation.
Order of tasks is the order in which we should tackle them (they can be done simultaneously).
Sizes:
S: 1 day.
M: 2 - 3 days.
L: 1 week.
XL: 1+ weeks.
P0:
- [ApiCompat] Add assembly version check between different assets. #17365 (Size: S)
- [ApiCompatibility] Add a new rule to detect breaking changes on updating contract of abstract classes/ interfaces #17928 (Size: M)
- [API Compat] Add a rule that detects removal of abstract members #18679 (Size: S)
- [API Compat] Add rule that validates a base type or interface is not removed #18680 (Size: M) (PR [API Compat] Add rule that validates a base type or interface is not removed #18929)
- [API Compat] Add rule that prohibits sealing an inheritable type #18685 (Size: S)
- [Package Validation] Should enable API Compat strict mode when applicable #18702 (Size: S)
- [API Compat] Support suppressing an error globally for the same left and right with no target #19123 (Size: S)
- [Package Validation] Localize all the error messages and diagnostics #17366 (Size: S)
- Move PackageValidation to sdk with opt-in flag #19209 (Size: M)
- [Package Validation] Baseline package validation should run with references #18676 (Size: L)
P1:
- [API Compat] Add MSBuild task to run API Compat standalone #18677 (Needed for dotnet/runtime, wcf, etc, Size: M)
- [API Compat] Add rule to make sure nullable annotations are compatible #18681 (Size: L)
- [API Compat] Add rule to make sure virtual modifier is not removed #18682 (Size: M)
- [API Compat] Add rule to prohibit making a member virtual #18683 (Size: S)
- PackageValidation task should not filter package assets. #18165 (Size: ?)
- PackageValidation should warn if documentation files are dropped (.xml) #19614 (Size: S)