Server Migration Notice (31/10/2026) — New SSH Host Keys (git.kb28.ch)
Following the server migration on 31/10/2026, the SSH host keys for git.kb28.ch have changed. If you encounter the REMOTE HOST IDENTIFICATION HAS CHANGED warning during git pull or git push, run the following command to directly replace the old key in your ~/.ssh/known_hosts file:
Official New SSH Key Fingerprints:
- ED25519:
SHA256:UrTJ+OdOKicPnL+6EgOHGlFSBm9KA+kBGMpKtoUBIOA
- ECDSA:
SHA256:qne+wTzSr8k5KIuEtXNYz9/LYed4eOMSmxzgMZ4g+KI
- RSA:
SHA256:eaVzvSUlo66pMayLMHL/cWg4zoPui3LmLOWKm0XX22g
This PR implements variance for type variables. To make UX pleasant for Python users who may not be familiar with type theory and variance, this property is inferred from usages of said variables.
It adds a
VarianceInferrerclass which walks a generic type definition recursively and tracks the polarity of its parameters' use sites, determining the final variance of each type variable.The subtyping relationship check is also extended to handle comparing two
AppliedTypeinstances of the same generic base, taking into account the variance of type variables.