summaryrefslogtreecommitdiffstatshomepage
path: root/test
diff options
context:
space:
mode:
authorManlio Perillo <manlio.perillo@gmail.com>2023-04-06 12:47:08 +0200
committerManlio Perillo <manlio.perillo@gmail.com>2023-04-07 11:36:26 +0200
commit59e28987dab53acfb268d30e5f19f02aa20bd70d (patch)
tree65c81f7b025d22c919e40b33e0a9f45eca32d9b5 /test
parent75a1600626b3352b516c0dc3b42380f5ab0db025 (diff)
build: restore the exercise chain
The new parallel build support in Zig broke the exercise chain, so that each esercise check is no longer strictly serialized. 1. Add the Dexno option, in order to isolate the chain starting from a named exercise from the normal chain, thus simplify the code. The current code have an additional issue: it added 4 x n steps, making reading the help message or the list of steps very hard. Add only the `install`, `uninstall`, `zigling`, `test` and `start` steps. The last three steps match the old steps `n`, `n_test` and `n_start`. The default step is zigling (note the singular form). The `install` step override the builtin install step, showing a custom description and matches the old `n_install` step. The uninstall step was added for consistency, so that the description is consistent. Setup a new chain starting at `zig build -Dexno=n start` so that it is stricly serialized. The behavior should be the same as the old one. 2. Handle the code for all the exercises separately. Add only the `ziglings step`, making it the default step, in addition to the install and uninstall steps. Setup a new chain starting at the first exercise, to that it is strictly serialized. The behavior should be the same as the old one. The current code has a know issue: the messages from the ZiglingStep and the ones from the compiler compilation progress are interleaved, but each message is written atomically, due to the use of `std.debug.getStderrMutex()`. Update the README.md file. Closes #202
Diffstat (limited to 'test')
0 files changed, 0 insertions, 0 deletions