nette/nette — pull request #1424 by matej21 (2014-02-23 15:21:10+00:00)
Title: DI: blacklist of classes excluded from autowiring

This prevents from autowiring generic classes like IContainer.

example: You have some component (in my case it was visual paginator) and factory interface. You register that factory in DI container. Then you register some presenter in DI container. Because VisualPaginator has constructor from ComponentModel\Component (` __construct(IContainer $parent = NULL`...), nette tries to autowire presenter. And this may cause serious problems. This PR exclude Component, Container etc. from autowiring. Of course, you still can autowire all descendants which are not blacklisted. (so you cannot autowire UI\Presenter but you can autowire FooPresenter)

As a side effect, this PR shrinks down the size of generated container :)