# Contributing guide

This guide mainly focuses on the steps to follow to submit an issue or a pull request.

## 1. Issues

### 1.1 Before opening an issue

Before posting an issue, please ensure:
* You are using the latest commit.
* Your issue is **not** a vulnerability. Otherwise, please refer to section [3](CONTRIBUTING.md#3-vulnerabilities) below.
* Your issue is **related to** the software provided in this repository. Otherwise, please refer to section [4](CONTRIBUTING.md#4-support-requests-and-miscellaneous) below.
* Your issue is not already reported, fixed or discussed in a previous one. Remember to browse the **closed** issues.

### 1.2 Posting the issue

When you have checked the previous points, create a new report from the **Issues** tab of this repository. A couple of templates are available [here](../../issues/new/choose).

## 2. Pull Requests

### 2.1 Before opening a pull request

STMicrolectronics is happy to receive contributions from the community, based on an initial Contributor License Agreement (CLA) procedure.

* If you are an individual writing original source code and you are sure **you own the intellectual property**, then you need to sign an **Individual** [CLA](https://cla.st.com).
* If you work for a company that wants also to allow you to contribute with your work, your company needs to provide a **Corporate** [CLA](https://cla.st.com) mentioning your GitHub account name.
* If you are not sure that a CLA (Individual or Corporate) has been signed for your GitHub account you can check the [CLA](https://cla.st.com) dedicated page.

> [!IMPORTANT]
> Please note that:
> * The Corporate CLA will always take precedence over the Individual CLA.
> * One CLA submission is sufficient, for any project proposed by STMicroelectronics.

### 2.2 How to proceed

* We recommend to engage first a communication thru an issue, in order to present your proposal, just to confirm that it corresponds to STMicroelectronics' domain or scope.
* Then fork the project to your GitHub account to further develop your contribution. Please use the latest commit version.
* Please, submit one pull request per new feature or proposal. This will ease the analysis and the final merge if accepted.

## 3. Vulnerabilities

To report a **vulnerability**, please refer to the [SECURITY.md](./SECURITY.md) file for instructions.

## 4. Support requests and miscellaneous

For support requests or any other topics not related to the content of this repository, you can submit a post to the **ST Community** on the appropriate topic [page](https://community.st.com/s/topiccatalog).
