aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/build.zig
AgeCommit message (Collapse)Author
2024-04-03Zig version changedChris Boesch
2024-03-31Fix breaking zig change to @fieldParentPtr parameterskamidev
See https://github.com/ziglang/zig/pull/19470
2024-03-27106 & 107Alan CHUNG
2024-03-26106_files.zig actual testAlan CHUNG
2024-03-25modified build.zigAlan CHUNG
2024-03-23Added second threading exercise.Chris Boesch
2024-03-22Fixed the renaming of std.os to std.posixChris Boesch
2024-03-15Changes for a new Zig version.Chris Boesch
2024-03-14fix exercise 82 outputdolichomps
zig commit bd24e66 changed the floating point formatting implementation so output for exercise 82 no longer matched
2024-03-05Added threading exerciseChris Boesch
2024-02-16Zig version adjusted.Chris Boesch
2024-02-06Fix zig_exe location in Build structAlexander Saltanov
Reflect Zig breaking changes as of https://github.com/ziglang/zig/commit/105db13536b4dc2affe130cb8d2eee6c97c89bcd
2024-01-05Bump version to match required changes.drglove
2023-11-21fixed variable declaration by changing it to a const, since it's never mutatedZev Averbach
2023-11-07Changed three dots to colons, see #23Chris Boesch
2023-11-06Change the task so that the exercise contains two errors again.Chris Boesch
2023-10-24fixed build: renamed exec to runChris Boesch
2023-10-06changed compat check to comptimeChris Boesch
2023-07-25fix: main entry point is broken with version 0.11.0-dev.4228Nicolas Chataing
2023-06-26Revised exercises due to the changes of Zig version 0.11.0-dev.3853Chris Boesch
2023-06-26First tokenization exerice.Chris Boesch
2023-05-30Changed error text to bold.Chris Boesch
2023-05-30Merge pull request #308 from perillo/refactor-zigling-step-moreChris Boesch
Refactor ZiglingStep more
2023-05-25change std.debug.TTY to std.io.ttypseudoc
Zig commit: 0f6fa3f20b3b28958921bd63a9a9d96468455e9c std: Move std.debug.{TTY.Config,detectTTYConfig} to std.io.tty Also get rid of the TTY wrapper struct, which was exlusively used as a namespace - this is done by the tty.zig root struct now. detectTTYConfig has been renamed to just detectConfig, which is enough given the new namespace. Additionally, a doc comment had been added.
2023-05-22build: use the old color styleManlio Perillo
In the `Zigling.printError` method, use a bold red color for the "error:" string and a dim red color for the error message. In the `Zigling.check_output` method, use the old color style.
2023-05-20build: in `ZiglingStep.check_output` panic in case of OOMManlio Perillo
This is necessary since, when trimLines returns `std.mem.Allocator.Error`, no error message will be displayed to the user. An alternative is to use `std.Build.Step.fail`, but using @panic("OOM") is simpler and consistent with existing code.
2023-05-19build: use `std.Build.Step.fail` to report errorsManlio Perillo
Have all error messages handled in a single place (printError), by using the `std.Build.Step.fail` method. Ensure that the first letter in the error message is lower case and remove coloring, since it is done in the `ZiglingStep.printError` method. Additionally, in the `ZiglingStep.check_test` method, remove trailing whitespace from stderr.
2023-05-19build: remove `ZiglingStep.eval`Manlio Perillo
Remove the `ZiglingStep.eval` method and the src/ipc.zig source code. Use `Step.evalZigProcess`, instead. This greatly simplifies the code. Print the error messages and error bundle in `ZiglingStep.make`, both in case of error and success. Additionally, remove the `ZiglingStep.is_testing` field, since it is no longer necessary.
2023-05-15Refactor testing supportManlio Perillo
Following the implementation in `std.Build.Step.Compile, add the Kind type to differentiate between a normal executable and a test executable running zig tests. Replace `Exercise.run_test` field with `kind`. Compile the exercise in both the exe and test cases, reducing code duplication. Add the `check_output` and `check_test` methods in ZiglingStep, in order to differentiate the code checking a normal executable and a test executable. Update the tests to correctly check both the exe and test cases. Remove the temporary code added in commit 832772c.
2023-05-15Added testing exercise.Chris Boesch
2023-05-14build: remove extra comment for named modeManlio Perillo
It was added in commit 879eeb6 (Execution of test exercises added.).
2023-05-14build: remove the install and uninstall stepsManlio Perillo
They are no longer used.
2023-05-14build: improve the help message in ZiglingStepManlio Perillo
Add the Mode enum, so that ZiglingStep can detect if it was called in normal mode or in named mode. Update the help method to print the correct message based on the current build mode.
2023-05-14build: remove unused declarationsManlio Perillo
Remove the `Exercise.addExecutable` method and the `SkipStep` struct, since they are no longer used.
2023-05-14build: show the logo in named modeManlio Perillo
When running `zig build -Dn=n`, ensure that the logo is printed. Update the tests. Closes #214
2023-05-14build: simplify the named build modeManlio Perillo
Remove the following steps, since they are rarely (if never) used and only increase the complexity of the `build.zig` file: - install step (zig build -Dn=n install) - test step (zig build -Dn=n test) - start step (zig build -Dn=n start) The only remaining step is the default zigling step (zig build -Dn=n), where the user can choose the exercise to solve. Update the tests. Additionally, update CheckNamedStep and CheckStep so that they can share the same functions. Closes #299
2023-05-14build: remove the install step in the normal build modeManlio Perillo
Removing the install step will simplify the current code. Copying the exercise executable to the zig-out directory can be done in `ZiglingStep. Closes #298
2023-05-14build: remove the special eowyn build modeManlio Perillo
The special eowyn mode was added in order to improve the performance of the Eowyn Github workflow. Remove it, since it adds unnecessary complexity to the `build.zig` file. Closes #297
2023-05-13Execution of test exercises added.Chris Boesch
2023-05-13Merge branch 'ratfactor:main' into testingChris Boesch
2023-05-09Restore unit testsManlio Perillo
Commit dbd42bb (Cleaning up zig build output) broke the unit test. Always use exit code 2, instead of 0. This is the exit code used by the build runner to notify the compiler to not report any further diagnostics. Move the Ziglings logo from the `build` function scope to the global scope, and make it public so that tests.zig can use it to find the number of lines to skip, instead of using an hard coded value. Fixes #295
2023-05-09build: make literal paths portableManlio Perillo
Use fs.path.sep_str instead of a slash, in literal paths.
2023-05-09build: improve code formattingManlio Perillo
Avoid too long lines or too many line breaks.
2023-05-09build: add the dumpArgs functionManlio Perillo
Use it in Zigling.compile, in order to reduce code duplication.
2023-05-09build: fix doc-commentsManlio Perillo
Some functions and custom build steps incorrectly used a normal comment. Use a doc-comment instead. Additionally, use a present tense verb to describe the action of a function or custom build step.
2023-05-09build: use the blank identifier in the parameter listManlio Perillo
Instead of marking a parameter as unused inside the function body.
2023-05-09build: use self when using @fieldParentPtrManlio Perillo
Update PrintStep and SkipStep to use the `self` variable when getting the parent pointer from Step. This convention is used in `std.Build`.
2023-05-09build: don't install skipped exercisesManlio Perillo
Update the code in `zig build install` and `zig build -Dn=n install`, so that exercises that must be skipped are not installed, since it will cause an error. Ensure that a skip message is printed.
2023-05-09build: fix `zig build -Dhealed install`Manlio Perillo
The command fails because the path to the exercises directory was incorrectly set to "exercises" instead of `work_path`. The bug was introduced in commit b56bb7b (build: enable full parallelism when -Dhealed is set). Remove the comment about not using multi-object loop, since it is confusing.
2023-05-09Merge branch 'ratfactor:main' into testingChris Boesch