mirror of
https://github.com/fluencelabs/libp2p-ts
synced 2025-03-15 01:30:50 +00:00
46 lines
2.4 KiB
Markdown
46 lines
2.4 KiB
Markdown
|
# Contributing
|
||
|
|
||
|
## What?
|
||
|
|
||
|
Individuals making significant and valuable contributions are given commit-access to a project to contribute as they see fit.
|
||
|
A project is more like an open wiki than a standard guarded open source project.
|
||
|
|
||
|
## Rules
|
||
|
|
||
|
There are a few basic ground-rules for contributors (including the maintainer(s) of the project):
|
||
|
|
||
|
1. **No `--force` pushes** or modifying the Git history in any way. If you need to rebase, ensure you do it in your own repo.
|
||
|
2. **Non-master branches**, prefixed with a short name moniker (e.g. `<initials>-<feature>`) must be used for ongoing work.
|
||
|
3. **All modifications** must be made in a **pull-request** to solicit feedback from other contributors.
|
||
|
4. A pull-request *must not be merged until CI* has finished successfully.
|
||
|
|
||
|
#### Merging pull requests once CI is successful:
|
||
|
- A pull request with no large change to logic that is an urgent fix may be merged after a non-author contributor has reviewed it well.
|
||
|
- No PR should be merged until all reviews' comments are addressed.
|
||
|
|
||
|
#### Reviewing pull requests:
|
||
|
When reviewing a pull request, the end-goal is to suggest useful changes to the author. Reviews should finish with approval unless there are issues that would result in:
|
||
|
|
||
|
- Buggy behaviour.
|
||
|
- Undue maintenance burden.
|
||
|
- Breaking with house coding style.
|
||
|
- Pessimisation (i.e. reduction of speed as measured in the projects benchmarks).
|
||
|
- Feature reduction (i.e. it removes some aspect of functionality that a significant minority of users rely on).
|
||
|
- Uselessness (i.e. it does not strictly add a feature or fix a known issue).
|
||
|
|
||
|
#### Reviews may not be used as an effective veto for a PR because:
|
||
|
- There exists a somewhat cleaner/better/faster way of accomplishing the same feature/fix.
|
||
|
- It does not fit well with some other contributors' longer-term vision for the project.
|
||
|
|
||
|
## Releases
|
||
|
|
||
|
Declaring formal releases remains the prerogative of the project maintainer(s).
|
||
|
|
||
|
## Changes to this arrangement
|
||
|
|
||
|
This is an experiment and feedback is welcome! This document may also be subject to pull-requests or changes by contributors where you believe you have something valuable to add or change.
|
||
|
|
||
|
## Heritage
|
||
|
|
||
|
These contributing guidelines are modified from the "OPEN Open Source Project" guidelines for the Level project: [https://github.com/Level/community/blob/master/CONTRIBUTING.md](https://github.com/Level/community/blob/master/CONTRIBUTING.md)
|