V 2.2

Putting a third party assembly which was not even used or listed anywhere into the bin folder of the nopCommerce crashed my site with complains about abstract classes from autofac.

Quick investigation showed that by default AppDomainTypeFinder iterates over all the assemblies found in the bin folder and sends them to autofac or so (I just figured out the problem and fixed it so I can be mistaken about the details of implementation).

AppDomainTypeFinder skips passing to autofac files which names match the following lengthy pattern string:
      private string assemblySkipLoadingPattern = "^System|^mscorlib|^Microsoft|^CppCodeProvider|^VJSharpCodeProvider|^WebDev|^Castle|^Iesi|^log4net|
^NHibernate|^nunit|^TestDriven|^MbUnit|^Rhino|^QuickGraph|^TestFu|^Telerik|^ComponentArt|^MvcContrib|
^AjaxControlToolkit|^Antlr3|^Remotion|^Recaptcha";

which had to be extended in my case.  What I suppose to be wrong with this approach:

1) The fact that simply putting some assembly into the bin folder would crash my site was somewhat unexpected.
2) However the crash probably was a good thing: I suppose it would be a worse scenario if put a whole library consisting of about a hundred modules with total size of several dozens MB with all dependencies resolved - I am afraid then I could spend quite long time thinking about the cause of slow application start up and probably seriously increased memory consumption (if the info about endless types from all iterated files in such a scenario is stored somewhere).
3) Etc, etc, etc

Why iterating over possibly endless files and have a possible endless exclusion pattern string? Is it not easier to list those several assemblies that are really needed and are generally known in development time? What about defining their names in web.config? I.e. instead of filtering out potentially endless list of unneeded things with possible latent side effects if something is not on that list the code could have a list of a few modules that are really needed in this context.