| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
Sorry, something went wrong.
On Emscripten and WASI platforms, or if --python command line option is used, libregrtest now uses a filename for the JSON file. Emscripten and WASI buildbot workers run the main test process with a different Python (Linux) which spawns Emscripten/WASI processes using the command specified in --python command line option. Passing a file descriptor from the parent process to the child process doesn't work in this case. * Add JsonFile and JsonFileType classes * Add RunTests.json_file_use_filename() method. * Add a test in test_regrtest on the --python command line option. * test_regrtest: add parallel=False parameter. * Split long RunWorkers._runtest() function into sub-functions.
|
First, I wrote PR #109326 to debug the issue and understand what's going on. Then I wrote this clean PR. Well. Sadly, this PR doesn't work as expected because I misunderstood how Emscripten/WASI buildbot workers run tests. On these buildbots, a first Linux x86-64 Python binary is used to run python -m test. This one lists tests and then spawns test worker processes. These test worker processes use the Emscripten/WASI runtime! So the parent and child processes don't run the same "platform"! Before, the result was serialized as JSON at the end of stdout. But it causes issues, so I enhanced libregrtest to write the JSON into a separated file descriptor (change made 2 days ago). First probem: apparently, currently, it's not possible to pass a file descriptor from the Linux x86-64 Python to the Emscripten/WASI Python: it fails with OSError: [Errno 8] Bad file descriptor. So I wrote this PR to use a named filename for the JSON file. Second problem: the Emscripten/WASI Python runtime doesn't have a full access to the filesystem, and paths are mapped differently. |
Sorry, something went wrong.
On Emscripten and WASI platforms, or if --python command line option is used, libregrtest now uses a filename for the JSON file. Emscripten and WASI buildbot workers run the main test process with a different Python (Linux) which spawns Emscripten/WASI processes using the command specified in --python command line option. Passing a file descriptor from the parent process to the child process doesn't work in this case. * Add JsonFile and JsonFileType classes * Add RunTests.json_file_use_filename() method. * Add a test in test_regrtest on the --python command line option. * test_regrtest: add parallel=False parameter. * Split long RunWorkers._runtest() function into sub-functions.
| Back | FazBrowse Home | New Git URL |
On Emscripten and WASI platforms, or if --python command line option is used, libregrtest now uses a filename for the JSON file.
Emscripten and WASI buildbot workers run the main test process with a different Python (Linux) which spawns Emscripten/WASI processes using the command specified in --python command line option. Passing a file descriptor from the parent process to the child process doesn't work in this case.