Skip to content

Latest commit

 

History

History
41 lines (25 loc) · 2.09 KB

CONTRIBUTING.md

File metadata and controls

41 lines (25 loc) · 2.09 KB

Contributing to the control software

Eastern Edge welcomes contributions from everyone. By contributing to this project, you agree to the license terms of the project.

In brief, contributing involves the following process:

  1. Clone the repository
  2. Create a branch
  3. ??? (Make changes?)
  4. Push the changes to GitHub
  5. Open a Pull Request
  6. ??? (Code review?)
  7. Merge changes into the master branch

If interested, see a complete walkthrough of adding a new feature on the wiki.

The development process

All development happens on GitHub—there exists the possibility of brainstorming happening outside of GitHub, but an attempt should be made to convey all design decisions in a GitHub issue or Pull Request.

master should be stable

The master branch should always contain a stable version of the control software, with (passing) tests, and decent test coverage.

Issues

Issue should be used liberally. Example usage:

  • Brainstorming and ideas
  • General discussion
  • Actual issues (e.g. bugs)

Pull Requests

(See also: "master should be stable" above for information about branches.)

Pull Requests (PR) are the means by which branches are merged into master. Open a Pull Request and describe what changes are being introduced. When a PR is submitted or updated with more commits, CircleCI will run "tests" against just the most recent of them and update the PR to reflect whether it passed or failed. You can run the same "tests" locally via gradle check and gradle test.

Style Guide

The project uses Checkstyle to enforce some Java practices and certain formatting styles. These checks will be run automatically before Pull Requests are merged into master and can be run locally via gradle check.