Contributor Guidelines - logitopia/jmortar-core-persistence GitHub Wiki
Introduction
Outlines guidelines for contributing to this project.
Table of Contents
Code of Conduct
All contributions and contributors MUST follow our code code of conduct guidelines. These are detailed here.
Raising Issues
Raising issues is a core part of the project contribution. It helps us to understand:
- What is broken
- What functionality would make the product even more useful to you
- Larger priorities
It is vital that when you create a ticket, you give as much detail as possible. Let’s take a look at the two main issue types and what kind of detail we would expect to see.
Bug
No one likes bugs, so when you find one it is important that you raise it. The following detail should help us resolve the issue as quickly and as thoroughly as possible.
- Product Version - The specific version of the library that you were using when the issue occurred.
- Description - This is a specific description of the error / issue that has occurred. When writing this ask yourself “what went wrong?”
- Expected Outcome - Here we are asking “what should have happened, instead of that nasty bug”. This could be what was documented to happen, or simply what you would have expected to occur.
Enhancements
If you have a good idea for a feature for the product, it would be really great to hear about it! Please feel free to raise an issue for a new features. All feature requests should be formatted as user stories. Make sure you include the following details.
- User Story - The description of the feature.
- Acceptance Criteria - What must the feature have “as a minimum” to be accepted as “complete”.
Code Quality
It’s important that all contributions are as high quality as possible. Here are some code quality guidelines for this project.
Commentary / Documentation
All code should be well documented. If your writing Java or Groovy then it should have thorough javadoc, or groovydoc, commentary. This will make sure that the API makes sense when released.
Testing
Amendments to the code should always be tested, where appropriate. The minimum standard for code coverage is 75%. You can run jacoco reports using gradle.
FAQ
Who are “contributors”?
A “contributor” is someone who makes additions or changes to the project.