CommunityToolkit / CommunityToolkit/Windows
Clean up suppression of CA1063 and implement IDisposable correctly
- Vorherrschende Sprache
- C#
- Sterne
- 1.1k
- Forks
- 166
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
From https://github.com/CommunityToolkit/Tooling-Windows-Submodule/issues/63
One or more components in this repository are suppressing CA1063. To avoid memory leaks in certain edge cases, we should be implementing the full `IDisposable` pattern and not suppressing this warning.
[Affected components](https://github.com/search?q=repo%3ACommunityToolkit%2FWindows+disable+CA1063&type=code):
- [CameraHelper](https://github.com/CommunityToolkit/Windows/blob/744e6aba53329b3f04980237ca4d19eae3fbd5c9/components/Helpers/src/CameraHelper/CameraHelper.cs#L16)
- [AdvancedCollectionView](https://github.com/CommunityToolkit/Windows/blob/744e6aba53329b3f04980237ca4d19eae3fbd5c9/components/AdvancedCollectionView/src/AdvancedCollectionView.Defer.cs#L24)
- [ExpressionNode](https://github.com/CommunityToolkit/Windows/blob/744e6aba53329b3f04980237ca4d19eae3fbd5c9/components/Animations/src/Expressions/ExpressionNodes/ExpressionNode.cs#L18) (from Animations package)
Beitragsleitfaden
Rechercherichtung
Untersuche CameraHelper.cs, AdvancedCollectionView.Defer.cs und ExpressionNode.cs an den verlinkten Stellen und verfolge anschließend, wie jede Komponente Ressourcen besitzt, die freigegeben werden müssen. Überprüfe zuerst die CA1063-Unterdrückungen und das bestehende Freigabeverhalten; abgeschlossen ist die Aufgabe, wenn die betroffenen Komponenten das vollständige IDisposable-Muster implementieren, ohne CA1063 zu unterdrücken.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- csharp
- Bereich
- tooling
- Issue-Typ
- Refactoring
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100