Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
Untangle most of the big import cycle #7397
Currently mypy has a 47 module import cycle, which is not great.
This untangles things, leaving the following cycles:
The untangling done here is pretty simple and consists of two main parts:
I think this makes sense.
I would like to point out one nasty dependency:
We could perhaps run another incremental build after self check in verbose mode and assert that the largest import cycle is below some size limit. Alternatively, we could modify verbose mode to write more details about SCCs in incremental mode and make more specific assertions, such as requiring that the nodes, typeops and checker cycles are disjoint.