Commit graph

614 commits

Author SHA1 Message Date
Dave Gauer
fd10ff8bb3 Updating 095 patch to match, natch! 2023-04-30 16:45:57 -04:00
Dave Gauer
e9e6be4e05 Updating wording in 'for' exercises
This is in preparation for another dive into 'for'
in an upcoming Exercise 100.

Also reformatted 095 for 65 columns and some wording.
2023-04-30 16:23:35 -04:00
Chris Boesch
6b48914d7a Merge pull request #269 from perillo/fix-windows-deadlock
Fix deadlock on Windows
2023-04-29 22:49:07 +02:00
Manlio Perillo
0dc6b45770 eowyn.sh: remove checking formatting one file at a time
This avoids unnecessary output.
Also remove the comment, since the message to stdout makes it
unnecessary.
2023-04-29 16:59:33 +02:00
Manlio Perillo
11d2279f4f test: make the patch command silent
The POSIX standard says that the patch command should not use stdout,
but GNU patch writes the message:
patching file patches/healed/xxx.zig (read from exercises/xxx.zig).

Add the -s flag to suppress these messages.

Note that the heal function from test/tests.zig is called when running
`zig build -Dhealed` because it is executed in the configure phase.
2023-04-29 16:50:28 +02:00
Manlio Perillo
4b1e292ae4 test: fix deadlock on windows when running tests
The deadlock was caused by setting stdout behavior to ignore, when
spawning the patch command.  When the patch command writes to devnull it
causes some errors and a deadlock.

The cause of the bug is probably Zig using `\Device\Null` from `ntdll`
while git-bash uses `NUL` from `kernel32`.
2023-04-29 16:25:58 +02:00
Manlio Perillo
93e8b5710c workflows: remove the custom windows only jobs
Restore the job matrix to run on linux, macos and windows.

Remove lines with extra whitespace.

Improve the documentation of the Eowyn workflow.

Remove the single quoting of the workflow names.
2023-04-29 16:22:52 +02:00
Chris Boesch
edeca97370 Update README.md 2023-04-29 12:48:22 +00:00
Chris Boesch
ac25e91f81 Merge pull request #268 from chrboesch/main
Switched back to bash on Windows
2023-04-28 16:20:54 +00:00
Chris Boesch
3dacb04452 switched back to bash on windows 2023-04-28 15:41:10 +00:00
Chris Boesch
6920dbebcd switched back to bash on windows 2023-04-28 15:40:46 +00:00
Chris Boesch
7ae8c2a827 Merge pull request #267 from chrboesch/main
Split github actions into 'Windows' and 'Linux/Mac' for using PowerShell on Windows
2023-04-28 11:38:58 +00:00
Chris Boesch
83fa3de220 Split Windows with PowerShell 2023-04-28 11:29:18 +00:00
Chris Boesch
7cfdc2b126 Update ci.yml 2023-04-28 11:20:54 +00:00
Chris Boesch
c74c542372 Update ci.yml 2023-04-28 11:17:57 +00:00
Chris Boesch
b903edd290 Update ci.yml 2023-04-28 11:14:43 +00:00
Chris Boesch
0302650acf Update ci.yml 2023-04-28 11:10:37 +00:00
Chris Boesch
dcd16044f4 split in windows and uses PowerShell 2023-04-28 11:03:24 +00:00
Chris Boesch
f83fe12dce step eowyn ranamed 2023-04-26 20:01:50 +02:00
Chris Boesch
39eaea027d fixed error time-out minutes 2023-04-26 19:47:35 +02:00
Chris Boesch
df52b7be61 step names addes and switched to checkout v3 2023-04-26 19:40:16 +02:00
Chris Boesch
cf3343e6df step names added and switched to checkout v3 2023-04-26 19:36:58 +02:00
Chris Boesch
6675fad34d fixed fail-fast error 2023-04-26 11:44:49 +02:00
Chris Boesch
d6c5d3e510 strategy error fixed 2023-04-26 11:37:31 +02:00
Chris Boesch
4fee940778 timeout error fixed 2023-04-26 11:35:19 +02:00
Chris Boesch
a703faa8e4 Merge pull request #259 from perillo/improve-github-workflows
workflows: improve the jobs configuration
2023-04-26 09:13:53 +00:00
Chris Boesch
65f3672ca5 back to checkout@2 2023-04-26 11:13:19 +02:00
Chris Boesch
f7e49d8c34 back to checkout@v2 2023-04-26 11:05:21 +02:00
Manlio Perillo
fa335d4166 workflows: improve the jobs configuration
Reduce the timeout to 30 minutes for all the jobs, since it is enough.

