Skip to content

Commit 237147c

Browse files
committed
added contribution guidelines
1 parent 0bf0fc6 commit 237147c

1 file changed

Lines changed: 35 additions & 1 deletion

File tree

CONTRIBUTING.md

Lines changed: 35 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,35 @@
1-
Please refer to our wiki on how to contribute to Phasar.
1+
# Contributing to PhASAR
2+
3+
Thank you for your interest in contributing to PhASAR. There are many ways to
4+
contribute, and we appreciate all contributions.
5+
6+
### Bug Reports
7+
If you are working with PhASAR and run into a bug, we most certainly wish to know about it. Please let us know and create a bug report in form of an [issue on Github](https://github.com/secure-software-engineering/phasar/issues/new). Please provide information on your system such as OS (version), compiler (version), etc. If possible, also provide any resource(s) necessary, e.g. LLVM IR files, to reproduce the bug.
8+
9+
### Bug Fixes
10+
If you are interested in contributing code to PhASAR, bugs labeled with the 'bug' and 'good first issue' keywords are a good way to get familiar with the code base. If you are interested in fixing a bug, please assign the bug to yourself such that people know you are working on it.
11+
12+
For each bug that you detect and fix please also provide (a) unit test(s) to ensure that it is gone once and for all.
13+
14+
### Bigger Pieces of Work
15+
In case you are interested in taking on bigger pieces of work, you can also find them labeled as 'extensive' among the other issues. Please recall that we have a [PhASAR Slack channel](https://phasar.slack.com/) in which you can discuss solution candidates and design ideas, and get help from other PhASARists. Drop us an email info@phasar.org to be added to the slack channel.
16+
17+
## How to Submit a Patch
18+
Once you have a patch ready, it is time to submit it. The patch should:
19+
20+
* include (a) small unit test(s)
21+
* conform to our coding standards (which are under development ;-). You can use the `pre-commit` script to automatically format your patch properly.
22+
* not contain any unrelated changes
23+
* be an isolated change. Independent changes should be submitted as separate patches for easier reviews.
24+
25+
To get a patch accepted, create a pull request and await its review by the PhASAR community. To make sure the right people see you patch, please select suitable reviewers and add them to your patch when requesting a review.
26+
27+
A reviewer may request changes or ask questions during the review. If you are unsure about your patch, feel free to ask for guidance on Slack. This cycle continues until all requests and comments have been addressed and a reviewer accepts the patch. Then, the change can be committed.
28+
Please remember that you are asking for valuable time from other professional developers.
29+
30+
## Please Help Us to Improve Phasar
31+
If you are using PhASAR without the wish or expertise to contribute to its code base, you can still help us by providing valuable feedback using this [web from](https://docs.google.com/forms/d/e/1FAIpQLScUXZcdXZe1rY8VxUKjXhTtrsNX5TysNUO4yD8-gaIHiqqWTQ/viewform). Please also refer to [Contributing to PhASAR](https://github.com/secure-software-engineering/phasar/wiki/Contributing-to-PhASAR).
32+
33+
Thanks for contributing to the PhASAR project.
34+
35+
`std::cout << "Thank you!\n";`

0 commit comments

Comments
 (0)