Skip to content

Latest commit

 

History

History
50 lines (36 loc) · 2.22 KB

CONTRIBUTING.md

File metadata and controls

50 lines (36 loc) · 2.22 KB

Contributing to gosparkpost

Transparency is one of our core values, and we encourage developers to contribute and become part of the SparkPost developer community.

The following is a set of guidelines for contributing to gosparkpost, which is hosted in the SparkPost Organization on GitHub. These are just guidelines, not rules, use your best judgment and feel free to propose changes to this document in a pull request.

Submitting Issues

  • You can create an issue here, but before doing that please read the notes below on debugging and submitting issues, and include as many details as possible with your report.
  • Include the version of gosparkpost you are using.
  • Perform a cursory search to see if a similar issue has already been submitted.

Local development

  • Fork this repository
  • Clone the original source using go get https://github.com/SparkPost/gosparkpost
  • cd $GOPATH/src/github.com/SparkPost/gosparkpost
  • Add a remote pointing to your fork - git remote add fork https://github.com/YOUR_ID/gosparkpost
  • Create a branch - git checkout -b fix-or-feature
  • Write code!
  • Commit code!
  • Push code with - git push fork HEAD

Contribution Steps

Guidelines

  • Provide documentation for any newly added code.
  • Provide tests for any newly added code.
  • Run go fmt before submitting.
  1. Create a new branch named after the issue you’ll be fixing (include the issue number as the branch name, example: Issue in GitHub is #8 then the branch name should be ISSUE-8))
  2. Write corresponding tests and code (only what is needed to satisfy the issue and tests please)
    • Include your tests in the corresponding package directory in an appropriately-named test file
    • Write code to satisfy the tests
  3. Ensure automated tests pass
  4. Submit a new Pull Request applying your feature/fix branch to the develop branch

Testing

Once you are set up for local development:

  • Run go test to test against your current Go environment