[Scons-users] SCons very slow on GitHub actions
Mats Wichmann
mats at wichmann.us
Mon Apr 28 09:33:56 EDT 2025
On 4/28/25 06:03, Leonard de Ruijter wrote:
> Hello,
>
> I'm suffering from very slow SCons script reading times on Github
> Actions with Windows runners. For an example, see https://github.com/
> LeonarddeR/scons-examples/actions/runs/14706591575/job/41268375471
>
> Things I've tried so far to fix this are:
> - Pinned version of Python with the setup-python action, both X86 and X64
> - Pinned version of SCons to an older version, e.g. 4.8.1
> - Server 2025 image
> - Run in a venv with uv
> - Cleaning up the path variable, since it is known to be full of garbage
> on GH Actions
> - Using a Windows dev drive
>
> There's definitely a variable on Github Actions that kicks us here, but
> apart from the script reading phase, all seems pretty smooth afterwards.
> And not to mention that other runners are going fine.
>
> Kind regards,
>
> Leonard de Ruijter
Hard to say too much at this point. How slow is it? Do you have a
comparison to, say, a Linux build? Are there a lot of files involved in
building the dependency tree? Do they result in a lot of work
(dependency scanning, etc.)?
The contents of PATH shouldn't affect times since SCons ignores it. Are
you by any chance importing PATH in your build?
SCons *is* slower on Windows. It's irritating to those of us who run the
test suite a lot, because where Windows is demonstrably slower is in the
plumbing of creating a new process. That hurts the test suite because we
do it over and over again - 1200+ tests run scons 1-3 times each, and
many of those have command actions which spawn further processes, so it
adds up. The GH Actions runs of our test suite take 5:45 on Linux, 17m+
on Windows. However... that usually isn't a big factor building a single
project, and you'd see it in the build phase, not in the reading phase.
More information about the Scons-users
mailing list