What it means
A build that runs for 20 minutes is stopped. Most builds take a small fraction of that, so a build that reaches the limit is almost always stuck, not slow.
Common causes
-
A command that never ends. A build script that starts a development server or a watcher, for example
vite build --watchornext dev, waits forever. -
A package compiling from source. A Python or native package without a prebuilt wheel can compile for a very long time. See Failed building wheel.
-
A step waiting for the network. A download or a prompt that waits for input.
-
A very large project. A build that does a great deal of work.
How to fix it
-
Read the end of the build log
It shows the step that was running when time ran out.
-
Make every build command finish
The
buildscript must exit on its own. Remove watch flags and anything that waits for input. -
Prefer prebuilt packages
Pin versions and a Python version that have prebuilt wheels, so nothing compiles from source.