Set strategy.fail-fast to false, so that we can see the full logs.
2023-04-26 10:55:36 +02:00
Chris Boesch
232002f30f Merge pull request #254 from chrboesch/tools
Replacing Python-Tools with Zig-Tools
2023-04-25 21:46:12 +00:00
Chris Boesch
fa28aedfe1 Merge pull request #258 from chrboesch/eowyn
Version number added.
2023-04-25 21:37:55 +00:00
Chris Boesch
f69cfc3b88 Version number added. 2023-04-25 23:34:56 +02:00
Chris Boesch
cbf265ab98 Merge pull request #257 from chrboesch/eowyn
Added a loop for the formatting test, so we can see where errors happen.
2023-04-25 21:23:02 +00:00
Chris Boesch
0ac3646e9c Added a loop for the formatting test, so we can see where errors happen. 2023-04-25 23:21:01 +02:00
Chris Boesch
213d0712a5 replaced update-patches.py with update-patches.zig 2023-04-25 21:35:18 +02:00
Chris Boesch
c43ade9677 Merge pull request #255 from perillo/improve-ci-more
Improve ci more
2023-04-25 18:32:48 +00:00
Chris Boesch
58e28761be Merge pull request #256 from perillo/improve-more-2
More improvements
2023-04-25 18:31:12 +00:00
Chris Boesch
7470c29475 Python isn't necessary 2023-04-25 20:23:27 +02:00
Manlio Perillo
cac7391247 .gitattributes: remove support for old files, add python
Remove support for old .h, .cpp and .bat files.

Set eol mode to lf for Python scripts.

Closes #252
2023-04-25 16:13:59 +02:00
Manlio Perillo
9273fe2dd8 .gitignore: add zig-out, remove vim backup and swap files
Add the zig-out directory, since the install step is available.

Remove the vim backup and swap files, since it is possible to configure
vim to use a custom directory.

Ensure all the directories are anchored to the root directory.

Closes #251
2023-04-25 16:13:38 +02:00
Manlio Perillo
6effa7fe84 workflow: add a test job to ci.yml
Add a job to run the ziglings unit tests, using `zig build test`.
2023-04-25 15:35:42 +02:00
Manlio Perillo
b5036b776a workflows: use actions/checkout@v3
Use the new version of actions/checkout, since all Github Actions will
begin running on Node16 instead of Node12.

See https://github.blog/changelog/2022-09-22-github-actions-all-actions-will-begin-running-on-node16-instead-of-node12/.
2023-04-25 15:13:38 +02:00
Manlio Perillo
49e7c51f9a Fix formatting in exercise 99
The non-conforming formatting was not detected by the eowyn.sh script,
due to a bug.
2023-04-25 14:56:07 +02:00
Manlio Perillo
fd6f3eebbb eowyn.sh: set the -e option
Currently, `zig fmt` exit status is ignored, making it useless.
Ensure that the script terminates early if there is an error.

Print a message to stdout before executing `zig fmt`, in order to make
the possible error more visible.
2023-04-25 14:52:05 +02:00
Manlio Perillo
4b58de26d3 eowyn: always quote variables
Quote all the variables, even though we know that it is safe.

Fix coding style.
2023-04-25 12:58:46 +02:00
Chris Boesch
cffbbff8bd replaced check-exercises.pu with check-exercises.zig 2023-04-25 12:13:58 +02:00
Chris Boesch
752efd891d Merge pull request #250 from perillo/improve-test-coverage-2
Improve test coverage
2023-04-24 15:56:51 +00:00
Chris Boesch
64d90c3397 timeout to 60 minutes 2023-04-24 17:43:55 +02:00
Manlio Perillo
4f690b074a test: add a test for zig build -Dn=1
Add a test for `zig build -Dn=1` in order to test that a broken exercise
will print an hint.
2023-04-24 13:03:52 +02:00
Manlio Perillo
5b2e842157 test: change the order of zig build options
In test case 1 and 2, move the -Dhealed option before the -Dn option,
for consistency.

Fix a typo in cmd.setName in test case 1 and 2.

Remove a confusing comment in test case 1.
2023-04-24 12:19:00 +02:00