# Contributing

This repo is maintained by TDK Invensense, and write access to branches is restricted.  
We still welcome your contributions to the project. Please read below to see how you can contribute.

## Issues

When creating an issue, please ping relevant GitHub Team as defined in file [CODEOWNERS](CODEOWNERS).  
This will ensure our support team is properly notified.

## Contribution flow

To start contributing, you will first need to fork this repository. From your fork, you can create branches, make commits, etc. without restriction.  

When you would like to contribute something back to this repo, you should open a pull request to the `main` branch.  
From here, a TDK Invensense member will review the code and decide whether to accept the contribution or not.  

In either case, the PR will not be directly merged. If the contribution is accepted, it will first be integrated into our internal repo and put through our normal release flow.  
When the changes are made available in the TDK Invensense repo, you can then merge or rebase these changes into your own fork.  

Once the changes are released or rejected by TDK Invensense, the original PR will be closed by our support team.  

## Authorship

It is important to include authorship information in the source files if your change is relevant enought and you want it to be preserved.  

You can simply include lines like the following on a per-file basis:
```
// Contributors: <Author 1> <Author 2>
// Copyright: (c) <year> <Author 1>, (c) <year> <Author 2>
```

Or you can include it at a finer scope if you wish.  
