osu-framework
osu-framework copied to clipboard
.NET analyser wish-list
I'm beginning to forget all the things we need analysers for, so will keep tracking them in this thread.
- [ ]
Bindablesubclasses need actor(T defaultValue = null)constructor: https://github.com/ppy/osu-framework/pull/4568
- [ ] I think https://github.com/ppy/osu-framework/issues/2278 would fall under this, but a low priority one.
- [ ]
Bindableimplementations that overrideBindTo()should also overrideUnbindFrom(): https://github.com/ppy/osu-framework/pull/4598
- [ ] One which detects thread-safety issues. For example using a field which is marked as
[ThreadUnsafe]from the update thread. And we could probably treat everything else as update-only and perform the opposite check for accesses to update-thread members.
- [ ] Detect
Bindableleaf classes with non-overriddenCreateInstance().
- [x] Warn that
[Resolved(CanBeNull = true)]is redundant in NRT contexts and can be replaced with nullable type. https://github.com/ppy/osu-localisation-analyser/pull/56
- [ ] Verify correctness of use of
Scheduler.AddOnce()(https://github.com/ppy/osu/pull/25076#discussion_r1352332462)
- [ ] Redundant double resolution in BDL and to field (https://github.com/ppy/osu/pull/25191#discussion_r1368313082)