As part of the broccoli-plugin refactor, we have unlocked the ability for a further optimization.
We can now keep outputDir persistent between rebuilds. (not to be confused with broccoli-persistent-filter – which keeps the cache persistent between restarts). This enables plugins who opt-in the ability to do a more intelligent diff based update of their own outputDir, and should cut down on FS activity nicely.
Some early experiments (just batching mkdirp) have lead to some very favorable numbers (up to 50% rebuild speed up in broccoli-filter). The good thing is, with this approach the vast majority of output IO can likely be skipped.
The filters that will likely benefit the most are:
As part of the broccoli-plugin refactor, we have unlocked the ability for a further optimization.
We can now keep outputDir persistent between rebuilds. (not to be confused with broccoli-persistent-filter – which keeps the cache persistent between restarts). This enables plugins who opt-in the ability to do a more intelligent diff based update of their own outputDir, and should cut down on FS activity nicely.
Some early experiments (just batching mkdirp) have lead to some very favorable numbers (up to 50% rebuild speed up in broccoli-filter). The good thing is, with this approach the vast majority of output IO can likely be skipped.
The filters that will likely benefit the most are: