ty
ty copied to clipboard
Split the `ty_python_semantic` into more crates
The ty_python_semantic crates has become pretty big and slow to compile. Splitting the type inference logic is tricky but we could try:
- Extract the module resolver into
ty_module_resolver:- Create a new
Dbin the resolver crate with asearch_pathsmethod (to remove the dependency onProgram) - Create a new
TestDbfor the module resolver - Create a
SearchPathBuilderto replaceProgram::from_settings. - I'm sure there are some more wrinkles to it
- Create a new
- Extract
ty_python_inferfor the type inference logic. This seems much trickier. Not sure if it's worth it