-
Notifications
You must be signed in to change notification settings - Fork 14
Information for developers
- All Python scripts must follow PEP 8, see here.
- Use the Black python code formatter
- Python code intents should be 4 spaces (not tabs, not 2 or any other amount of spaces).
- do not use emojis in the logger output
- avoid emojis in readme, main exception is the
ark_frameworkreadme - LCM file style below.
package _arktypes_SUBPKGNAME;
// Explanation of LCM message type
struct MSGNAME {
int64_t flag; // small explanation
OTHERMSGNAME msg; // small explanation
// Longer explanation if required
_arktypes_OTHERSSUBPKGNAME.OTHERSUBPKGMSGTYPE other_msg;
}
Please always use Ark in written text, and ark in code and for file/package/link names.
The following should not be used
ARKARkaRKarKaRk
We should use git as follows.
The main branch in each repository should be the stable release and should always work.
Everyone should create branches from the main branch.
Eg as follows
git checkout main- Then create a branch
git checkout -b dev-NAME-FEATURENAME.
where NAME is your name (eg. cmower), and FEATURENAME is some meaningful name for what you're doing.
If you are addressing an issue in github, then FEATURENNAME should be the github issue number (go to the issue in github, you will see a number next to a hash sign (#).
Follow these steps.
- Checkout onto your new branch (as previous section).
- Commit code with meaningful messages.
- Push the code to the remote repo:
git push origin dev-NAME-FEATURENAME - Create a pull request and add at least one reviewer. Generally, only one is needed, unless there is a reasonable reason to add more reviewers.
- Address all comments/feedback from the reviewer and commit updates. Unless the reviewer specifies, it is the reviewers job to resolve conversations.
- Eventually, we will add unit tests to all repos, if tests report issues, you need to address them also before the reviewer looks at your code.
- Once the pull-request is approved by the reviewer, it is the job for the reviewer to merge the changes into the
mainbranch.
Note, please make sure that when committing, the commit message is understandable and relates to what is being added. Commit messages such as "update" is not good.