* Switch to subprocess.run for timeouts
* [experiment] Set CI TIMEOUT_SCALE_FACTOR to 1
* supress parameterized.expand error in event of no compilers, change TIMEOUT_SCALE_FACTOR in CI to 2
* Exempt dummy compilers from nsjail bind mounts, disable nsjail time limits
* Don't run timeout test on windows
* Decouple test_compiler_timeout's timeout from global timeout settings, reset TIMEOUT_SCALE_FACTOR to 10
* Have DummyLongRunningCompiler subclass DummyCompiler
* Have a timeout of zero disable timeouts entirely
* Skip test_zero_timeout on windows
* black
Co-authored-by: ConorBobbleHat <c.github@firstpartners.net>
* Force exception_on_timeout to use spawn to make gunicorn happy
* black
* Have test_fpr_reg_names_output and test_giant_compilation test for success as opposed to a lack of output
* Refactor timeouts for:
- compiling
- decompiling
- assembling
- disassembling
* Move m2c timeout wrapper to prevent interfering with StringIO
* Increase default timeouts by an order of magnitude to investigate failing CI tests
* Add timeout scale factor, have CI timeouts be 10x default
Co-authored-by: ConorBobbleHat <c.github@firstpartners.net>
As this title suggests, this PR caps the runtime for all compiler / m2c
calls. Currently, the timeout is five seconds for both.
There may well be a better place to put the compile timeout; as ever,
happy to change :)
Co-authored-by: ConorBobbleHat <ConorBobbleHat>