-
Notifications
You must be signed in to change notification settings - Fork 131
Development Processes
Mike Conlon edited this page Jan 16, 2018
·
13 revisions
Some background (please remove from final draft): I proposed semantic versioning to the VIVO Steering Group in 2015 (see https://goo.gl/OiqCyr ) The proposal was never approved. It can, of course, be recycled. The concern is for a major release that does not contain end user features, and so can not be easily marketed to institutional stakeholders. The recent discussion of VIVO 1.10 vs VIVO 2.0 recently replayed these concerns. Mike
Development contributions and collaboration take place primarily in this repository on GitHub and in Jira. When changes for revision (pull requests) are submitted, they must adhere to the following criteria:
- There should be a Jira issue that explains the reason for the change and serves as a platform for issue-level discussion. Discussion regarding code details should take place directly on a pull request in the comments or as line notes.
- The changes must be made in a branch and submitted as a pull request.
- The submitted pull request must reference the associated Jira issue.
- Changes on the branch should be squashed into one commit, with a reasonable commit message, and one parent commit that is the latest revision. Multiple commits are allowed when they are logical, but this should generally be avoided as it usually indicates that there are too many changes happening on one branch.
- When the developer feels that a pull request is ready for final consideration, they must label the pull request as "Ready for Review".
- Once a pull request is labelled "Ready for Review", the committers have 5 business days to provide feedback or indicate approval or ambivalence.
- If necessary, the pull request may be labelled as "More Time Needed".
- A pull request may be merged when 2 or more committers (excluding the author) have responded with 👍/+1, and after 5 business days have passed with no committers having responded with 👎/-1 nor "More Time Needed".
- Minor updates, such as those that affect only whitespace and typo fixes may be merged according to the rules above without waiting for 5 business days.
- No pull request may ever be merged by the author of the pull request.