Skip to content

Commit 7eeb144

Browse files
authored
docs: add CONTRIBUTING.md
Resolves #3743. Pull-Request: #4134.
1 parent f335697 commit 7eeb144

File tree

1 file changed

+40
-0
lines changed

1 file changed

+40
-0
lines changed

CONTRIBUTING.md

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
# Contributing Guidelines
2+
3+
[![](https://img.shields.io/badge/made%20by-Protocol%20Labs-blue.svg?style=flat-square)](http://ipn.io)
4+
[![](https://img.shields.io/badge/project-libp2p-blue.svg?style=flat-square)](https://libp2p.io/)
5+
6+
Welcome to the rust-libp2p contribution guide! We appreciate your interest in improving our library.
7+
8+
## Looking for ways to contribute?
9+
10+
There are several ways you can contribute to rust-libp2p:
11+
- Start contributing immediately via the opened [help wanted](https://github.com/libp2p/rust-libp2p/issues?q=is%3Aissue+is%3Aopen+label%3A%22help+wanted%22) or [difficulty:easy](https://github.com/libp2p/rust-libp2p/issues?q=is%3Aissue+is%3Aopen+label%3Adifficulty%3Aeasy) issues on GitHub.
12+
These issues are suitable for newcomers and provide an excellent starting point.
13+
- Reporting issues, bugs, mistakes, or inconsistencies.
14+
As many open source projects, we are short-staffed, we thus kindly ask you to be open to contribute a fix for discovered issues.
15+
16+
### We squash-merge pull Requests
17+
18+
We always squash merge submitted pull requests.
19+
This means that we discourage force pushes, in order to make the diff between pushes easier for us to review.
20+
Squash merging allows us to maintain a clean and organized commit history.
21+
22+
The PR title, which will become the commit message after the squashing process, should follow [conventional commit spec](https://www.conventionalcommits.org/en/v1.0.0/).
23+
24+
### Write changelog entries for user-facing changes
25+
26+
When making user-facing changes, it is important to include corresponding entries in the changelog, providing a comprehensive summary for the users.
27+
For detailed instructions on how to write changelog entries, please refer to the documentation in [`docs/release.md`](https://github.com/libp2p/rust-libp2p/blob/master/docs/release.md).
28+
29+
30+
### Merging of PRs is automated
31+
32+
To streamline our workflow, we utilize Mergify and the "send-it" label.
33+
Mergify automates merging actions and helps us manage pull requests more efficiently.
34+
The "send-it" label indicates that a pull request is ready to be merged.
35+
Please refrain from making further commits after the "send-it" label has been applied otherwise your PR will be dequeued from merging automatically.
36+
37+
### Treat CI as a self-service platform
38+
39+
We have a lot of automated CI checks for common errors.
40+
Please treat our CI as a self-service platform and try to fix any issues before requesting a review.

0 commit comments

Comments
 (0)