Update to Python 3.9
So far we just use the walrus operator in a handful of places. TypedDict
might be useful later, but I can’t be bothered to check where it could
be useful for us right now.
This also fixes three places that still tried to read the
READ_ONLY_REASON using the lowercase key (changed in 1d17bc8e87).