The ML Inference Advisor (MLIA) project is open for external contributors and welcomes contributions. MLIA is licensed under the Apache-2.0 license and all accepted contributions must have the same license. Below is an overview on contributing code to MLIA.
git clone "ssh://<your_github_username>@review.mlplatform.org:29418/ml/mlia" # set up commit-msg hook to automatically add Gerrit Change-ID to each commit scp -p -P 29418 \ <your_github_username>@review.mlplatform.org:hooks/commit-msg "mlia/.git/hooks/" cd mlia git checkout main # git pull is not required upon initial clone but good practice before # creating a patch git pull git config user.name "FIRST_NAME SECOND_NAME" # use the same e-mail you set up your ML Platform account with git config user.email your@email.address
git commit -s
For the commit messages, the codebase follows Conventional Commits, with some customizations. Header description is be capitalized, and the following commit types are allowed: build, ci, docs, feat, fix, perf, refactor, style, test.
Push patch for code review
git push origin HEAD:refs/for/main
Before the MLIA 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.
To 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:
Signed-off-by: FIRST_NAME SECOND_NAME <your@email.address>
You must use your real name, no pseudonyms or anonymous contributions are accepted.
In each source file, include the following copyright notice:
# SPDX-FileCopyrightText: Copyright <years changes were made> <copyright holder>. # SPDX-License-Identifier: Apache-2.0
Note: if an existing file does not conform, please update the license header as part of your contribution.
Official MLIA releases are published through PyPI.
The MLIA development repository is hosted on the mlplatform.org.
Contributions must go through code review. Code reviews are performed through the mlplatform.org Gerrit server. Contributors need to signup to this Gerrit server with their GitHub account credentials.
Only reviewed contributions can go to the main branch of MLIA.
Contributions to MLIA go through testing at the Arm CI system. All unit, integration and regression tests must pass before a contribution gets merged to the MLIA main branch.