summaryrefslogtreecommitdiff
path: root/CONTRIBUTING.md
diff options
context:
space:
mode:
authorChris Boesch <48591413+chrboesch@users.noreply.github.com>2025-08-24 16:23:51 +0200
committerChris Boesch <48591413+chrboesch@users.noreply.github.com>2025-08-24 16:23:51 +0200
commitc36fe8007da6822d854dd5454460431c0b646cd8 (patch)
tree2199a0680c1a929bfe80ef57078f6ab6c8808959 /CONTRIBUTING.md
parent74887276254c9557b24286eb452ea534e7ebb65a (diff)
Added instructions for patch files
Diffstat (limited to 'CONTRIBUTING.md')
-rw-r--r--CONTRIBUTING.md22
1 files changed, 22 insertions, 0 deletions
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 8d9d6b9..243de09 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -51,6 +51,7 @@ downloads page.
If you run into an error in Ziglings caused by breaking changes
in the latest development build of Zig, that's a new bug in
Ziglings. Please file an issue...or make a pull request!
+For the latter, also read "The Secrets” section.
## Formatting
@@ -89,3 +90,24 @@ contribution for any other purpose.
If you want to peek at the secrets, take a look at the `patches/`
directory.
+
+Every Ziglings exercise contains mistakes on purpose.
+To keep our automated tests happy, each exercise also
+has a patch in `patches/healed` that “heals” it.
+
+When you change an exercise, you’ll usually need to update
+its patch too. That’s where our little helper Gollum comes in:
+
+ 1. In the project root, create a folder called answers/.
+ 2. Put your solved version of the exercise file in there.
+ 3. Back in the root, run:
+ `./patches/gollum <exercise-number>`
+ For example: ./patches/gollum 106
+ This will generate a shiny new patch.
+
+Double-check everything by asking the magical Eowyn:
+ `./patches/eowyn`
+
+If all tests pass: 🎉 You’re done!
+Don’t forget to commit the patch file.
+