Contributing to OCAI¶
Access to OCAI¶
OCAI's source code and documentation are distributed through space-codev.org under an ESA Software Community License Weak Copyleft. Accessing the source code and documentation requires, first, access to Space CODEV; and, second, requesting access to the OCAI project.
Contributor Agreement¶
Contributors to OCAI are required to sign the AI4GS Contributor Agreement and the reception of the signed agreement confirmed via email by a Maintainer of the community. Merge requests submitted without a valid contributor agreement cannot be integrated into any of the OCAI repositories.
General Contribution Guidelines¶
- Latest Updates: Always pull the latest changes before committing to stay current with the project.
- Commit Frequency: Make frequent, smaller commits rather than infrequent, larger commits for easier review.
- Feature Branches: Maintain short-lived feature branches to facilitate easier integration.
- Commit Messages: Write concise commit messages that summarize the changes made.
- Code Standards: Mimic the coding standard and style used in existing sources.
- Documentation: Update relevant documentation when making changes to the codebase or adding new features.
- Testing: Write tests for new features and ensure existing tests pass before submitting contributions.
- Issue Tracking: Create or update issues related to your contributions to enhance project visibility.
- Feedback: Be open to feedback from maintainers and other contributors, and engage constructively in discussions.
- Rebase: Rebase your branches on top of the default branch to keep a clean project history.
- Diversity and Inclusion: When writing code, comments or documentation, think of writing with diversity and inclusion in mind.
Problems and Requests¶
Any contributor can report a bug and propose a new feature:
-
Community members will verify whether an issue is a genuine problem or not. Once confirmed, the reporter or the maintainers of OCAI may propose and implement a solution. After the maintainer reviews the changes, they will be merged into the relevant branch.
-
New features will be analyzed and approved by the Project Council. Contributors may develop the feature after having received the approval by the maintainers of OCAI. If a contributor is not able to develop the feature, the maintainers of OCAI will prioritize the feature and add it to the backlog of features.