Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Load other shapes when a mixin can't be resolved
Found this when working on the language server - if you have a model like: ``` $version: "2" namespace com.foo string Foo @mixin structure Bar {} structure Baz with [Unknown] {} ``` loading it will result in `Foo` and `Bar` also not being loaded. It seems like the reason for this was that if TopologicalShapeSort failed, we wouldn't build _any_ shapes into the model, despite TopologicalShapeSort being able to resolve some shapes. Practically speaking I'm not sure if this means much in general, but for the language server its big because without it, you can't have mixin completions unless you either don't reload the model on changes (which means you can't type a mixin, then get completions to use it), or don't update the server's version of the model if the new version is broken (which reduces the quality of diagnostics, and has the same issue as the other way).
- Loading branch information