-
Notifications
You must be signed in to change notification settings - Fork 119
cctbx contributors guide
Aaron S. Brewster edited this page Aug 6, 2018
·
2 revisions
As discussed at the Gordon Research Conference for Diffraction Methods in Structural Biology, 07/30/18, the following guidelines are agreed upon for developers wishing to contribute code to cctbx:
- Cctbx is open source.
- We welcome third party contributions, but note that there is a cost for managing third party contributions.
- Cctbx is not a free-for-all.
- Contributors should be encouraged to review their plans for contributions before doing a large amount of work and submitting a pull request, but that shouldn't preclude users from submitting requests.
- Interface changes and other breaking changes should be communicated to the bulletin boards ([email protected] for example).
Expectations for contributions
- Include documentation: docstrings for functions, in-line comments, and help strings for command line programs.
- Include tests. Testing includes unit tests (individual functions) and integration tests (full program), and possibly multiple of each with different inputs.
- Run the cctbx tests. If appropriate, run tests from other projects affected by the new code.
- Do not add external dependencies without discussion.
Expectations for developers
- We will respond to contributions, at least with "I don't have time to review this right now".
- We can deny pull requests, but if we do so, we should do so with constructive feedback, following consistent rules.
- The build meeting team will review tickets and pull requests to ensure regular feedback.
See cctbx-Developer-Guidance for more details.