yeoman/generator — pull request #201 by passy (2013-04-07 22:09:42+00:00)
Title: Remove bower dependency

After some hours of profiling I found that the `bower` dependency accounted for a substantial part of the start-up time. After removing bower a stripped-down version of `generator-webapp` ran in 0.3s compared to 1.7s with bower. For poor Sindre, who's still running on an HDD, the startup time went from 24s to 1.25s.

The reason for this is that bower is recursively required by all sub-generators and bower itself has quite a lot of dependencies, causing more than 22 000 synchronous stat syscalls when looking up dependent modules in my test case with two sub-generators.

This patch removes the bower dependency and uses `childprocess.spawn` instead to provide the same functionality, as suggested by @mklabs.