Skip to content

Commit 46cb18e

Browse files
authored
add maintainer notes for ffi (#317)
* WIP add maintainer nodes for ffi * address missing parts
1 parent d7ebb63 commit 46cb18e

File tree

1 file changed

+33
-1
lines changed

1 file changed

+33
-1
lines changed

README.md

Lines changed: 33 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
# Filecoin FFI
44

5-
> C and CGO bindings for Filecoin's Rust libraries
5+
> C and CGO bindings for Filecoin's Rust libraries, i.e: [proofs](https://github.com/filecoin-project/rust-fil-proofs) and [ref-fvm](https://github.com/filecoin-project/ref-fvm). This repository is built to enable the reference implementation of Filecoin, [Lotus](https://github.com/filecoin-project/lotus), to consume the Rust libraries that are needed.
66
77
## Building
88

@@ -96,6 +96,38 @@ Run it like so:
9696
./mkreleaselog v0.25.0 v0.26.0 > /tmp/v0.26.0.notes.txt
9797
```
9898

99+
## Contribution
100+
101+
### Maintainers
102+
103+
The core maintainers of this repository are:
104+
- @nemo, @vmx & @shawnrader, from the fil-crypto team
105+
- @lotus-maintainers
106+
- @stebalien, from the FVM team
107+
108+
Maintainers are not only the contributors of this repository, but also exercise a range of editorial responsibilities to keep the repository organized for the OSS contributors, that includes triage the issues, review and merge/close PRs, publish releases and so on.
109+
110+
### Development Guidelines (WIP)
111+
112+
#### Branches
113+
114+
`master` is considered as the development branch of this repository. Changes being introduced to master must be tested (programmable and/or manual). The head of the master will be tagged and released upon the merge of each PR automatically.
115+
116+
We will cooperates with the [lotus' releases and it's testing flows](https://github.com/filecoin-project/lotus/blob/0c91b0dc1012c3e54b305a76bb25fb68390adf9d/LOTUS_RELEASE_FLOW.md?plain=1#L50) to confirm whether a tagged release is production ready:
117+
118+
*Non-consensus breaking changes*
119+
- All PRs introduce non-consensus breaking changes can be merged to master as long they have maintainers' approvals.
120+
- Roughly on a monthly basis, lotus will integrate ffi's head in `master` branch, for it's new feature release, and carry it through the testing flows.
121+
- `release/lotus-vX` will be created to determine the commit that lotus integrates in the corresponding release.
122+
- If any bug is found during the testing, the fix should land in master then get backported to `release/lotus-vX`. The updated commit should be integrated into lotus and getting tested. Repeat the steps until it can be considered as stable.
123+
124+
#Consensus breaking changes*
125+
- Consensus breaking changes should be developed in it's own branch, (branch name is suggested to be: feature branches `feat/` or bug fix branches `bug/`).
126+
- Consensus breaking changes that are scoped into the next immediate network upgrade shall land in `next` branch first. The maintainers are responsible to coordinate on when to land `next` to `master` according to lotus mandatory(network upgrade) release schedules.
127+
- A new dev branch should be created and contributors are responsible to rebase the branch onto `master`/`next` as needed.
128+
129+
130+
99131
## License
100132

101133
MIT or Apache 2.0

0 commit comments

Comments
 (0)