Skip to content
This repository was archived by the owner on Sep 1, 2025. It is now read-only.

Commit 39644df

Browse files
authored
Merge pull request #1111 from rohaquinlop/document-contribution-newcomers
feat(build): #1108 document contributing
2 parents 97ccd84 + ba3b676 commit 39644df

2 files changed

Lines changed: 45 additions & 10 deletions

File tree

docs/src/contributing.md

Lines changed: 44 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@ We accept anything that benefits the community,
1111
thanks for sharing your work with the world.
1212
We can discuss implementation details [here][makes_issues].
1313

14+
### Guidelines
15+
1416
1. Write your idea: [here][makes_issues]
1517
1. Fork [Makes on GitHub][makes]
1618
1. [Git][git]-clone your fork
@@ -19,17 +21,50 @@ We can discuss implementation details [here][makes_issues].
1921
1. [Git][git]-push changes to your fork
2022
1. Create a **Pull Request** from your fork to [Makes][makes]
2123

22-
Guidelines:
24+
#### Testing your local changes
25+
26+
You can run local changes by simply running `m . <job>`.
27+
If you're adding new files, make sure to `git add` them first.
28+
29+
#### Adding documentation
30+
31+
- All changes must be documented in the same PR.
32+
- You can run `m . /docs/dev` to serve the [docs site](https://makes.fluidattacks.com)
33+
on localhost.
34+
- Make sure you lint the documentation with `m . /lintMarkdown/all`.
35+
36+
#### Adding tests
37+
38+
- All new [builtins](https://makes.fluidattacks.com/api/builtins/) must be
39+
tested.
40+
- You can add tests to either `/makes.nix` or `/makes/your-builtin/main.nix`
41+
depending on the nature of the builtin.
42+
- Make sure to add such tests
43+
to the [GitHub Actions pipelines](https://github.com/fluidattacks/makes/tree/main/.github/workflows)
44+
as well.
45+
46+
#### Adding yourself to the mailmap
47+
48+
You must add yourself to the
49+
[.mailmap](https://github.com/fluidattacks/makes/blob/main/.mailmap) file.
50+
Make sure to test it with `m . /lintGitMailMap`.
51+
52+
#### Writing a valid commit message
53+
54+
- Your commit message must follow this [syntax](https://github.com/fluidattacks/makes/tree/main/test/lint-commit-msg).
55+
- You must sign your commits by adding a `Signed-off-by` line at the end of your
56+
commit message.
57+
- You can take a look at other commits [here](https://github.com/fluidattacks/makes/commits/main).
58+
- Make sure to test it with `m . /lintGitCommitMsg`.
59+
60+
#### Other PR rules
61+
62+
A PR must:
2363

24-
- Keep it simple
25-
- Remember we write code for humans, not machines
26-
- Write an argument: `/src/args`
27-
- Write a module (if applies): `/src/evaluator/modules`
28-
- Write docs: `/README.md` or `/docs`
29-
- Write a test: `/makes.nix` or `/makes/**/main.nix`
30-
- Write a test [GitHub workflow][github_workflows]: `/.github/workflows/dev.yml`
64+
- Only be one commit ahead of main.
65+
- Have a title and body equal to its commmit message.
3166

32-
Examples:
67+
#### Examples
3368

3469
- [feat(build): #262 lint git mailmap](https://github.com/fluidattacks/makes/commit/01fcd5790dd54b117da63bcc2480437135da8bb3)
3570
- [feat(build): #232 lint terraform](https://github.com/fluidattacks/makes/commit/081835b563c712b7650dbc5bf1e306d4aff159cf)

test/lint-markdown/config.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
rule 'MD010'
1010
rule 'MD011'
1111
rule 'MD012'
12-
rule 'MD013', :tables => false, :code_blocks => false
12+
rule 'MD013', :tables => false, :ignore_code_blocks => true
1313
rule 'MD018'
1414
rule 'MD019'
1515
rule 'MD020'

0 commit comments

Comments
 (0)