Static analysis: Typehinting and annotations
What does this MR do?
- lots of typehinting and annotations
- very minor refactorings to make behavior more clear
- it's hard, but please review this commit-by-commit and refer to the commit messages
How confident are you it won't break things if deployed?
I'll fix whatever comes up as broken.
Links to related issues
- preparatory work for !1674 (merged)
- &6 (closed)
- !1672 (merged)
- beaa59ea
- fdbb6f76
- 087987ef
How to test
"Just" review the code changes in each commit. Testing shouldn't be necessary if the diff looks okay.
Checklist
-
no functional changes intended => no test -
no unrelated changes -
asked someone for a code review -
set a "for:" label to indicate who will be affected by this change -
use "state:" labels to track this MR's state until it was beta tested -
entry to CHANGELOG.md => happens in !1674 (merged) -
no release notes
Edited by Chris Oelmueller