Is there some place where all the differences between runtime behaviour vs typing behaviour documented? It would be nice to have some kind of a reference list of what discrepancies are accepted in current typing system and that users may met in the edge cases.
E.g. I’ve just met an issue with enumerate
accepting __getitem__
iterables on Runtime and not accepting it in typing and then I’ve found a PR that exactly that which lead me to explanation on why this compromise is made. Another example is __buffer__
virtually implemented before 3.12.