You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I've got a monorepo using a yarn workspace with about 100 addons, on a classic (non-embroider) build. Booting takes a long time and I'm investigating performance improvements. I came across almost 3 seconds spent inside babelPluginConfig. About 1.5s is spent in crypto/hash#update, and then readFileSync and statSync (via findUp) are around 400ms each.
From what I can tell, it is repeatedly finding and reading the same yarn.lock file, and creating a hash with the same yarn.lock file contents and project dependency list.
I'm wondering if we can avoid some of this repetition. If so I can contribute a PR. It seems like at least the findUp result per appRoot value could be reused. I don't think the contents of yarn.lock or gatherAddonCacheKey(appOrAddonInstance.project) are changing during the time I'm looking at but it seems like this code is intended to catch changes to those?
I've got a monorepo using a yarn workspace with about 100 addons, on a classic (non-embroider) build. Booting takes a long time and I'm investigating performance improvements. I came across almost 3 seconds spent inside
babelPluginConfig
. About 1.5s is spent in crypto/hash#update, and then readFileSync and statSync (via findUp) are around 400ms each.From what I can tell, it is repeatedly finding and reading the same
yarn.lock
file, and creating a hash with the same yarn.lock file contents and project dependency list.I'm wondering if we can avoid some of this repetition. If so I can contribute a PR. It seems like at least the findUp result per
appRoot
value could be reused. I don't think the contents ofyarn.lock
orgatherAddonCacheKey(appOrAddonInstance.project)
are changing during the time I'm looking at but it seems like this code is intended to catch changes to those?embroider/packages/macros/src/macros-config.ts
Lines 346 to 370 in a6cd4aa
The text was updated successfully, but these errors were encountered: