Manlio Perillo
423cb5057e
build: rename the Exercise.C field to link_libc
...
The name "C" does not follow the naming conventions for container
fields.
2023-05-01 18:39:54 +02:00
Manlio Perillo
0b0523014a
build: reduce code duplication when setting the work path
...
Currently, the code for defining the path to the exercises directory is
duplicate 4 times.
Add the constants `healed_path` and `work_path`, and use work_path
instead of the duplicated if expression. Update ZiglingStep to take
`work_path` instead of `use_healed` as argument.
Reduce code length by using `join` instead of `std.fs.path.join` and
replace the use of a slice with a tuple.
Additionally, in case of an error from the `join` function, use @panic
instead of unreachable.
Document why the special branch, when the exercises are healed by the
eowyn script, has been disabled.
2023-05-01 18:39:54 +02:00
Manlio Perillo
b864078920
build: remove the Exercise.async field
...
The stage1 C++ compiler is gone forever.
Remove the custom support and documentation for the old stage1 compiler
in build.zig and README.md.
2023-05-01 18:39:54 +02:00
Manlio Perillo
40240a100e
build: move exercises at the end of the file
...
The exercises slice takes about 460 lines, making it hard to read the
source code of build.zig.
Closes #225
2023-05-01 18:39:42 +02:00
Dave Gauer
53544f1ce5
Added Ex. 100 fourth for (as foretold in #261 )
2023-04-30 21:23:54 -04:00
Dave Gauer
1c3860e236
Oops, capitalization in ex016.
2023-04-30 17:12:35 -04:00
Dave Gauer
81f6539c05
Renamed 095 to "for3" to match feature sequence
...
So 100 will be the next in line.
2023-04-30 17:11:37 -04:00
Dave Gauer
c5906ac4fa
Updating 095 patch to match, natch!
2023-04-30 16:45:57 -04:00
Dave Gauer
c5d813d1a8
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
55415bf68d
Merge pull request #269 from perillo/fix-windows-deadlock
...
Fix deadlock on Windows
2023-04-29 22:49:07 +02:00
Manlio Perillo
2f174bb0ba
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
d2e2cc08f5
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
5431b5b224
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
4e0a946edd
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
8c856d5a2e
Update README.md
2023-04-29 12:48:22 +00:00
Chris Boesch
020cdf1e74
Merge pull request #268 from chrboesch/main
...
Switched back to bash on Windows
2023-04-28 16:20:54 +00:00
Chris Boesch
3dd8e63bdc
switched back to bash on windows
2023-04-28 15:41:10 +00:00
Chris Boesch
25bc7f95db
switched back to bash on windows
2023-04-28 15:40:46 +00:00
Chris Boesch
5853aeaf21
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
eaf391a867
Split Windows with PowerShell
2023-04-28 11:29:18 +00:00
Chris Boesch
c168c5f9cd
Update ci.yml
2023-04-28 11:20:54 +00:00
Chris Boesch
993d86f2cd
Update ci.yml
2023-04-28 11:17:57 +00:00
Chris Boesch
4754e758d3
Update ci.yml
2023-04-28 11:14:43 +00:00
Chris Boesch
ec9c04f055
Update ci.yml
2023-04-28 11:10:37 +00:00
Chris Boesch
8cfe5a2858
split in windows and uses PowerShell
2023-04-28 11:03:24 +00:00
Chris Boesch
c3d68a0607
step eowyn ranamed
2023-04-26 20:01:50 +02:00
Chris Boesch
8bcd081140
fixed error time-out minutes
2023-04-26 19:47:35 +02:00
Chris Boesch
0f7b996a69
step names addes and switched to checkout v3
2023-04-26 19:40:16 +02:00
Chris Boesch
fda6f08201
step names added and switched to checkout v3
2023-04-26 19:36:58 +02:00
Chris Boesch
907c173a2f
fixed fail-fast error
2023-04-26 11:44:49 +02:00
Chris Boesch
3761b398fb
strategy error fixed
2023-04-26 11:37:31 +02:00
Chris Boesch
4ca5d96a0e
timeout error fixed
2023-04-26 11:35:19 +02:00
Chris Boesch
aea9feb2fb
Merge pull request #259 from perillo/improve-github-workflows
...
workflows: improve the jobs configuration
2023-04-26 09:13:53 +00:00
Chris Boesch
43651a1aa6
back to checkout@2
2023-04-26 11:13:19 +02:00
Chris Boesch
11faa218a3
back to checkout@v2
2023-04-26 11:05:21 +02:00
Manlio Perillo
537b8167ad
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
f9ebe0675b
Merge pull request #254 from chrboesch/tools
...
Replacing Python-Tools with Zig-Tools
2023-04-25 21:46:12 +00:00
Chris Boesch
beeaa7adb5
Merge pull request #258 from chrboesch/eowyn
...
Version number added.
2023-04-25 21:37:55 +00:00
Chris Boesch
c659ac077f
Version number added.
2023-04-25 23:34:56 +02:00
Chris Boesch
bd6054f3f3
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
a7d42a4f57
Added a loop for the formatting test, so we can see where errors happen.
2023-04-25 23:21:01 +02:00
Chris Boesch
d29d12273b
replaced update-patches.py with update-patches.zig
2023-04-25 21:35:18 +02:00
Chris Boesch
badf1981cd
Merge pull request #255 from perillo/improve-ci-more
...
Improve ci more
2023-04-25 18:32:48 +00:00
Chris Boesch
00104c763b
Merge pull request #256 from perillo/improve-more-2
...
More improvements
2023-04-25 18:31:12 +00:00
Chris Boesch
353498d4d8
Python isn't necessary
2023-04-25 20:23:27 +02:00
Manlio Perillo
dd08ac23bf
.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
266ed84082
.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
33ba83036f
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
67ecf9a6af
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
e13a450706
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