Blame CONTRIBUTING.md

Packit 8681c6
# How to contribute
Packit 8681c6
Packit 8681c6
Patches are more than welcome at OpenCryptoki, be it to fix a bug or to add a
Packit 8681c6
new feature. To make your life, and also our life, easy there are a few steps
Packit 8681c6
that we need the contributors to follow.
Packit 8681c6
Packit 8681c6
## Getting started 
Packit 8681c6
Packit 8681c6
* Read and study the [PKCS #11 standard](https://www.oasis-open.org/committees/tc_home.php?wg_abbrev=pkcs11) v2.20 or, preferably, v2.40.
Packit 8681c6
* Make sure to subscribe to our [technical discussion mailing-list](https://sourceforge.net/projects/opencryptoki/lists/opencryptoki-tech)
Packit 8681c6
* Make sure you have a [GitHub account](https://github.com/signup/free)
Packit 8681c6
* Submit a ticket for your issue, assuming one does not already exist.
Packit 8681c6
  * Clearly describe the issue, including steps to reproduce when it is a bug.
Packit 8681c6
  * Make sure you fill in the earliest version that you know has the issue.
Packit 8681c6
  * In case of a bug, try to attach some logs. Enable tracing on OpenCryptoki by
Packit 8681c6
  running `export OPENCRYPTOKI_TRACE_LEVEL=<level>`. For more information about
Packit 8681c6
  trace level check the [FAQ](FAQ).
Packit 8681c6
  * Include information from your environment (OS, gcc version, and any other
Packit 8681c6
  related packages version).
Packit 8681c6
  * In case of a new hardware token, please provide a way for us to have access
Packit 8681c6
  to an environment that contains such hardware or a way to run automated tests
Packit 8681c6
  through Jenkins or other similar tool.
Packit 8681c6
* Fork the repository on GitHub.
Packit 8681c6
Packit 8681c6
## Making changes
Packit 8681c6
* Create a topic/issue branch from the `master` branch.
Packit 8681c6
* Please avoid working directly on the `master` branch.
Packit 8681c6
* If the changes are too big, please separate it into smaller, logical, commits.
Packit 8681c6
This will improve commit history and code review.
Packit 8681c6
* Follow the [coding style](doc/coding_style.md) guidelines.
Packit 8681c6
* Check for unnecessary whitespace with `git diff --check` before committing.
Packit 8681c6
* Make sure your commit messages are in the proper format and sign your patch:
Packit 8681c6
```
Packit 8681c6
    Add CONTRIBUTING guideline
Packit 8681c6
Packit 8681c6
    The CONTRIBUTING.md file describes the guidelines that every Contributor
Packit 8681c6
    should follow to get their code integrated into OpenCryptoki. This will
Packit 8681c6
    improve Contributors/Maintainers work.
Packit 8681c6
Packit 8681c6
    Signed-off-by: YOUR_NAME <youremail@something.com>
Packit 8681c6
```
Packit 8681c6
Packit 8681c6
* Make sure you have added the necessary tests for your changes.
Packit 8681c6
* Run _all_ the tests to assure nothing else was accidentally broken. If you do
Packit 8681c6
not have the necessary hardware to run _all_ tests, please write it down to us,
Packit 8681c6
so we can manage to do the testing for you.
Packit 8681c6
Packit 8681c6
## Submitting Changes
Packit 8681c6
Packit 8681c6
* Sign your commits, as mentioned above.
Packit 8681c6
* There are two ways to submit patches:
Packit 8681c6
  * If you prefer the old school way of sending patches to a mailing-list, then
Packit 8681c6
  feel free to send your patch to the [technical discussion mailing-list](https://sourceforge.net/projects/opencryptoki/lists/opencryptoki-tech) . We will keep you posted as the code review goes by.
Packit 8681c6
  * If you like GitHub and all the tools it has, then submit a pull request to
Packit 8681c6
  * the opencryptoki repository on opencryptoki organization.
Packit 8681c6
* Include test information/results on the email thread of your patch or on the
Packit 8681c6
pull request.
Packit 8681c6
* Wait for the Maintainers feedback about your changes. Although we are always
Packit 8681c6
working on the project, sometimes we have our attention caught up on higher
Packit 8681c6
priority tasks for the project.
Packit 8681c6
* Be ready to answer any doubts that we might have about your changes, otherwise
Packit 8681c6
if we do not get an answer we will not be able to merge your code.
Packit 8681c6
Packit 8681c6
## Final thoughts
Packit 8681c6
Packit 8681c6
* Feel free to ask questions, there is no such thing as a stupid question, just
Packit 8681c6
stupid people.
Packit 8681c6
* You can find us on the mailing list mentioned above.
Packit 8681c6
* Have fun in the process, coding is fun!