1# Contribution Guidelines 2 3The Arm NN project is open for external contributors and welcomes contributions. Arm NN is licensed under the [MIT license](https://spdx.org/licenses/MIT.html) and all accepted contributions must have the same license. Below is an overview on contributing code to ArmNN. For more details on contributing to Arm NN see the [Contributing page](https://mlplatform.org/contributing/) on the [MLPlatform.org](https://mlplatform.org/) website. 4 5## Contributing code to Arm NN 6 7- All code reviews are performed on [Linaro ML Platform Gerrit](https://review.mlplatform.org) 8- GitHub account credentials are required for creating an account on ML Platform 9- Setup Arm NN git repo 10 - git clone https://review.mlplatform.org/ml/armnn 11 - cd armnn 12 - git checkout main 13 - git pull (not required upon initial clone but good practice before creating a patch) 14 - git config user.name "FIRST_NAME SECOND_NAME" 15 - git config user.email [email protected] 16- Commit using sign-off and push patch for code review 17 - git commit -s 18 - git push origin HEAD:refs/for/main 19- Patch will appear on ML Platform Gerrit [here](https://review.mlplatform.org/q/is:open+project:ml/armnn+branch:main) 20- See below for adding details of copyright notice and developer certificate 21of origin sign off 22 23## Developer Certificate of Origin (DCO) 24 25Before the Arm NN project accepts your contribution, you need to certify its origin and give us your permission. To manage this process we use Developer Certificate of Origin (DCO) V1.1 (https://developercertificate.org/). 26 27To indicate that you agree to the the terms of the DCO, you "sign off" your contribution by adding a line with your name and e-mail address to every git commit message: 28 29Signed-off-by: John Doe <[email protected]> 30 31You must use your real name, no pseudonyms or anonymous contributions are accepted. 32 33## In File Copyright Notice 34 35In each source file, include the following copyright notice: 36 37// 38// Copyright © `<years additions were made to project> <your name>` and Contributors. All rights reserved. 39// SPDX-License-Identifier: MIT 40// 41 42Note: if an existing file does not conform, update it when you next modify it, as convenient. 43 44## Releases 45 46Official Arm NN releases are published through the official [Arm NN Github repository](https://github.com/ARM-software/armnn). 47 48## Development repository 49 50The Arm NN development repository is hosted on the [mlplatform.org git repository](https://git.mlplatform.org/ml/armnn.git/) hosted by [Linaro](https://www.linaro.org/). 51 52## Code reviews 53 54Contributions must go through code review. Code reviews are performed through the [mlplatform.org Gerrit server](https://review.mlplatform.org). Contributors need to signup to this Gerrit server with their GitHub account 55credentials. 56 57Only reviewed contributions can go to the main branch of Arm NN. 58 59## Continuous integration 60 61Contributions to Arm NN go through testing at the Arm CI system. All unit, integration and regression tests must pass before a contribution gets merged to the Arm NN main branch. 62 63## Communications 64 65We encourage all Arm NN developers to subscribe to the [Arm NN developer mailing list](https://lists.linaro.org/mailman/listinfo/armnn-dev). 66