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