Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project.
If you think you meet the above criteria and we have not invited you yet, we are sorry! Feel free reach out to a Lead Maintainer privately with a few links to your valuable contributions. Read the GOVERNANCE to get more information.
There are a few basic ground-rules for contributors:
- No
--force
pushes onmaster
or modifying the Git history in any way after a PR has been merged. - Non-master branches ought to be used for ongoing work.
- External API changes and significant modifications ought to be subject to an internal pull-request to solicit feedback from other contributors.
- Internal pull-requests to solicit feedback are encouraged for any other non-trivial contribution but left to the discretion of the contributor.
- Contributors should attempt to adhere to the prevailing code-style.
- At least two contributors, or one core member, must approve pull-requests prior to merging.
- All integrated CI services must be green before a pull-request can be merged.
- SemVer-major changes in this repository must be merged by a lead maintainer.
- In case it is not possible to reach consensus in a pull-request, the decision is left to the lead maintainers team.
The contributors to the Fastify's plugins must attend the same rules of the Fastify repository with few adjustments:
- A release can be published by any member.
- The plugin version must follow the semver specification.
- The Node.js compatibility must match with the Fastify's master branch.
- The new release must have the changelog information stored in the GitHub release.
For this scope we suggest to adopt a tool like
releasify
to archive this. - PR opened by bots (like Greenkeeper) can be merged if the CI is green and the Node.js versions supported are the same of the plugin.
Bump the version with npm version <minor|major|patch>
then run npm publish
.
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.
By making a contribution to this project, I certify that:
-
(a) The contribution was created in whole or in part by me and I have the right to submit it under the open source license indicated in the file; or
-
(b) The contribution is based upon previous work that, to the best of my knowledge, is covered under an appropriate open source license and I have the right under that license to submit that work with modifications, whether created in whole or in part by me, under the same open source license (unless I am permitted to submit under a different license), as indicated in the file; or
-
(c) The contribution was provided directly to me by some other person who certified (a), (b) or (c) and I have not modified it.
-
(d) I understand and agree that this project and the contribution are public and that a record of the contribution (including all personal information I submit with it, including my sign-off) is maintained indefinitely and may be redistributed consistent with this project or the open source license(s) involved.