Skip to content

Commit 1ea6180

Browse files
authored
Merge pull request #408 from 01mf02/contributing
Add contribution guidelines
2 parents 42b4418 + eb45b50 commit 1ea6180

File tree

2 files changed

+53
-0
lines changed

2 files changed

+53
-0
lines changed

.github/pull_request_template.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
Describe your changes here
2+
3+
### Checklist
4+
5+
- [ ] I have read the [contribution guidelines](../CONTRIBUTING.md).

CONTRIBUTING.md

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
# Contribution guidelines
2+
3+
Any contribution must preserve
4+
quality,
5+
maintainability, and
6+
usability of this project.
7+
8+
To ensure this, you must:
9+
10+
- Write a good description:
11+
Provide your personal motivation for changes you propose.
12+
Your description should aim to be like the documentation:
13+
comprehensible, concise, and complete.
14+
- Respect the values:
15+
Changes must adhere to the goals set out in the README, i.e. they must preserve
16+
correctness, performance, and simplicity of the code.
17+
- Keep it minimal:
18+
Changes must be minimal to allow others to verify them in reasonable time.
19+
The likelihood of a contribution being accepted is inversely proportional to its size.
20+
- Take your time:
21+
Achieving high quality takes time.
22+
As a rough guideline,
23+
writing new content takes me about 10 to 100 times longer than reading it.
24+
The ratio for your changes should be roughly in the same order of magnitude.
25+
- Document: Document user-observable changes in `docs/`.
26+
- Test:
27+
Add unit or shell tests to the documentation if they might interest users.
28+
Include more exotic tests in the test suites of the respective crates.
29+
- Benchmark:
30+
Benchmark performance-critical changes and provide
31+
results as well as instructions how to reproduce them.
32+
33+
You must not:
34+
35+
- Duplicate code:
36+
Code duplication is a serious problem for long-term project maintenance.
37+
Use existing project infrastructure wherever possible, and do not copy-paste.
38+
- Add dependencies:
39+
Dependencies take effort to maintain, in particular to validate and to update.
40+
Therefore, new dependencies may only be added in exceptional cases.
41+
All dependencies must be compatible with the spirit of this project and
42+
add significant value to it.
43+
- Include machine-generated content:
44+
All contributed content, such as description, code, and documentation,
45+
must be human-written by the contributor, to ensure its quality.
46+
47+
Thank you for respecting these guidelines!
48+
I am looking forward to your contributions.

0 commit comments

Comments
 (0)