xref: /aosp_15_r20/external/armnn/CONTRIBUTING.md (revision 89c4ff92f2867872bb9e2354d150bf0c8c502810)
1*89c4ff92SAndroid Build Coastguard Worker# Contribution Guidelines
2*89c4ff92SAndroid Build Coastguard Worker
3*89c4ff92SAndroid Build Coastguard WorkerThe 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*89c4ff92SAndroid Build Coastguard Worker
5*89c4ff92SAndroid Build Coastguard Worker## Contributing code to Arm NN
6*89c4ff92SAndroid Build Coastguard Worker
7*89c4ff92SAndroid Build Coastguard Worker- All code reviews are performed on [Linaro ML Platform Gerrit](https://review.mlplatform.org)
8*89c4ff92SAndroid Build Coastguard Worker- GitHub account credentials are required for creating an account on ML Platform
9*89c4ff92SAndroid Build Coastguard Worker- Setup Arm NN git repo
10*89c4ff92SAndroid Build Coastguard Worker  - git clone https://review.mlplatform.org/ml/armnn
11*89c4ff92SAndroid Build Coastguard Worker  - cd armnn
12*89c4ff92SAndroid Build Coastguard Worker  - git checkout main
13*89c4ff92SAndroid Build Coastguard Worker  - git pull (not required upon initial clone but good practice before creating a patch)
14*89c4ff92SAndroid Build Coastguard Worker  - git config user.name "FIRST_NAME SECOND_NAME"
15*89c4ff92SAndroid Build Coastguard Worker  - git config user.email [email protected]
16*89c4ff92SAndroid Build Coastguard Worker- Commit using sign-off and push patch for code review
17*89c4ff92SAndroid Build Coastguard Worker  - git commit -s
18*89c4ff92SAndroid Build Coastguard Worker  - git push origin HEAD:refs/for/main
19*89c4ff92SAndroid Build Coastguard Worker- Patch will appear on ML Platform Gerrit [here](https://review.mlplatform.org/q/is:open+project:ml/armnn+branch:main)
20*89c4ff92SAndroid Build Coastguard Worker- See below for adding details of copyright notice and developer certificate
21*89c4ff92SAndroid Build Coastguard Workerof origin sign off
22*89c4ff92SAndroid Build Coastguard Worker
23*89c4ff92SAndroid Build Coastguard Worker## Developer Certificate of Origin (DCO)
24*89c4ff92SAndroid Build Coastguard Worker
25*89c4ff92SAndroid Build Coastguard WorkerBefore 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*89c4ff92SAndroid Build Coastguard Worker
27*89c4ff92SAndroid Build Coastguard WorkerTo 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*89c4ff92SAndroid Build Coastguard Worker
29*89c4ff92SAndroid Build Coastguard WorkerSigned-off-by: John Doe <[email protected]>
30*89c4ff92SAndroid Build Coastguard Worker
31*89c4ff92SAndroid Build Coastguard WorkerYou must use your real name, no pseudonyms or anonymous contributions are accepted.
32*89c4ff92SAndroid Build Coastguard Worker
33*89c4ff92SAndroid Build Coastguard Worker## In File Copyright Notice
34*89c4ff92SAndroid Build Coastguard Worker
35*89c4ff92SAndroid Build Coastguard WorkerIn each source file, include the following copyright notice:
36*89c4ff92SAndroid Build Coastguard Worker
37*89c4ff92SAndroid Build Coastguard Worker//
38*89c4ff92SAndroid Build Coastguard Worker// Copyright © `<years additions were made to project> <your name>` and Contributors. All rights reserved.
39*89c4ff92SAndroid Build Coastguard Worker// SPDX-License-Identifier: MIT
40*89c4ff92SAndroid Build Coastguard Worker//
41*89c4ff92SAndroid Build Coastguard Worker
42*89c4ff92SAndroid Build Coastguard WorkerNote: if an existing file does not conform, update it when you next modify it, as convenient.
43*89c4ff92SAndroid Build Coastguard Worker
44*89c4ff92SAndroid Build Coastguard Worker## Releases
45*89c4ff92SAndroid Build Coastguard Worker
46*89c4ff92SAndroid Build Coastguard WorkerOfficial Arm NN releases are published through the official [Arm NN Github repository](https://github.com/ARM-software/armnn).
47*89c4ff92SAndroid Build Coastguard Worker
48*89c4ff92SAndroid Build Coastguard Worker## Development repository
49*89c4ff92SAndroid Build Coastguard Worker
50*89c4ff92SAndroid Build Coastguard WorkerThe 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*89c4ff92SAndroid Build Coastguard Worker
52*89c4ff92SAndroid Build Coastguard Worker## Code reviews
53*89c4ff92SAndroid Build Coastguard Worker
54*89c4ff92SAndroid Build Coastguard WorkerContributions 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
55*89c4ff92SAndroid Build Coastguard Workercredentials.
56*89c4ff92SAndroid Build Coastguard Worker
57*89c4ff92SAndroid Build Coastguard WorkerOnly reviewed contributions can go to the main branch of Arm NN.
58*89c4ff92SAndroid Build Coastguard Worker
59*89c4ff92SAndroid Build Coastguard Worker## Continuous integration
60*89c4ff92SAndroid Build Coastguard Worker
61*89c4ff92SAndroid Build Coastguard WorkerContributions 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*89c4ff92SAndroid Build Coastguard Worker
63*89c4ff92SAndroid Build Coastguard Worker## Communications
64*89c4ff92SAndroid Build Coastguard Worker
65*89c4ff92SAndroid Build Coastguard WorkerWe encourage all Arm NN developers to subscribe to the [Arm NN developer mailing list](https://lists.linaro.org/mailman/listinfo/armnn-dev).
66