I’ve followed the docs for developing applications, but they seem to be sparse for something more complex than a couple apps and a small number of packages.
I have a monorepo with only about 10 packages. Different apps depend on different packages. Persistent tasks cannot depend on other tasks. This is unfortunate because I cannot use turbo to construct the dependency graph and pick which packages to run in dev mode for a given app or set of apps.
- What is the best way to create the dependency graph? A workaround is to create a
turbo.json
in each app and specify which packages to run in dev mode via with. Is there a better way? - When many packages are run using
"dev": "tsc --watch"
(inpackage.json
) while some depend on each other, initial builds are run many times until race conditions are met. With my current setup, this can take 40-60 seconds, whereas a rawturbo run build --filter=./packages/*
can take about 10 seconds. Making a single edit in a file can take around 30 seconds to reflect in the app (much longer than when we used to have a roottsconfig.json
to watch and build any changes across the monorepo. I am running this viaturbo run dev
. Is there a better way to achieve running dependencies in watch/dev mode?
It looks like Turbowatch describes this problem quite well.