Bug Description:
- Student found an error for which
dup2 would complain when redirecting the input and output contents to the current commands stdin and stdout.
Root Cause:
-
Problem was due to use of fs::temporary_directory which started to cause name collisions in the tmp directory between students on the lab machines who use the same command step name.
-
For example, changing generator-interpreter to generator-interpreter-changed-to-no-conflict in the config below resolved problems.
{
"testDir": "./testfiles",
"testedExecutablePaths": {
"kuknur": "../bin/generator"
},
"toolchains": {
"interpreter": [
{
"stepName": "generator-interpreter-changed-to-not-conflict",
"executablePath": "$EXE",
"arguments": [
"$INPUT",
"$OUTPUT"
],
"output": "generator.out"
}
]
}
}
I am going to be refactoring how temporary files are created, named and managed in the process of fixing this bug to reduce the overall complexity.
Bug Description:
dup2would complain when redirecting the input and output contents to the current commandsstdinandstdout.Root Cause:
Problem was due to use of
fs::temporary_directorywhich started to cause name collisions in thetmpdirectory between students on the lab machines who use the same command step name.For example, changing
generator-interpretertogenerator-interpreter-changed-to-no-conflictin the config below resolved problems.{ "testDir": "./testfiles", "testedExecutablePaths": { "kuknur": "../bin/generator" }, "toolchains": { "interpreter": [ { "stepName": "generator-interpreter-changed-to-not-conflict", "executablePath": "$EXE", "arguments": [ "$INPUT", "$OUTPUT" ], "output": "generator.out" } ] } }I am going to be refactoring how temporary files are created, named and managed in the process of fixing this bug to reduce the overall complexity.