Open Lunarmagpie opened 1 year ago
There was a related discussion in #1129 about feature flags or a similar field.
While I prefer feature flag approach so that new versions of type checker automatically enable new features, type checker name approach is still fine. I think version is too detailed though and would be maintenance pain to track.
One issue I have run into as a library dev is varying support for typing features or bugs for both of the type checkers.
typing.TYPE_CHECKER
would allow me to change type definition based on the type checker so that I can support all static analysis tools more effectively.I propose that
TYPE_CHECKER
would be a dict with a "name" and "version" key. Type checkers could also optionally add other keys/values.Using it for types would look like this:
At runtime I think the
TYPE_CHECKER
object should be an empty dictionary.