Contributing¶
Contributing (Internal)¶
Issues¶
Each issue represents a task and needs to be assigned to at least one team member. Additionally, issues should be properly labeled and added to the corresponding milestone.
GitHub Issues are not only used for task assignment but also serve as a platform for team communication.
Internal Organization¶
Each week a milestone is created, specifying all relevant tasks in the form of issues. These issues are listed on the project board. Each team member is responsible for updating their progress on this board and ensuring that their assigned tasks are completed by the deadline of the milestone.
Internal Pipeline¶
Our internal pipeline for contribution goes as follows:
After a stand-up meeting, issues are collected and raised on the project board.
A new branch is created for each issue for work to be done.
A Pull request is raised once work is completed. An approval from another team member (a reviewer) is required before merging to main.
Contributing (External)¶
Welcome to our project! We appreciate your interest in contributing.
You can contribute in many ways:
Types of Contribution¶
Report Bugs¶
Please submit bug reports on our GitHub repository at https://github.com/UBC-MDS/MathDistOps/issues.
When reporting a bug, kindly provide:
The name and version of your operating system.
Any pertinent details about your local setup that could aid in troubleshooting.
Clear and detailed steps to replicate the bug.
Resolving Bugs¶
Review the GitHub issues labeled as “bug” and “help wanted.” These are available for anyone interested in addressing and implementing solutions.
Implementing Features¶
Browse the GitHub issues related to features. Any item labeled as “enhancement” and “help wanted” is available for implementation by anyone interested.
Documentation¶
Our project could benefit from additional documentation, whether integrated into the official documentation, included in docstrings, or shared through various platforms such as blog posts and articles.
Feedback¶
The best way to send feedback is to file an issue at https://github.com/UBC-MDS/MathDistOps/issues.
Get started!¶
Fork the ‘mathdistops’ repository.
Clone the forked repository to your local machine.
git clone git@github.com:UBC-MDS/mathdistops.git
Install your local copy with Poetry, this is how you set up your fork for local development:
cd mathdistops/ poetry install
Create a new branch for your changes:
git checkout -b feature/new-feature'.
Make your changes, check that your changes pass the tests by running pytest.
poetry run pytest
Commit and push your changes to your forked repository
git add . git commit -m "Your detailed description of your changes." git push origin name-of-your-bugfix-or-feature
Open a pull request from your forked repository to the original repository.
Pull Request Guidelines¶
Before you submit a pull request, check that it meets these guidelines:
Ensure that the pull request incorporates testing.
If the pull request introduces new features, it is essential to update the documentation. Place the new functionality within a function accompanied by a docstring, and include details about the feature in the README.md list.
Confirm that the pull request functions correctly for both Python 3.7 and 3.8. Verify the status of the tests for all supported Python versions by checking https://github.com/UBC-MDS/MathDistOps/issues.
Code of Conduct¶
Please note that the MathDistOps project is released with this Contributor Code of Conduct. By contributing to this project, you agree to abide by its terms.
Attribution¶
This CONTRIBUTING.md file is adapted from and contains content from the equivalent file generated by cookiecutter.