Skip to content

Latest commit

 

History

History
51 lines (36 loc) · 3.36 KB

CONTRIBUTING.md

File metadata and controls

51 lines (36 loc) · 3.36 KB

Thanks for your interest in contributing to this project and for taking the time to read this guide.

Code of conduct

Be respectful: disagreements between people are to be expected and are usually the sign of healthy debate and engagement. Disagreements can lead to frustration and even anger for some members. Turning to personal insults, intimidation or threatening behaviour does not improve the situation. Participants should thus take care to ensure all communications / interactions stay professional at all times.

Be considerate: remember that the community has members with a diverse background, many of whom have English as a second language. What might appear impolite, may simply be a result of a lack of knowledge of the English language. Bear in mind that actions will have an impact on other community members and the project as a whole, so take potential consequences into account before pursuing a course of action.

Be forgiving: humans are fallible and as such prone to make mistakes and inexplicably change their positions at times. Don't assume that other members are acting with malicious intent. Be prepared to forgive people who make mistakes and assist each other in learning from them. Playing a blame game doesn't help anyone.

Issues

  • Before reporting an issue make sure you search first if anybody has already reported a similar issue and whether or not it has been fixed.
  • Make sure your issue report sufficiently details the problem:
  • If you set up weave in some way other than that described by our main instructions, please mention that.
  • Include step-by-step instructions to reproduce the issue.
  • State the OS platform you are using, i.e. uname -a
  • iptables rules and firewalls can have a great impact on any Linux network; please note whether you have set up any rules and/or are running a firewall on your machine(s).
  • If you want to tackle any open issue, make sure you let people know you are working on it.

Pull Requests

  • Please be generous describing your changes.
  • Although it is highly suggested to include tests, they are not a hard requirement in order to get your contributions accepted.
  • Keep pull requests small so core developers can review them quickly.
  • Keep each pull request focused on a specific topic. If you have two things to change, create two pull requests. This helps reviewers to understand the meat of your contribution.

Managing Vendored Dependencies

We copy all Go dependencies into the vendor subdirectory and use dep to manage them.

If you add a dependency in the code, run dep ensure to include it in the config and vendor dir. Same if you remove a dependency from the code.

To update a single dependency run dep ensure -update github.com/foo/bar

To override dep's choice of library version, you can add rules. Please add a comment saying why the override is necessary and when it can be removed.

These operations result in staged but uncommitted changes to your branch; you will need to commit them as normal. Execute them in the root of your checkout.

Workflow

See WorkingOnWeave

Acknowledgements

Much of this taken from https://github.com/cloudescape/gowsdl/blob/master/CONTRIBUTING.md