|
| 1 | +<!-- |
| 2 | +SPDX-FileCopyrightText: Copyright (c) 2025 Infineon Technologies AG |
| 3 | +SPDX-License-Identifier: CC-BY-4.0 |
| 4 | +--> |
| 5 | + |
| 6 | +# Contributing to this repository |
| 7 | + |
| 8 | +First off, thanks for taking the time to contribute! |
| 9 | + |
| 10 | +All types of contributions are encouraged and valued. See the [Table of |
| 11 | +contents](#table-of-contents) for different ways to help and details about how |
| 12 | +this project handles them. Please make sure to read the relevant section before |
| 13 | +making your contribution. It will make it a lot easier for us maintainers and |
| 14 | +smooth out the experience for all involved. The community looks forward to your |
| 15 | +contributions. |
| 16 | + |
| 17 | +## Table of contents |
| 18 | + |
| 19 | +- [I Have a question](#i-have-a-question) |
| 20 | +- [I Want to contribute](#i-want-to-contribute) |
| 21 | + - [Reporting bugs](#reporting-bugs) |
| 22 | + - [Suggesting enhancements](#suggesting-enhancements) |
| 23 | + |
| 24 | +## I Have a question |
| 25 | + |
| 26 | +> If you want to ask a question, we assume that you have read the available |
| 27 | +> [documentation](README.md). |
| 28 | +
|
| 29 | +Before you ask a question, it is best to search for existing |
| 30 | +[issues](https://github.com/Infineon/python-optiga-trust/issues) that might help you. |
| 31 | +In case you have found a suitable issue and still need clarification, you can |
| 32 | +write your question in this issue. It is also advisable to search the internet |
| 33 | +for answers first. |
| 34 | + |
| 35 | +If you then still feel the need to ask a question and need clarification, we |
| 36 | +recommend the following: |
| 37 | + |
| 38 | +- Open an [issue](https://github.com/Infineon/python-optiga-trust/issues/new). |
| 39 | +- Provide as much context as you can about what you're running into. |
| 40 | +- Provide project and platform versions (nodejs, npm, etc), depending on what |
| 41 | + seems relevant. |
| 42 | + |
| 43 | +We will then take care of the issue as soon as possible. |
| 44 | + |
| 45 | +## I want to contribute |
| 46 | + |
| 47 | +> ### Legal notice |
| 48 | +> |
| 49 | +> When contributing to this project, you must agree that you have authored 100% |
| 50 | +> of the content, that you have the necessary rights to the content and that the |
| 51 | +> content you contribute may be provided under the project license. |
| 52 | +
|
| 53 | +### Reporting bugs |
| 54 | + |
| 55 | +#### Before submitting a bug report |
| 56 | + |
| 57 | +A good bug report shouldn't leave others needing to chase you up for more |
| 58 | +information. Therefore, we ask you to investigate carefully, collect information |
| 59 | +and describe the issue in detail in your report. Please complete the following |
| 60 | +steps in advance to help us fix any potential bug as fast as possible. |
| 61 | + |
| 62 | +- Make sure that you are using the latest version. |
| 63 | +- Determine if your bug is really a bug and not an error on your side e.g. using |
| 64 | + incompatible environment components/versions (Make sure that you have read the |
| 65 | + [documentation](README.md). If you are looking for support, you might want to |
| 66 | + check [this section](#i-have-a-question)). |
| 67 | +- To see if other users have experienced (and potentially already solved) the |
| 68 | + same issue you are having, check if there is not already a bug report existing |
| 69 | + for your bug or error in the [bug tracker](issues?q=label%3Abug). |
| 70 | +- Also make sure to search the internet (including Stack Overflow) to see if |
| 71 | + users outside of the GitHub community have discussed the issue. |
| 72 | +- Collect information about the bug: |
| 73 | +- Stack trace (traceback) |
| 74 | +- OS, Platform and Version (Windows, Linux, macOS, x86, ARM) |
| 75 | +- Version of the interpreter, compiler, SDK, runtime environment, package |
| 76 | + manager, depending on what seems relevant. |
| 77 | +- Possibly your input and the output |
| 78 | +- Can you reliably reproduce the issue? And can you also reproduce it with older |
| 79 | + versions? |
| 80 | + |
| 81 | +#### How do I submit a good bug report? |
| 82 | + |
| 83 | +> You must never report security related issues, vulnerabilities or bugs |
| 84 | +> including sensitive information to the issue tracker, or elsewhere in public. |
| 85 | +> Instead sensitive bugs must be sent by email to one of the repository's |
| 86 | +> [maintainers](MAINTAINERS.md). |
| 87 | +
|
| 88 | +We use GitHub issues to track bugs and errors. If you run into an issue with the |
| 89 | +project: |
| 90 | + |
| 91 | +- Open an [issue](https://github.com/Infineon/python-optiga-trust/issues/new). (Since |
| 92 | + we can't be sure at this point whether it is a bug or not, we ask you not to |
| 93 | + talk about a bug yet and not to label the issue.) |
| 94 | +- Explain the behavior you would expect and the actual behavior. |
| 95 | +- Please provide as much context as possible and describe the *reproduction |
| 96 | + steps* that someone else can follow to recreate the issue on their own. This |
| 97 | + usually includes your code. For good bug reports you should isolate the |
| 98 | + problem and create a reduced test case. |
| 99 | +- Provide the information you collected in the previous section. |
| 100 | + |
| 101 | +Once it's filed: |
| 102 | + |
| 103 | +- The project team will label the issue accordingly. |
| 104 | +- A team member will try to reproduce the issue with your provided steps. If |
| 105 | + there are no reproduction steps or no obvious way to reproduce the issue, the |
| 106 | + team will ask you for those steps and mark the issue as `needs-repro`. Bugs |
| 107 | + with the `needs-repro` tag will not be addressed until they are reproduced. |
| 108 | +- If the team is able to reproduce the issue, it will be marked `needs-fix`, as |
| 109 | + well as possibly other tags (such as `critical`), and the issue will be left |
| 110 | + to be implemented by someone. |
| 111 | + |
| 112 | +### Suggesting enhancements |
| 113 | + |
| 114 | +This section guides you through submitting an enhancement suggestion for this |
| 115 | +project, **including completely new features and minor improvements to existing |
| 116 | +functionality**. Following these guidelines will help maintainers and the |
| 117 | +community to understand your suggestion and find related suggestions. |
| 118 | + |
| 119 | +#### Before submitting an enhancement |
| 120 | + |
| 121 | +- Make sure that you are using the latest version. |
| 122 | +- Read the [documentation](README.md) carefully and find out if the |
| 123 | + functionality is already covered, maybe by an individual configuration. |
| 124 | +- Perform a [search](https://github.com/Infineon/python-optiga-trust/issues) to see |
| 125 | + if the enhancement has already been suggested. If it has, add a comment to the |
| 126 | + existing issue instead of opening a new one. |
| 127 | +- Find out whether your idea fits with the scope and aims of the project. It's |
| 128 | + up to you to make a strong case to convince the project's developers of the |
| 129 | + merits of this feature. Keep in mind that we want features that will be useful |
| 130 | + to the majority of our users and not just a small subset. If you're just |
| 131 | + targeting a minority of users, consider writing an add-on/plugin library. |
| 132 | + |
| 133 | +#### How do I submit a good enhancement suggestion? |
| 134 | + |
| 135 | +Enhancement suggestions are tracked as [GitHub |
| 136 | +issues](https://github.com/Infineon/python-optiga-trust/issues). |
| 137 | + |
| 138 | +- Use a **clear and descriptive title** for the issue to identify the |
| 139 | + suggestion. |
| 140 | +- Provide a **step-by-step description of the suggested enhancement** in as many |
| 141 | + details as possible. |
| 142 | +- **Describe the current behavior** and **explain which behavior you expected to |
| 143 | + see instead** and why. At this point you can also tell which alternatives do |
| 144 | + not work for you. |
| 145 | +- You may want to **include screenshots and animated GIFs** which help you |
| 146 | + demonstrate the steps or point out the part which the suggestion is related |
| 147 | + to. |
| 148 | +- **Explain why this enhancement would be useful** to most users of this |
| 149 | + project. You may also want to point out the other projects that solved it |
| 150 | + better and which could serve as inspiration. |
| 151 | + |
| 152 | +## Attribution |
| 153 | + |
| 154 | +This guide is based on the |
| 155 | +[contributing-gen](https://github.com/bttger/contributing-gen)! |
0 commit comments