When one of the assemblies that contribute to the MEF catalog are changed, we have to rescan that assembly, then we have to recompose the graph. Although scanning an assembly is relatively quick, composing the graph can take a long time, and loads many assemblies in the process even though they weren't changed from their cached catalog versions.
There are at least two reasons why composing loads assemblies from the catalog, and I think we can solve them.
I have a branch where I've modified tests to verify that we don't load assemblies during composition (these tests fail at present) and I'm working through the issues.
When one of the assemblies that contribute to the MEF catalog are changed, we have to rescan that assembly, then we have to recompose the graph. Although scanning an assembly is relatively quick, composing the graph can take a long time, and loads many assemblies in the process even though they weren't changed from their cached catalog versions.
There are at least two reasons why composing loads assemblies from the catalog, and I think we can solve them.