- The change is as small as possible. It fixes one specific issue or implements one specific feature. Do not combine things, send separate pull requests if needed.
- Include proper tests and make all tests pass (unless it contains a test exposing a bug in existing code). Every new class should have corresponding unit tests, even if the class is exercised at a higher level, such as a feature test.
- Every bug-fix has a regression test.
- If you suspect a failing CI build is unrelated to your contribution, you may try and restart the failing CI job or ask a developer to fix the aforementioned failing test.
- Code conforms to this style guide.
- When writing tests, please follow these guidelines.
- Changes do not adversely degrade performance.
- Your PR contains a single commit (please use
git rebase -i
to squash commits) - When writing commit messages, please follow these guidelines.
- Your changes can merge without problems (if not please rebase if you're the
only one working on your feature branch, otherwise, merge
master
). - If the pull request adds any new libraries, they should be in line with our license.
- Use
GoodData.logger
for logging instead ofputs
.
Based on GitLab's contribution guide.