Skip to content

Commit 80757f7

Browse files
committed
Create CONTRIBUTING.md, prepare issue and pull request templates
1 parent 6c98d6f commit 80757f7

File tree

6 files changed

+147
-0
lines changed

6 files changed

+147
-0
lines changed

.github/ISSUE_TEMPLATE/bug_report.md

+28
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
---
2+
name: Bug report
3+
about: Create a report to help us improve
4+
title: ''
5+
labels: bug
6+
assignees: ''
7+
8+
---
9+
10+
**What version of Zserio and what language are you using?**
11+
Zserio: 2.12.0
12+
Language: C++/Java/Python
13+
14+
**Describe the bug**
15+
A clear and concise description of what the bug is.
16+
17+
**To Reproduce**
18+
Steps to reproduce the behavior:
19+
* Schema (minimum working example)
20+
* Zserio command line options (e.g. -withTypeInfoCode)
21+
* Sample code (*.cpp / *.java / *.py)
22+
* Error
23+
24+
**Expected behavior**
25+
A clear and concise description of what you expected to happen.
26+
27+
**Additional context:**
28+
Provide relevant information about your OS, used Java version, Python version and/or C++ compiler version.

.github/ISSUE_TEMPLATE/config.yml

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
blank_issues_enabled: true
2+
contact_links:
3+
- name: Question
4+
url: https://github.com/ndsev/zserio/discussions/new?category=q-a
5+
about: Ask questions here.
+20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
---
2+
name: Feature request
3+
about: Suggest an idea for this project
4+
title: ''
5+
labels: enhancement
6+
assignees: ''
7+
8+
---
9+
10+
**Is your feature request related to a problem? Please describe.**
11+
A clear and concise description of what the problem is.
12+
13+
**Describe the solution you'd like**
14+
A clear and concise description of what you want to happen.
15+
16+
**Describe alternatives you've considered**
17+
A clear and concise description of any alternative solutions or features you've considered.
18+
19+
**Additional context**
20+
Add any other context or screenshots about the feature request here.

.github/pull_request_template.md

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
**Please check [contribution guide](https://github.com/ndsev/zserio/CONTRIBUTING.md) first.**
2+
3+
# Description
4+
5+
Include a summary of the change and which issue is fixed.
6+
7+
# Type of Change
8+
9+
* [ ] Bug fix
10+
* [ ] New feature
11+
* [ ] Documentation enhancement

CONTRIBUTING.md

+76
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
# Contributing to Zserio
2+
3+
The following summarizes the process for contributing changes to the Zserio project.
4+
5+
## Where to start
6+
7+
* [Zserio Build Instructions](doc/ZserioBuildInstructions.md).
8+
9+
## General rules for any code contribution
10+
11+
* Consider to open a [discussion](https://github.com/ndsev/zserio/discussions/new/choose)
12+
or create an [issue](https://github.com/ndsev/zserio/issues/new/choose).
13+
14+
* Open a new GitHub pull request.
15+
16+
* Follow our coding style.
17+
18+
* For all C++ and Java code we use **clang-format** to check that the code follow the defined
19+
[coding style](.clang-format).
20+
21+
> Note that you have to run `clang-format` on your own, our pipeline only checks that the code follows
22+
the rules.
23+
24+
* Python code is not yet automatically checked, please try use the same coding style as is used in our
25+
[Python runtime library](https://github.com/ndsev/zserio/tree/master/compiler/extensions/python/runtime/src/zserio)
26+
(in general we follow the [PEP-8](https://www.python.org/dev/peps/pep-0008/)).
27+
28+
* Ensure that all GitHub [workflows](https://github.com/ndsev/zserio/actions) are passing.
29+
30+
* Wait for the review by [@Mi-La](https://github.com/Mi-La) or [@mikir](https://github.com/mikir).
31+
32+
> Please try to address only a single problem in you pull request.
33+
34+
## Did you find a bug?
35+
36+
* Ensure that the bug was not already reported in some [issue](https://github.com/ndsev/zserio/issues).
37+
38+
* If there is no open issue addressing the problem,
39+
[open a new one](https://github.com/ndsev/zserio/issues/new?assignees=&labels=bug&projects=&template=bug_report.md&title=).
40+
41+
* Follow [General rules for any code contribution](#general-rules-for-any-code-contribution).
42+
43+
## Do you want to propose a performance optimization?
44+
45+
* Consider to open a [discussion](https://github.com/ndsev/zserio/discussions/new/choose)
46+
or create an [issue](https://github.com/ndsev/zserio/issues/new/choose).
47+
48+
* Run our [benchmarks](https://github.com/ndsev/zserio/tree/master/benchmarks) and provide comparison with the latest zserio release
49+
in your Pull Request.
50+
51+
* Feel free to provide any other measurements.
52+
53+
* Follow [General rules for any code contribution](#general-rules-for-any-code-contribution).
54+
55+
## Do you want to propose a new feature?
56+
57+
* Consider to open a [discussion](https://github.com/ndsev/zserio/discussions/new?category=ideas) or create an
58+
[issue](https://github.com/ndsev/zserio/issues/new?assignees=&labels=&projects=&template=feature_request.md&title=).
59+
60+
* The proposed changes must not break
61+
[backward compatibility](doc/ZserioCompatibilityGuide.md#schema-language-compatibility).
62+
63+
## Do you intend to write a new generator?
64+
65+
* Consider to open a [discussion](https://github.com/ndsev/zserio/discussions/new?category=ideas) or create an
66+
[issue](https://github.com/ndsev/zserio/issues/new?assignees=&labels=&projects=&template=feature_request.md&title=).
67+
68+
* In case you want to implement a new generator (i.e. zserio extension), you can start with
69+
[Zserio Extension Sample](https://github.com/ndsev/zserio-extension-sample)
70+
and keep it as an external extension. We will be happy to add a link to your extension in our [README.md](README.md)!
71+
72+
## License
73+
74+
We do not require any formal copyright assignment or contributor license agreement (CLA).
75+
Any contributions intentionally sent upstream are presumed to be offered under terms of BSD 3-Clause License.
76+
See [LICENSE](https://github.com/ndsev/zserio/LICENSE) for details.

README.md

+7
Original file line numberDiff line numberDiff line change
@@ -182,3 +182,10 @@ by Zserio. However, Zserio provides sample implementations of several Pub/Sub ba
182182
Note that Zserio doesn't provide any Pub/Sub server. There are various implementations of servers
183183
(e.g. [mosquitto](https://github.com/eclipse/mosquitto)) and it's the responsibility of the user's Pub/Sub
184184
client implementation to communicate with the appropriate server.
185+
186+
## Contributions
187+
188+
Contributions are very welcome but we encourage to open a
189+
[discussion](https://github.com/ndsev/zserio/discussions/new/choose) or
190+
an [issue](https://github.com/ndsev/zserio/issues/new) first to agree on a solution or to avoid useless work
191+
in case we are already solving a similar problem. Please see [Contribution Guide](CONTRIBUTING.md).

0 commit comments

Comments
 (0)